X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Ffbrowser.php;h=075846e50631e5cf577bca02bb70d38edb707f49;hb=836058c47745f502890a209dfd6efcb3596ace84;hp=44e21cbfa3f77b2e02a34c3ad065f8c5968ca0c5;hpb=e2e6b56c448da3a67fa25df118bbb7cbc3239664;p=friendica.git diff --git a/mod/fbrowser.php b/mod/fbrowser.php index 44e21cbfa3..075846e506 100644 --- a/mod/fbrowser.php +++ b/mod/fbrowser.php @@ -4,7 +4,9 @@ * @subpackage FileBrowser * @author Fabio Comuni */ - + +require_once('include/Photo.php'); + /** * @param App $a */ @@ -20,6 +22,11 @@ function fbrowser_content($a){ switch($a->argv[1]){ case "image": + $path = array( array($a->get_baseurl()."/fbrowser/image/", t("Photos"))); + $albums = false; + $sql_extra = ""; + $sql_extra2 = " ORDER BY created DESC LIMIT 0, 10"; + if ($a->argc==2){ $albums = q("SELECT distinct(`album`) AS `album` FROM `photo` WHERE `uid` = %d ", intval(local_user()) @@ -28,42 +35,53 @@ function fbrowser_content($a){ function folder1($el){return array(bin2hex($el['album']),$el['album']);} $albums = array_map( "folder1" , $albums); - $tpl = get_markup_template("filebrowser.tpl"); - echo replace_macros($tpl, array( - '$type' => 'image', - '$baseurl' => $a->get_baseurl(), - '$path' => array( array($a->get_baseurl()."/fbrowser/image/", t("Photos"))), - '$folders' => $albums, - '$files' =>false, - )); - } + $album = ""; if ($a->argc==3){ $album = hex2bin($a->argv[2]); - $r = q("SELECT `resource-id`, `id`, `filename`, min(`scale`) AS `scale`, `desc` FROM `photo` WHERE `uid` = %d AND `album` = '%s' - AND `scale` <= 4 $sql_extra GROUP BY `resource-id`", - intval(local_user()), - dbesc($album) - ); - - - function files1($rr){ global $a; return array( $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['scale'] . '.jpg', template_escape($rr['filename']), $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['scale'] . '.jpg'); } - $files = array_map("files1", $r); - - $tpl = get_markup_template("filebrowser.tpl"); - echo replace_macros($tpl, array( - '$type' => 'image', - '$baseurl' => $a->get_baseurl(), - '$path' => array( array($a->get_baseurl()."/fbrowser/image/", t("Photos")), - array($a->get_baseurl()."/fbrowser/image/".$a->argv[2]."/", $album)), - '$folders' => false, - '$files' =>$files, - )); + $sql_extra = sprintf("AND `album` = '%s' ",dbesc($album)); + $sql_extra2 = ""; + $path[]=array($a->get_baseurl()."/fbrowser/image/".$a->argv[2]."/", $album); + } + $r = q("SELECT `resource-id`, `id`, `filename`, type, min(`scale`) AS `hiq`,max(`scale`) AS `loq`, `desc` + FROM `photo` WHERE `uid` = %d AND (height <= 320 AND width <= 320) $sql_extra + GROUP BY `resource-id` $sql_extra2", + intval(local_user()) + ); + + function files1($rr){ + global $a; + $types = Photo::supportedTypes(); + $ext = $types[$rr['type']]; + + if($a->theme['template_engine'] === 'internal') { + $filename_e = template_escape($rr['filename']); + } + else { + $filename_e = $rr['filename']; + } + + return array( + $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['hiq'] . '.' .$ext, + $filename_e, + $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['loq'] . '.'. $ext + ); + } + $files = array_map("files1", $r); + + $tpl = get_markup_template("filebrowser.tpl"); + echo replace_macros($tpl, array( + '$type' => 'image', + '$baseurl' => $a->get_baseurl(), + '$path' => $path, + '$folders' => $albums, + '$files' =>$files, + '$cancel' => t('Cancel'), + )); - } break; case "file": if ($a->argc==2){ @@ -74,7 +92,15 @@ function fbrowser_content($a){ function files2($rr){ global $a; list($m1,$m2) = explode("/",$rr['filetype']); $filetype = ( (file_exists("images/icons/$m1.png"))?$m1:"zip"); - return array( $a->get_baseurl() . '/attach/' . $rr['id'], template_escape($rr['filename']), $a->get_baseurl() . '/images/icons/16/' . $filetype . '.png'); + + if($a->theme['template_engine'] === 'internal') { + $filename_e = template_escape($rr['filename']); + } + else { + $filename_e = $rr['filename']; + } + + return array( $a->get_baseurl() . '/attach/' . $rr['id'], $filename_e, $a->get_baseurl() . '/images/icons/16/' . $filetype . '.png'); } $files = array_map("files2", $files); //echo "
"; var_dump($files); killme();
@@ -87,6 +113,7 @@ function fbrowser_content($a){
 					'$path' => array( array($a->get_baseurl()."/fbrowser/image/", t("Files")) ),
 					'$folders' => false,
 					'$files' =>$files,
+					'$cancel' => t('Cancel'),
 				));
 				
 			}