filebrowser: more style, load min and max scale photos

This commit is contained in:
Fabio Comuni 2012-04-18 14:56:03 +02:00
parent 56efb42223
commit 0630120455
2 changed files with 59 additions and 48 deletions

View file

@ -20,6 +20,8 @@ function fbrowser_content($a){
switch($a->argv[1]){ switch($a->argv[1]){
case "image": case "image":
$path = array( array($a->get_baseurl()."/fbrowser/image/", t("Photos")));
$albums = false;
if ($a->argc==2){ if ($a->argc==2){
$albums = q("SELECT distinct(`album`) AS `album` FROM `photo` WHERE `uid` = %d ", $albums = q("SELECT distinct(`album`) AS `album` FROM `photo` WHERE `uid` = %d ",
intval(local_user()) intval(local_user())
@ -28,42 +30,34 @@ function fbrowser_content($a){
function folder1($el){return array(bin2hex($el['album']),$el['album']);} function folder1($el){return array(bin2hex($el['album']),$el['album']);}
$albums = array_map( "folder1" , $albums); $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){ if ($a->argc==3){
$album = hex2bin($a->argv[2]); $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' $sql_extra = sprintf("AND `album` = '%s' ",dbesc($album));
AND `scale` <= 4 $sql_extra GROUP BY `resource-id`", $path[]=array($a->get_baseurl()."/fbrowser/image/".$a->argv[2]."/", $album);
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,
));
} }
$r = q("SELECT `resource-id`, `id`, `filename`, min(`scale`) AS `hiq`,max(`scale`) AS `loq`, `desc` FROM `photo` WHERE `uid` = %d $sql_extra
AND `scale` <= 4 $sql_extra GROUP BY `resource-id`",
intval(local_user())
);
function files1($rr){ global $a; return array( $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['hiq'] . '.jpg', template_escape($rr['filename']), $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['loq'] . '.jpg'); }
$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,
));
break; break;
case "file": case "file":
if ($a->argc==2){ if ($a->argc==2){

View file

@ -3,12 +3,17 @@
<head> <head>
<script type="text/javascript" src="$baseurl/library/tinymce/jscripts/tiny_mce/tiny_mce_popup.js"></script> <script type="text/javascript" src="$baseurl/library/tinymce/jscripts/tiny_mce/tiny_mce_popup.js"></script>
<style> <style>
.filebrowser.path { font-family: fixed; font-size: 10px;} .filebrowser.path { font-family: fixed; font-size: 10px; background-color: #f0f0ee; height:auto; overflow:auto;}
.filebrowser.path a { border-left: 1px solid #C0C0AA; background-color: #E0E0DD; display: block; float:left; padding: 0.3em 1em;}
.filebrowser ul{ list-style-type: none; padding:0px; } .filebrowser ul{ list-style-type: none; padding:0px; }
.filebrowser.files img { height:50px;} .filebrowser.folders a { display: block; padding: 0.3em }
.filebrowser.folders a:hover { background-color: #f0f0ee; }
.filebrowser.files.image img { height:50px;}
.filebrowser.files.image li { display: block; padding: 5px; float: left; } .filebrowser.files.image li { display: block; padding: 5px; float: left; }
.filebrowser.files.image span { display: none;} .filebrowser.files.image span { display: none;}
.filebrowser.files.file img { height:16px;} .filebrowser.files.file img { height:16px; vertical-align: bottom;}
.filebrowser.files a { display: block; padding: 0.3em}
.filebrowser.files a:hover { background-color: #f0f0ee; }
.filebrowser a { text-decoration: none; } .filebrowser a { text-decoration: none; }
</style> </style>
<script> <script>
@ -43,23 +48,35 @@
</script> </script>
</head> </head>
<body> <body>
<div class="filebrowser path">
&gt; {{ for $path as $p }}<a href="$p.0">$p.1</a> / {{ endfor }} <div class="tabs">
</div> <ul >
<div class="filebrowser folders"> <li class="current"><span>FileBrowser</span></li>
<ul>
{{ for $folders as $f }}<li><a href="$f.0/">$f.1</a></li>{{ endfor }}
</ul> </ul>
</div> </div>
<form> <div class="panel_wrapper">
<div class="filebrowser files $type">
<ul> <div id="general_panel" class="panel current">
{{ for $files as $f }} <div class="filebrowser path">
<li><a href="#" onclick="FileBrowserDialogue.mySubmit('$f.0'); return false;"><img src="$f.2"><span>$f.1</span></a></li> {{ for $path as $p }}<a href="$p.0">$p.1</a>{{ endfor }}
{{ endfor }} </div>
</ul> <div class="filebrowser folders">
<ul>
{{ for $folders as $f }}<li><a href="$f.0/">$f.1</a></li>{{ endfor }}
</ul>
</div>
<div class="filebrowser files $type">
<ul>
{{ for $files as $f }}
<li><a href="#" onclick="FileBrowserDialogue.mySubmit('$f.0'); return false;"><img src="$f.2"><span>$f.1</span></a></li>
{{ endfor }}
</ul>
</div>
</div> </div>
</form> </div>
<div class="mceActionPanel">
<input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
</div>
</body> </body>
</html> </html>