2 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
3 <link rel=stylesheet href="css/squasher.css">
4 <title>Squasher</title>
5 <script type="text/javascript" language="JavaScript">
7 function toggle_id(hideshow){
8 if(document.getElementById(hideshow).style.visibility == 'visible') {
9 document.getElementById(hideshow).style.visibility = 'hidden';
11 document.getElementById(hideshow).style.visibility = 'visible';
14 function selectAllList() {
15 var aSelect = document.deletetool["h[]"];
16 var aSelectLen = aSelect.length;
17 for(i = 0; i < aSelectLen; i++) {
18 aSelect.options[i].selected = true;
21 function deleteFolder(foldername) {
22 if (!confirm('Are you sure you want to delete folder '+foldername+' ?'))
24 document.rmdir.submit();
26 function deleteFolderNotEmpty(foldername) {
27 alert(foldername+' in not empty. Please empty it first');
29 function createFolder() {
30 var folder = prompt("New folder name");
33 if (folder.indexOf('/')>=0 || folder=='.' || folder=='..') {
34 // detect the most common errors
35 alert('Invalid name');
38 document.mkdir.newname.value = folder;
39 document.mkdir.submit();
44 <div class="wrappercontainer">
46 <div class="banner"> <div class="control">{if $user_level > 99}<a href="?">home</a> | <a href="?tools=access">access</a> | <a href="?tools=users">users</a> | <a href="?tools=logs">logs</a> |{/if} <a href="index.php?tools=logout">logout({$user_name|escape})</a> </div></div>
48 <div class="menucontainer">
50 <div class="menuhead">current folder</div>
51 {foreach item=crumb key=cookie from=$base}<a href="?path={$cookie|escape:'url'}">{$crumb|escape}</a>{/foreach}
52 {if $user_level > 99 AND count($base)>1 }
53 <form name=rmdir method=post>
54 <input type=hidden name=tools value=rmdir>
55 <a href="javascript:deleteFolder{if count($squashed)>0 || count($subfolders)>0}NotEmpty{/if}('{$currentfolder|escape:'javascript'|escape}');" class=tool>delete this folder</a>
60 <div class="menuhead">subfolders</div>
61 {foreach item=folder key=folderpath from=$subfolders}<a href="?path={$folderpath|escape:'url'}">{$folder|escape}</a>{/foreach}
63 <form name=mkdir method=post>
64 <input type=hidden name=tools value=mkdir>
65 <input type=hidden name=newname>
66 <a href="javascript:createFolder();" class=tool>new subfolder</a>
73 {assign var=mass_delete_size value=count($squashed)}
74 {foreach item=item key=id from=$squashed}
75 {if $item.squashed}{*These items are in chunks / uploaded by the squasher tool*}
77 {if $item.hidden eq false OR $user_level > 99 }
78 <div class={if $item.finished==true}"status3"{elseif $item.finished!=true && $item.embedable==true}"status2"{elseif $item.finished!=true && $item.embedable!=true}"status1"{else}"item"{/if}>
80 <div class="name">{$item.name|escape} {if $user_level > 99}{if $item.hidden}<font color=red>|<a href='?tools=unhide&h={$id|escape:'url'}'>publish</a>|</font>{else}<font color=green>|<a href='?tools=hide&h={$id|escape:'url'}'>hide</a>|</font>{/if}{if $user_level > 100}<font color=red>|<a href='?tools=delete&h={$id|escape:'url'}' onClick="javascript:return confirm('Are you sure you want to permanently delete {$item.name|escape:'quotes'}?')">delete</a>|</font>{/if}{/if}</div>
82 <div class="status">status: {$item.status|escape}</div>
84 <div class="clear"></div>
86 <div class="added">added: {$item.date|escape}</div>
88 <div class="size">size: {if $item.size>(1024*1024)}{math equation="((x / 1024) / 1024) * (y / z)" x=$item.size y=$item.chunks_finished z=$item.chunks format="%.2f"} / {math equation="(x / 1024) / 1024" x=$item.size format="%.2f"}mb{elseif $item.size>(1024)}{math equation="(x / 1024) * (y / z)" x=$item.size y=$item.chunks_finished z=$item.chunks format="%.2f"} / {math equation="(x / 1024)" x=$item.size format="%.2f"}kb{else}{math equation="x * (y / z)" x=$item.size y=$item.chunks_finished z=$item.chunks format="%.0f"} / {$item.size|escape}b{/if}({math equation="(y / x) * 100" x=$item.chunks y=$item.chunks_finished format="%.0f"}%)</div>
90 <div class="clear"></div>
92 <div class="updated">last updated: {$item.lastchange|escape}</div>
95 {if $item.finished==true}
96 <div class="download"><a href='?f={$id|escape:'url'}'>download</a></div>
98 {if $item.embedable eq true and $item.finished eq false}
99 {if $item.mime=='video/mpeg'}
100 <div class="stream"><a href='?f={$id|escape:'url'}'>download ({math equation="(y / x) * 100" x=$item.chunks y=$item.chunks_partial format="%.0f"}%)</a></div>
104 <div class="clear"></div>
107 <div class="clear"></div>
110 {else}{*These items are plain files / uploaded manually by the user via ftp*}
112 {if $item.hidden eq false OR $user_level > 99 }
113 <div class={if $item.finished==true}"status3"{elseif $item.finished!=true && $item.embedable==true}"status2"{elseif $item.finished!=true && $item.embedable!=true}"status1"{else}"item"{/if}>
115 <div class="name">{$item.name|escape} {if $user_level > 99}{if $item.hidden}<font color=red>|<a href='?tools=unhide&h={$id|escape:'url'}'>publish</a>|</font>{else}<font color=green>|<a href='?tools=hide&h={$id|escape:'url'}'>hide</a>|</font>{/if}{if $user_level > 199}<font color=red>|<a href='?tools=delete&h={$id|escape:'url'}' onClick="javascript:return confirm('Are you sure you want to permanently delete {$item.name|escape:'quotes'}?')">delete</a>|</font>{/if}{/if}</div>
117 <div class="status">status: {$item.status|escape}</div>
119 <div class="clear"></div>
121 <div class="added">added: {$item.date|escape}</div>
123 <div class="size">size: {if $item.size>(1024*1024)}{math equation="(x / 1024) / 1024" x=$item.size format="%.2f"}mb{elseif $item.size>(1024)}{math equation="(x / 1024)" x=$item.size format="%.2f"}kb{else}{$item.size|escape}b{/if}</div>
125 <div class="clear"></div>
127 <div class="updated">last updated: {$item.lastchange|escape}</div>
130 {if $item.finished==true}
131 <div class="download"><a href='?f={$id|escape:'url'}'>download</a></div>
133 {if $item.embedable eq true and $item.finished eq false}
134 {if $item.mime=='video/mpeg'}
135 <div class="stream"><a href='?f={$id|escape:'url'}'>download (partial)</a></div>
139 <div class="clear"></div>
142 <div class="clear"></div>
149 {if $user_level > 100 and $mass_delete_size > 1}
150 <div class="massdelete"><br>
151 <div class="deletebox" id="deletebox">
152 <form name="deletetool" action="?tools=delete&h=multiple" method="post" onSubmit='return confirm("Are you sure you want to delete the selected files? \nThis page may take a while to reload while the files are removed.");'>
153 <select multiple="" size="{$mass_delete_size|escape}" id="h" name="h[]" width="300px">
154 {foreach item=item key=id from=$squashed}
155 <option value="{$id|escape}" title="{$item.name|escape}">{$item.name|truncate:39|escape}</option>
158 <input type="button" value="Select All" OnClick="selectAllList();" ><input type="reset" value="Clear"><input type="submit" value="Delete Selected Items">
165 <div class="bottomimage"></div>
166 <div class="footer"> </div>
168 {if $debug}{debug}{/if}
169 {* vim: set syntax=smarty ts=4 sw=4 sts=4 sr noet: *}