From be6b5c8e774f9e389e4ff4a817caa3ebf5677182 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Thu, 21 Jul 2011 22:01:55 +0200 Subject: [PATCH 01/40] some work on the updated interface --- core/css/styles.css | 49 ++++---------------- core/img/breadcrumb-divider.png | Bin 0 -> 1012 bytes core/templates/layout.user.php | 7 ++- files/css/files.css | 46 ++++++++++++++++++- files/js/filelist.js | 8 +--- files/js/files.js | 68 ++++++++++++++++++++++++---- files/templates/index.php | 24 +++++----- files/templates/part.breadcrumb.php | 5 +- files/templates/part.list.php | 5 +- 9 files changed, 133 insertions(+), 79 deletions(-) create mode 100644 core/img/breadcrumb-divider.png diff --git a/core/css/styles.css b/core/css/styles.css index f9b536a2b04..2bc29882250 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -1,6 +1,6 @@ * { margin:0; padding:0; border:0; } body { background:#fefefe url('../img/body_background.jpg') repeat-y left top; font:normal 80%/1.6em "Lucida Grande", Arial, Verdana, sans-serif; color:#000; } -#header { position:fixed; top:0; z-index:100; width:100%; height:5.5em; padding:0.5em 1.5em; background:url('../img/header-a.png') repeat-x left top; } +#header { position:fixed; top:0; z-index:100; width:100%; height:2.5em; padding:0.5em 1.5em; background:url('../img/header-a.png') repeat-x left top; } #body-settings #header { background-image:url('../img/header-settings-a.png'); } #owncloud { float:left; margin:0 0 0 2em; } h1 { margin:1em 3em 1em 0; border-bottom:1px solid #666; text-transform:uppercase; font-weight:normal; font-style:italic; color:#666; } @@ -20,7 +20,7 @@ form input[type="button"], form input[type="text"] { font-size: 0.9em; } fieldset { padding:1em; background-color:#f7f7f7; border:1px solid #ddd; max-width:600px; margin:2em 2em 2em 3em; } legend { padding: 0.5em; font-size:1.2em; } -div.controls { width:91%; margin:1em 1em 1em 2em; padding:0.5em 0; background-color:#f7f7f7; border:1px solid #eee; } +div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1px solid #eee; position:fixed } /* LOG IN & INSTALLATION ------------------------------------------------------------ */ #body-login { width:100%; background-image:none; background-color:#ddd; } @@ -196,17 +196,17 @@ div.controls { width:91%; margin:1em 1em 1em 2em; padding:0.5em 0; background-co .prettybutton:hover, .prettybutton:focus { background-color:#ccc; outline:0; } /* META NAVIGATION (Settings, Log out) ---------------------------------------------------------------- */ -#metanav { float:right; position:relative; top:1.5em; right:2.5em; list-style:none; margin:0; padding:0; } +#metanav { float:right; position:relative; top:0.5em; right:2.5em; list-style:none; margin:0; padding:0; } #metanav li { display:inline; } #metanav li a { margin:.1em; padding:1em; } #metanav li a:hover, #metanav li a:focus { background:rgba(0,0,0,.5); -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; outline:0; box-shadow:#555 0 1px 0; -moz-box-shadow:#555 0 1px 0; -webkit-box-shadow:#555 0 1px 0; } #metanav li a img { vertical-align:middle; } /* SEARCH --------------------------------------------------------------------- */ -form.searchbox { display:inline; position:fixed; top:2em; right:10em; margin:0; padding:0; } +form.searchbox { display:inline; position:fixed; top:1em; right:10em; margin:0; padding:0; } /* NAVIGATION ------------------------------------------------------------- */ -#plugins { position:fixed; top:7em; float:left; width:15.7em; padding:0; } +#plugins { position:fixed; top:3.5em; float:left; width:15.7em; padding:0; } #plugins ul { list-style-type:none; border-top:1px solid #ccc; } #plugins a { display:block; padding:0.5em 0.5em 0.5em 3em; background-position:1.5em center; background-repeat:no-repeat; border-bottom:1px solid #ddd; border-top:1px solid #fff; text-decoration:none; font-size:1.2em; color:#666; } #plugins a.active, #plugins a:hover, #plugins a:focus, #plugins a.selected { background-color:#ccc; border-top:1px solid #ccc; border-bottom:1px solid #ccc; color:#000; outline:0; } @@ -215,47 +215,16 @@ form.searchbox { display:inline; position:fixed; top:2em; right:10em; margin:0; #plugins .subentry.active { background-color:#bbb; border-top:1px solid #aaa; border-bottom:1px solid #ccc; color:#000; outline:0; } /* CONTENT ------------------------------------------------------------------ */ -#content { margin:7em 0 0 16em; } -table { margin:1em 5em 2em 3em; } -table tr.mouseOver td { background-color:#eee; } -table th, table td { padding:0; border-bottom:1px solid #ddd; text-align:left; font-style:italic; } -table th { padding:0.5em; } -table td { border-bottom:1px solid #eee; font-style:normal; } -table td.filesize, table td.date { width:5em; padding:0.5em 1em; text-align:right; } -table td.date { width:11em; } -table td.selection, table th.selection, table td.fileaction { width:2em; text-align:center; } -table td.filename a { display:block; background-image:url('../img/file.png'); text-decoration:none; } -table td.filename a, table td.login, table td.logout, table td.download, table td.upload, table td.create, table td.delete { padding:0.5em 0.5em 0.5em 3em; background-position:1em center; background-repeat:no-repeat; } -table td.filename a:hover, table td.filename a:focus { outline:0; } -table td.filename a:active { outline:0; } -table em { font-weight:bold; } -table td.filename a.folder-up { background-image:url('../img/back.png'); font-style:italic; } -table td.filename a.folder { background-image:url('../img/folder.png'); } -table td.filename a.folder-home { background-image:url('../img/home.png'); } -table td.filename a.folder-music { background-image:url('../img/folder-music.png'); } -table td.filename a.folder-videos { background-image:url('../img/folder-video.png'); } -table td.filename a.folder-shared { background-image:url('../img/folder-shared.png'); } -table td.filename a.folder-images { background-image:url('../img/folder-image.png'); } -table td.filename a.file-txt { background-image:url('../img/file-txt.png'); } -table td.filename a.file-python { background-image:url('../img/file-python.png'); } -table td.filename a.file-php { background-image:url('../img/file.png'); } -table td.login { background-image:url('../img/login.png'); } -table td.logout { background-image:url('../img/logout.png'); } -table td.download { background-image:url('../img/download.png'); } -table td.upload { background-image:url('../img/upload.png'); } -table td.create { background-image:url('../img/folder-new.png'); } -table td.delete { background-image:url('../img/delete.png'); } -#fileList tr input[type=checkbox] { display:none; } -#fileList tr input[type=checkbox]:checked { display:inline; } -#fileList tr:hover input[type=checkbox] { display:inline; } +#content { margin:3.5em 0 0 15.7em; } + /* NAVIGATION BAR */ -span.nav { margin:1em 0 0 2em; padding:0.8em; line-height:16px; font-weight:bold; display:block} +span.nav { padding:1em 0 0 2em; } span.nav a { padding:0.5em 1.5em 0.5em 0.5em; background-position:right center; background-repeat:no-repeat; background-image:url('../img/arrow.png'); text-decoration:none; } span.nav a img { height:16px; vertical-align:text-top; } /* ACTIONS BAR */ -p.actions, div.actions { padding:0; } +p.actions, div.actions { padding:7px; float:right; margin-right:16em; } p.actions a, div.actions a { padding:0.5em 0.5em 0.5em 3em; background-position:1em center; background-repeat:no-repeat; background-image:url('../img/action.png'); border-right:1px solid #eee; text-decoration:none; color:#333; } p.actions a:hover, p.actions a:focus, div.actions a:hover, div.actions a:focus { background-color:#eee; color:#000; outline:0; } p.actions a:active, div.actions a:active { outline:0; } diff --git a/core/img/breadcrumb-divider.png b/core/img/breadcrumb-divider.png new file mode 100644 index 0000000000000000000000000000000000000000..52742e37238296beea96a2f932c5870924a3b3bb GIT binary patch literal 1012 zcmVPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipe~ z4H-H#9^ME500VSML_t(I%av4JZ`x)UJvQJ#4Z$+`zVLn#bj_P zq1kiwzJ7glo^zh}Js4&f-%qL32f18sPEiyG0F=vR3@WnKYE{?P)}G6<93}`NjB^xO zSCslU4<8l_qSzEg(O;|8MmUbcAVv~E`?(}let!HoUl7F$t!DEr{Er&>;{N^j)9Lib z)oRtPf9%Ib8rHRqCr|dax3^DKRh=)F%O(KOTYU-S=Xv-80RVXM_42at+ta7zN~JOi zfR|;N1b|Yh^eR)EAoRWZES)a=_~=m)z-3L-hR&#a+P0b3f3*%SPBgyL&eri$a_=lGj9V<0Z)uu7 z)}KTNL;yfHjjT6r-V9y6awTN5*>Xb^bxd^6y1^m}LPv|o=W|9P5#QA0Bu$d!FRaUT z+Rrhgy7k8F%na*rIG(XAtLV?WHyd;#$mvU$#$(Z_H#{+MN)W{F`Valu)0rHf zT)#fS2ZJQbvRQ}2(a_uKo8
+
+ +
    @@ -45,10 +48,6 @@
- -
- -
diff --git a/files/css/files.css b/files/css/files.css index f4da6fae98c..f119fe90a74 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -73,7 +73,9 @@ /* FILE TABLE */ table { - width: 90%; + position:relative; + top:37px; + width: 100%; } tbody tr:hover, tbody tr:active, tbody tr.selected { background-color:#eee; } @@ -118,4 +120,46 @@ span.extention{ div.crumb{ float:left; + background-repeat:no-repeat; + background-position:right 0px; + font-size:20px; + padding:8px; +} + +table tr.mouseOver td { background-color:#eee; } +table th, table td { padding:0; border-bottom:1px solid #ddd; text-align:left; font-style:italic; } +table th { padding:0.5em; } +table td { border-bottom:1px solid #eee; font-style:normal; } +table td.filesize, table td.date { width:5em; padding:0.5em 1em; text-align:right; } +table td.date { width:11em; } +table td.selection, table th.selection, table td.fileaction { width:2em; text-align:center; } +table td.filename a { display:block; background-image:url('../img/file.png'); text-decoration:none; } +table td.filename a, table td.login, table td.logout, table td.download, table td.upload, table td.create, table td.delete { padding:0.5em 0.5em 0.5em 3em; background-position:1em center; background-repeat:no-repeat; } +table td.filename a:hover, table td.filename a:focus { outline:0; } +table td.filename a:active { outline:0; } +table em { font-weight:bold; } +table td.filename a.folder-up { background-image:url('../img/back.png'); font-style:italic; } +table td.filename a.folder { background-image:url('../img/folder.png'); } +table td.filename a.folder-home { background-image:url('../img/home.png'); } +table td.filename a.folder-music { background-image:url('../img/folder-music.png'); } +table td.filename a.folder-videos { background-image:url('../img/folder-video.png'); } +table td.filename a.folder-shared { background-image:url('../img/folder-shared.png'); } +table td.filename a.folder-images { background-image:url('../img/folder-image.png'); } +table td.filename a.file-txt { background-image:url('../img/file-txt.png'); } +table td.filename a.file-python { background-image:url('../img/file-python.png'); } +table td.filename a.file-php { background-image:url('../img/file.png'); } +table td.login { background-image:url('../img/login.png'); } +table td.logout { background-image:url('../img/logout.png'); } +table td.download { background-image:url('../img/download.png'); } +table td.upload { background-image:url('../img/upload.png'); } +table td.create { background-image:url('../img/folder-new.png'); } +table td.delete { background-image:url('../img/delete.png'); } +#fileList tr input[type=checkbox] { display:none; float:left; margin:0.7em; margin-left:1em; } +#fileList tr input[type=checkbox]:checked { display:inline; } +#fileList tr:hover input[type=checkbox] { display:inline; } +#fileList tr:hover td.filename a{background-image:none !important} +#fileList tr.selected td.filename a{background-image:none !important} +#select_all{float:left; margin:0.2em; margin-left:0.6em; } +#selectedActions{ + float:right; } \ No newline at end of file diff --git a/files/js/filelist.js b/files/js/filelist.js index 2c662087ab2..9300e311076 100644 --- a/files/js/filelist.js +++ b/files/js/filelist.js @@ -5,11 +5,9 @@ FileList={ addFile:function(name,size,lastModified,loading){ var img=(loading)?'img/loading.gif':'img/file.png'; var html=''; - html+=''; - html+=''+name+''; + html+=''+name+''; html+=''+size+''; html+=''+lastModified+''; - html+=''; html+=''; FileList.insertElement(name,'file',$(html)); if(loading){ @@ -20,11 +18,9 @@ FileList={ }, addDir:function(name,size,lastModified){ var html=''; - html+=''; - html+=''+name+''; + html+=''+name+''; html+=''+size+''; html+=''+lastModified+''; - html+=''; html+=''; FileList.insertElement(name,'dir',$(html)); diff --git a/files/js/files.js b/files/js/files.js index d4191215972..4a3de095509 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -54,24 +54,27 @@ $(document).ready(function() { $('#select_all').click(function() { if($(this).attr('checked')){ // Check all - $('td.selection input:checkbox').attr('checked', true); - $('td.selection input:checkbox').parent().parent().addClass('selected'); + $('td.filename input:checkbox').attr('checked', true); + $('td.filename input:checkbox').parent().parent().addClass('selected'); }else{ // Uncheck all - $('td.selection input:checkbox').attr('checked', false); - $('td.selection input:checkbox').parent().parent().removeClass('selected'); + $('td.filename input:checkbox').attr('checked', false); + $('td.filename input:checkbox').parent().parent().removeClass('selected'); } + procesSelection(); }); - $('td.selection input:checkbox').live('click',function() { + $('td.filename input:checkbox').live('click',function() { + var selectedCount=$('td.filename input:checkbox:checked').length; $(this).parent().parent().toggleClass('selected'); if(!$(this).attr('checked')){ $('#select_all').attr('checked',false); }else{ - if($('td.selection input:checkbox:checked').length==$('td.selection input:checkbox').length){ + if(selectedCount==$('td.filename input:checkbox').length){ $('#select_all').attr('checked',true); } } + procesSelection(); }); $('#file_newfolder_form').submit(function(event) { @@ -109,7 +112,7 @@ $(document).ready(function() { $('.download').live('click',function(event) { var files=''; - $('td.selection input:checkbox:checked').parent().parent().each(function(i,element){ + $('td.filename input:checkbox:checked').parent().parent().each(function(i,element){ files+=';'+$(element).attr('data-file'); }); files=files.substr(1);//remove leading ; @@ -121,9 +124,9 @@ $(document).ready(function() { return false; }); - $('.delete').live('click',function(event) { + $('.delete').click(function(event) { var files=''; - $('td.selection input:checkbox:checked').parent().parent().each(function(i,element){ + $('td.filename input:checkbox:checked').parent().parent().each(function(i,element){ files+=';'+$(element).attr('data-file'); }); files=files.substr(1);//remove leading ; @@ -133,7 +136,7 @@ $(document).ready(function() { data: "dir="+$('#dir').val()+"&files="+encodeURIComponent(files), complete: function(data){ boolOperationFinished(data, function(){ - $('td.selection input:checkbox:checked').parent().parent().each(function(i,element){ + $('td.filename input:checkbox:checked').parent().parent().each(function(i,element){ FileList.remove($(element).attr('data-file')); }); }); @@ -282,4 +285,49 @@ var folderDropOptions={ });} }); } +} + +function procesSelection(){ + var selectedFiles=$('tr[data-type="file"]>td.filename>input:checkbox:checked').parent().parent(); + var selectedFolders=$('tr[data-type="dir"]>td.filename>input:checkbox:checked').parent().parent(); + if(selectedFiles.length==0 && selectedFolders.length==0){ + $('#headerName>span.name').text('Name'); + $('#headerSize').text('Size (MB)'); + }else{ + var totalSize=0; + selectedFiles.each(function(){ + totalSize+=parseInt($(this).attr('data-size')); + }); + selectedFolders.each(function(){ + totalSize+=parseInt($(this).attr('data-size')); + }); + if(totalSize>0){ + totalSize = Math.round(totalSize/(1024*102.4))/10; + if(totalSize < 0.1) { + totalSize='<0.1'; + }else if(totalSize > 1000) { + totalSize= '>1000'; + } + } + $('#headerSize').text(totalSize+' (MB)'); + var selection=''; + if(selectedFiles.length>0){ + if(selectedFiles.length==1){ + selection+='1 File'; + }else{ + selection+=selectedFiles.length+' Files'; + } + if(selectedFolders.length>0){ + selection+=' ,'; + } + } + if(selectedFolders.length>0){ + if(selectedFolders.length==1){ + selection+='1 Folder'; + }else{ + selection+=selectedFolders.length+' Folders'; + } + } + $('#headerName>span.name').text(selection+' Selected'); + } } \ No newline at end of file diff --git a/files/templates/index.php b/files/templates/index.php index efc92900637..7cdb81b2d66 100644 --- a/files/templates/index.php +++ b/files/templates/index.php @@ -1,4 +1,7 @@
+ + +
" id="max_upload"> @@ -14,26 +17,25 @@  
- t( 'Download' ); ?> - - t( 'Delete' ); ?>
- - - - - - - + + - diff --git a/files/templates/part.breadcrumb.php b/files/templates/part.breadcrumb.php index 64e0a474728..20c436926c6 100644 --- a/files/templates/part.breadcrumb.php +++ b/files/templates/part.breadcrumb.php @@ -1,8 +1,5 @@ - -
+
")'> ">
\ No newline at end of file diff --git a/files/templates/part.list.php b/files/templates/part.list.php index d717f288851..1468f485c23 100644 --- a/files/templates/part.list.php +++ b/files/templates/part.list.php @@ -1,9 +1,9 @@ -
- + '> - From bc40532109a334165a7c18f55d3c1abd88b866fe Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Thu, 21 Jul 2011 22:37:11 +0200 Subject: [PATCH 02/40] give the file sizes some more space --- files/css/files.css | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/files/css/files.css b/files/css/files.css index f119fe90a74..e0b06ea0cb5 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -83,10 +83,13 @@ tbody a { color:#000; } table td.filesize, table td.date { - width: 5em; + width: 7em; padding: 0.5em 1em; text-align: right; } +#headerSize{ + text-align:right; +} table td.date { @@ -130,7 +133,6 @@ table tr.mouseOver td { background-color:#eee; } table th, table td { padding:0; border-bottom:1px solid #ddd; text-align:left; font-style:italic; } table th { padding:0.5em; } table td { border-bottom:1px solid #eee; font-style:normal; } -table td.filesize, table td.date { width:5em; padding:0.5em 1em; text-align:right; } table td.date { width:11em; } table td.selection, table th.selection, table td.fileaction { width:2em; text-align:center; } table td.filename a { display:block; background-image:url('../img/file.png'); text-decoration:none; } @@ -162,4 +164,5 @@ table td.delete { background-image:url('../img/delete.png'); } #select_all{float:left; margin:0.2em; margin-left:0.6em; } #selectedActions{ float:right; + display:none; } \ No newline at end of file From aa335f57d627e42b14e350f2bdf43112f1f0f2ef Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Thu, 21 Jul 2011 23:26:08 +0200 Subject: [PATCH 03/40] only show actions for selected file if there are selected files --- files/js/files.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/files/js/files.js b/files/js/files.js index 4a3de095509..b0970233739 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -293,7 +293,9 @@ function procesSelection(){ if(selectedFiles.length==0 && selectedFolders.length==0){ $('#headerName>span.name').text('Name'); $('#headerSize').text('Size (MB)'); + $('#selectedActions').hide(); }else{ + $('#selectedActions').show(); var totalSize=0; selectedFiles.each(function(){ totalSize+=parseInt($(this).attr('data-size')); From d9a79c0f7eade4915b236c1581ed30714ecab3ff Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Fri, 22 Jul 2011 00:18:41 +0200 Subject: [PATCH 04/40] show fileactions inline on hover --- apps/media/css/jplayer.css | 2 +- files/css/files.css | 30 +++++++++++------------------- files/js/fileactions.js | 26 ++++++++++++++++---------- files/js/files.js | 10 ++++++---- files/templates/index.php | 5 +---- 5 files changed, 35 insertions(+), 38 deletions(-) diff --git a/apps/media/css/jplayer.css b/apps/media/css/jplayer.css index c47d20c7228..4fd17882391 100644 --- a/apps/media/css/jplayer.css +++ b/apps/media/css/jplayer.css @@ -45,7 +45,7 @@ div.jp-interface { z-index:100; width:25em; left:201px; - top:-10px; + top:-20px; } div.jp-type-playlist{ width:100%; diff --git a/files/css/files.css b/files/css/files.css index e0b06ea0cb5..a886958f137 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -2,22 +2,17 @@ #file_menu { - display: none; - position: absolute; right:0px; - background-color: #EEE; -} - -#file_menu ul -{ - list-style-type: none; + position:absolute; + top:0; } -#file_menu li a +#file_menu a { - display: block; - padding: 0.5em 5em 0.5em 2em; - text-decoration: none; + display:block; + float:left; + background-image:none; + text-decoration: none; } .file_upload_form, #file_newfolder_form { @@ -36,12 +31,12 @@ } .file_upload_filename { - background-image:url(../img/file.png); font-weight:bold; + background-image:url("../img/file.png"); font-weight:bold; } .file_upload_start {opacity:0;filter: alpha(opacity = 0);} #file_newfolder_name { - background-image:url(../img/folder.png); font-weight:bold; + background-image:url("../img/folder.png"); font-weight:bold; width: 14em; } @@ -102,11 +97,8 @@ table td.selection, table th.selection, table td.fileaction text-align: center; } -table td.filename a -{ - display: block; - background-image: url(../img/file.png); - text-decoration: none; +td.filename{ + position:relative; } .dropArrow{ diff --git a/files/js/fileactions.js b/files/js/fileactions.js index b683dc0cd3a..3ad417c91c4 100644 --- a/files/js/fileactions.js +++ b/files/js/fileactions.js @@ -49,33 +49,39 @@ FileActions={ return actions[name]; }, display:function(parent){ - $('#file_menu ul').empty(); + $('#file_menu').empty(); parent.append($('#file_menu')); var actions=FileActions.get(FileActions.getCurrentMimeType(),FileActions.getCurrentType()); for(name in actions){ - var html='
  • '+name+'
  • '; + var html=''+name+''; var element=$(html); element.data('action',name); element.click(function(event){ + event.stopPropagation(); event.preventDefault(); - $('#file_menu').slideToggle(250); var action=actions[$(this).data('action')]; - $('#file_menu ul').empty(); - action(FileActions.getCurrentFile()); + var currentFile=FileActions.getCurrentFile(); + FileActions.hide(); + action(currentFile); }); - $('#file_menu>ul').append(element); + $('#file_menu').append(element); } - $('#file_menu').slideToggle(250); + $('#file_menu').show(); return false; }, + hide:function(){ + $('#file_menu').hide(); + $('#file_menu').empty(); + $('body').append($('#file_menu')); + }, getCurrentFile:function(){ - return $('#file_menu').parents('tr:first').attr('data-file'); + return $('#file_menu').parent().parent().attr('data-file'); }, getCurrentMimeType:function(){ - return $('#file_menu').parents('tr:first').attr('data-mime'); + return $('#file_menu').parent().parent().attr('data-mime'); }, getCurrentType:function(){ - return $('#file_menu').parents('tr:first').attr('data-type'); + return $('#file_menu').parent().parent().attr('data-type'); } } diff --git a/files/js/files.js b/files/js/files.js index b0970233739..f1c00650d0a 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -31,11 +31,13 @@ $(document).ready(function() { }); // Sets the file-action buttons behaviour : - $('td.fileaction a').live('click',function(event) { - event.preventDefault(); - FileActions.display($(this).parent()); + $('tr').live('mouseenter',function(event) { + FileActions.display($(this).children('td.filename')); }); - + $('tr').live('mouseleave',function(event) { + FileActions.hide(); + }); + // Sets the file link behaviour : $('td.filename a').live('click',function(event) { event.preventDefault(); diff --git a/files/templates/index.php b/files/templates/index.php index 7cdb81b2d66..18b805529a9 100644 --- a/files/templates/index.php +++ b/files/templates/index.php @@ -43,7 +43,4 @@
    t( 'Name' ); ?>t( 'Size (MB)' ); ?> + + t( 'Name' ); ?> + + Download + + Delete + + t( 'Size (MB)' ); ?> t( 'Modified' ); ?>
    + @@ -14,6 +14,5 @@
    -
    -
      -
    -
    + From 9be2dc8290eac4849c8663e2f8eefa3b8882c4fa Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Fri, 22 Jul 2011 00:43:35 +0200 Subject: [PATCH 05/40] show fixed filecontrols over the filelist that can scroll underneath it --- core/css/styles.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/css/styles.css b/core/css/styles.css index 2bc29882250..b48092a9c07 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -20,7 +20,7 @@ form input[type="button"], form input[type="text"] { font-size: 0.9em; } fieldset { padding:1em; background-color:#f7f7f7; border:1px solid #ddd; max-width:600px; margin:2em 2em 2em 3em; } legend { padding: 0.5em; font-size:1.2em; } -div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1px solid #eee; position:fixed } +div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1px solid #eee; position:fixed; z-index:100 } /* LOG IN & INSTALLATION ------------------------------------------------------------ */ #body-login { width:100%; background-image:none; background-color:#ddd; } From d6bf5cd251e4b3ce8a1bbbe09a029148881eeac9 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Fri, 22 Jul 2011 15:48:30 +0200 Subject: [PATCH 06/40] show error when trying to upload to large files --- files/css/files.css | 3 +- files/js/files.js | 75 +++++++++++++++++++++++---------------- files/templates/index.php | 6 ++++ 3 files changed, 53 insertions(+), 31 deletions(-) diff --git a/files/css/files.css b/files/css/files.css index a886958f137..d45d93441de 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -157,4 +157,5 @@ table td.delete { background-image:url('../img/delete.png'); } #selectedActions{ float:right; display:none; -} \ No newline at end of file +} +#uploadsize-message{display:none} \ No newline at end of file diff --git a/files/js/files.js b/files/js/files.js index f1c00650d0a..dc59dda57e0 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -153,40 +153,55 @@ $(document).ready(function() { var uploadId=form.attr('data-upload-id'); var files=this.files; var target=form.children('iframe'); - target.load(function(){ - var response=jQuery.parseJSON(target.contents().find('body').text()); - //set mimetype and if needed filesize - if(response){ - for(var i=0;i$('#max_upload').val()){ + $( "#uploadsize-message" ).dialog({ + modal: true, + buttons: { + Close: function() { + $( this ).dialog( "close" ); } - FileList.loadingDone(file.name); } + }); + }else{ + target.load(function(){ + var response=jQuery.parseJSON(target.contents().find('body').text()); + //set mimetype and if needed filesize + if(response){ + for(var i=0;i0){ + var size=simpleFileSize(files[i].size); + }else{ + var size='Pending'; + } + FileList.addFile(files[i].name,size,uploadTime,true); } - }); - form.submit(); - var date=new Date(); - var uploadTime=formatDate(date); - for(var i=0;i0){ - var size=simpleFileSize(files[i].size); - }else{ - var size='Pending'; - } - FileList.addFile(files[i].name,size,uploadTime,true); + + //clone the upload form and hide the new one to allow users to start a new upload while the old one is still uploading + var clone=form.clone(); + uploadId++; + clone.attr('data-upload-id',uploadId); + clone.attr('target','file_upload_target_'+uploadId); + clone.children('iframe').attr('name','file_upload_target_'+uploadId) + clone.insertBefore(form); + form.hide(); } - - //clone the upload form and hide the new one to allow users to start a new upload while the old one is still uploading - var clone=form.clone(); - uploadId++; - clone.attr('data-upload-id',uploadId); - clone.attr('target','file_upload_target_'+uploadId); - clone.children('iframe').attr('name','file_upload_target_'+uploadId) - clone.insertBefore(form); - form.hide(); }); //add multiply file upload attribute to all browsers except konqueror (which crashes when it's used) diff --git a/files/templates/index.php b/files/templates/index.php index 18b805529a9..b0d4f556f4a 100644 --- a/files/templates/index.php +++ b/files/templates/index.php @@ -43,4 +43,10 @@ +
    +

    + t( 'The files you are trying to upload exceed the maximum size for file uploads on this server.' ); ?> +

    +
    + From ceb711dff4ceb02efd1c96b867df050f15ba4a93 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Fri, 22 Jul 2011 16:52:35 +0200 Subject: [PATCH 07/40] some work on the breadcrumb navigation for files --- core/css/styles.css | 4 ++-- core/img/breadcrumb-divider-start.png | Bin 0 -> 495 bytes files/css/files.css | 16 ++++++++++++++-- files/js/files.js | 22 ++++++++++++++++++++++ 4 files changed, 38 insertions(+), 4 deletions(-) create mode 100644 core/img/breadcrumb-divider-start.png diff --git a/core/css/styles.css b/core/css/styles.css index b48092a9c07..7a26c2f6703 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -206,7 +206,7 @@ div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1 form.searchbox { display:inline; position:fixed; top:1em; right:10em; margin:0; padding:0; } /* NAVIGATION ------------------------------------------------------------- */ -#plugins { position:fixed; top:3.5em; float:left; width:15.7em; padding:0; } +#plugins { position:fixed; top:3.5em; float:left; width:15.7em; padding:0; z-index:100; } #plugins ul { list-style-type:none; border-top:1px solid #ccc; } #plugins a { display:block; padding:0.5em 0.5em 0.5em 3em; background-position:1.5em center; background-repeat:no-repeat; border-bottom:1px solid #ddd; border-top:1px solid #fff; text-decoration:none; font-size:1.2em; color:#666; } #plugins a.active, #plugins a:hover, #plugins a:focus, #plugins a.selected { background-color:#ccc; border-top:1px solid #ccc; border-bottom:1px solid #ccc; color:#000; outline:0; } @@ -219,7 +219,7 @@ form.searchbox { display:inline; position:fixed; top:1em; right:10em; margin:0; /* NAVIGATION BAR */ -span.nav { padding:1em 0 0 2em; } +span.nav { display:block; float:left; /*margin-right:55em;*/ } span.nav a { padding:0.5em 1.5em 0.5em 0.5em; background-position:right center; background-repeat:no-repeat; background-image:url('../img/arrow.png'); text-decoration:none; } span.nav a img { height:16px; vertical-align:text-top; } diff --git a/core/img/breadcrumb-divider-start.png b/core/img/breadcrumb-divider-start.png new file mode 100644 index 0000000000000000000000000000000000000000..24d1eb40857a576564a5145f5272290b7fd3eb73 GIT binary patch literal 495 zcmV3$r%`!Kc6#m zW-&9E*#~zgQZsjdSeE4@0wn`}NqRAC&%^-t&Fpy;&jFjQR%*>2(z2?(3aS=UxZ{%kKUvigEV`X0{W; zK*im+yWQ@s2u9M~Ua!{-;bFjrnH3=n+y literal 0 HcmV?d00001 diff --git a/files/css/files.css b/files/css/files.css index d45d93441de..590c7bac364 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -115,10 +115,13 @@ span.extention{ div.crumb{ float:left; + display:block; background-repeat:no-repeat; background-position:right 0px; font-size:20px; - padding:8px; + padding-top:8px; + padding-left:8px; + height:28px; /*36-8*/ } table tr.mouseOver td { background-color:#eee; } @@ -158,4 +161,13 @@ table td.delete { background-image:url('../img/delete.png'); } float:right; display:none; } -#uploadsize-message{display:none} \ No newline at end of file +#uploadsize-message{display:none} + +/* add breadcrumb divider to the File item in navigation panel */ +#plugins li:first-child{ + background-position: 15.7em 0px; + background-repeat:no-repeat; + background-image: url("/owncloud/core/img/breadcrumb-divider-start.png"); + width:15.7em; + padding-right:11px; +} diff --git a/files/js/files.js b/files/js/files.js index dc59dda57e0..49e2f412d49 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -208,6 +208,28 @@ $(document).ready(function() { if(navigator.userAgent.search(/konqueror/i)==-1){ $('.file_upload_start').attr('multiple','multiple') } + + //if the breadcrumb is to long, start by replacing foldernames with '...' except for the current folder + var crumb=$('div.crumb').first(); + while($('div.controls').height()>40 && crumb.next('div.crumb').length>0){ + crumb.children('a').text('...'); + crumb=crumb.next('div.crumb'); + } + //if that isn't enough, start removing items from the breacrumb except for the current folder and it's parent + var crumb=$('div.crumb').first(); + var next=crumb.next('div.crumb'); + while($('div.controls').height()>40 && next.next('div.crumb').length>0){ + crumb.remove(); + crumb=next; + next=crumb.next('div.crumb'); + } + //still not enough, start shorting down the current folder name + var crumb=$('div.crumb>a').last(); + while($('div.controls').height()>40 && crumb.text().length>6){ + var text=crumb.text() + text=text.substr(0,text.length-6)+'...'; + crumb.text(text); + } }); var adjustNewFolderSize = function() { From b0f166fc836129464a2bdfa03357e844568c1104 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 26 Jul 2011 16:43:12 +0200 Subject: [PATCH 08/40] some javascript changes --- core/js/js.js | 19 ++++++++++ files/js/files.js | 91 +++++++++++++++++++++++++---------------------- 2 files changed, 67 insertions(+), 43 deletions(-) diff --git a/core/js/js.js b/core/js/js.js index 9117f08349a..2dac6907d96 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -55,3 +55,22 @@ OC={ $('head').append(style); } } + +if (!Array.prototype.filter) { + Array.prototype.filter = function(fun /*, thisp*/) { + var len = this.length >>> 0; + if (typeof fun != "function") + throw new TypeError(); + + var res = []; + var thisp = arguments[1]; + for (var i = 0; i < len; i++) { + if (i in this) { + var val = this[i]; // in case fun mutates this + if (fun.call(thisp, val, i, this)) + res.push(val); + } + } + return res; + }; +} \ No newline at end of file diff --git a/files/js/files.js b/files/js/files.js index 2f1ba907ba5..7842c680300 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -4,31 +4,8 @@ $(document).ready(function() { //drag/drop of files $('#fileList tr td.filename').draggable(dragOptions); $('#fileList tr[data-type="dir"] td.filename').droppable(folderDropOptions); - $('div.crumb').droppable({ - drop: function( event, ui ) { - var file=ui.draggable.text().trim(); - var target=$(this).attr('data-dir'); - var dir=$('#dir').val(); - while(dir.substr(0,1)=='/'){//remove extra leading /'s - dir=dir.substr(1); - } - dir='/'+dir; - if(dir.substr(-1,1)!='/'){ - dir=dir+'/'; - } - if(target==dir){ - return; - } - $.ajax({ - url: 'ajax/move.php', - data: "dir="+dir+"&file="+file+'&target='+target, - complete: function(data){boolOperationFinished(data, function(){ - FileList.remove(file); - });} - }); - }, - tolerance: 'pointer' - }); + $('div.crumb').droppable(crumbDropOptions); + $('#plugins>ul>li:first-child').droppable(crumbDropOptions); // Sets the file-action buttons behaviour : $('tr').live('mouseenter',function(event) { @@ -41,10 +18,10 @@ $(document).ready(function() { // Sets the file link behaviour : $('td.filename a').live('click',function(event) { event.preventDefault(); - var filename=$(this).parent().parent().attr('data-file'); + var filename=$(this).parent().parent().data('file'); if(!FileList.isLoading(filename)){ - var mime=$(this).parent().parent().attr('data-mime'); - var type=$(this).parent().parent().attr('data-type'); + var mime=$(this).parent().parent().data('mime'); + var type=$(this).parent().parent().data('type'); var action=FileActions.getDefault(mime,type); if(action){ action(filename); @@ -131,7 +108,7 @@ $(document).ready(function() { complete: function(data){ boolOperationFinished(data, function(){ $('td.filename input:checkbox:checked').parent().parent().each(function(i,element){ - FileList.remove($(element).attr('data-file')); + FileList.remove($(element).data('file')); }); }); } @@ -165,7 +142,7 @@ $(document).ready(function() { if(response){ for(var i=0;itd.filename>input:checkbox:checked').parent().parent(); - var selectedFolders=$('tr[data-type="dir"]>td.filename>input:checkbox:checked').parent().parent(); + var selected=getSelectedFiles(); + var selectedFiles=selected.filter(function(el){return el.type=='file'}); + var selectedFolders=selected.filter(function(el){return el.type=='dir'}); if(selectedFiles.length==0 && selectedFolders.length==0){ $('#headerName>span.name').text('Name'); $('#headerSize').text('Size (MB)'); @@ -328,12 +331,12 @@ function procesSelection(){ }else{ $('#selectedActions').show(); var totalSize=0; - selectedFiles.each(function(){ - totalSize+=parseInt($(this).attr('data-size')); - }); - selectedFolders.each(function(){ - totalSize+=parseInt($(this).attr('data-size')); - }); + for(var i=0;i0){ totalSize = Math.round(totalSize/(1024*102.4))/10; if(totalSize < 0.1) { @@ -370,22 +373,24 @@ function procesSelection(){ * @param string property (option) the property of the file requested * @return array * - * possible values for property: name, mime + * possible values for property: name, mime, size and type * if property is set, an array with that property for each file is returnd * if it's ommited an array of objects with all properties is returned */ function getSelectedFiles(property){ - var elements=$('td.selection input:checkbox:checked').parent().parent(); + var elements=$('td.filename input:checkbox:checked').parent().parent(); var files=[]; elements.each(function(i,element){ var file={ - name:$(element).attr('data-file'), - mime:$(element).attr('data-mime') + name:$(element).data('file'), + mime:$(element).data('mime'), + type:$(element).data('type'), + size:$(element).data('size'), }; if(property){ files.push(file[property]); }else{ - files.push(); + files.push(file); } }); return files; From 48fe201dd57e0958ed85a1a174adf3526f622605 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 26 Jul 2011 16:43:41 +0200 Subject: [PATCH 09/40] fit player controls in smaller header --- apps/media/css/player.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/media/css/player.css b/apps/media/css/player.css index bf404f515fd..a8c978514d1 100644 --- a/apps/media/css/player.css +++ b/apps/media/css/player.css @@ -1,4 +1,4 @@ -#jp-interface{position:fixed;z-index:100;width:25em;left:201px;top:-10px;height:80px;border-bottom:none;} +#jp-interface{position:fixed;z-index:100;width:25em;left:201px;top:-20px;height:80px;border-bottom:none;} #jp-interface.player{display:hidden;} #jp-interface ul.jp-controls{list-style-type:none;padding:0;} #jp-interface ul.jp-controls li{display:inline;} @@ -25,5 +25,5 @@ a.jp-unmute{background:url("../img/jplayer.blue.monday.png") 0 -170px no-repeat; a.jp-unmute:hover{background:url("../img/jplayer.blue.monday.png") -19px -186px no-repeat;} div.jp-volume-bar{position:absolute;overflow:hidden;background:url("../img/jplayer.blue.monday.png") 0 -250px repeat-x;width:46px;height:5px;cursor:pointer;top:37px;left:324px;} div.jp-volume-bar-value{background:url("../img/jplayer.blue.monday.png") 0 -256px repeat-x;width:0;height:5px;} -div.jp-current-time,div.jp-duration{position:absolute;font-size:.64em;font-style:oblique;top:49px;left:164px;width:122px;} +div.jp-current-time,div.jp-duration{position:absolute;font-size:.64em;font-style:oblique;top:45px;left:164px;width:122px;} div.jp-duration{text-align:right;} From be45ad904e46a3d11dccb5cda93e827d7e023910 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 26 Jul 2011 16:58:46 +0200 Subject: [PATCH 10/40] remove debug alert --- files/js/filelist.js | 1 - 1 file changed, 1 deletion(-) diff --git a/files/js/filelist.js b/files/js/filelist.js index 46ddc230cf0..973fda23e1e 100644 --- a/files/js/filelist.js +++ b/files/js/filelist.js @@ -54,7 +54,6 @@ FileList={ } } } - alert(pos); if(fileElements.length){ if(pos==-1){ $(fileElements[0]).before(element); From 00da23faf6b17cc39c310fab163d122f646098a5 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 26 Jul 2011 17:00:29 +0200 Subject: [PATCH 11/40] no longer show deleted files as selected --- files/js/files.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/files/js/files.js b/files/js/files.js index 7842c680300..e1ac4e172fc 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -107,9 +107,11 @@ $(document).ready(function() { data: "dir="+$('#dir').val()+"&files="+encodeURIComponent(files), complete: function(data){ boolOperationFinished(data, function(){ - $('td.filename input:checkbox:checked').parent().parent().each(function(i,element){ - FileList.remove($(element).data('file')); - }); + var files=getSelectedFiles('name'); + for(var i=0;i Date: Wed, 27 Jul 2011 16:57:49 +0200 Subject: [PATCH 12/40] fix broken merge --- core/js/js.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/js/js.js b/core/js/js.js index 3a820544b78..2f74bda2588 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -73,6 +73,8 @@ if (!Array.prototype.filter) { } } return res; + } +} if (!Array.prototype.indexOf){ Array.prototype.indexOf = function(elt /*, from*/) { From 7d5bc7974d9f7e7e3e1380b56fc77fd0eb3b87e1 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Wed, 27 Jul 2011 23:23:46 +0200 Subject: [PATCH 13/40] do not show default file action in the file action list on hover --- files/js/fileactions.js | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/files/js/fileactions.js b/files/js/fileactions.js index 3ad417c91c4..a6891a5f82d 100644 --- a/files/js/fileactions.js +++ b/files/js/fileactions.js @@ -52,19 +52,22 @@ FileActions={ $('#file_menu').empty(); parent.append($('#file_menu')); var actions=FileActions.get(FileActions.getCurrentMimeType(),FileActions.getCurrentType()); + var defaultAction=FileActions.getDefault(FileActions.getCurrentMimeType(),FileActions.getCurrentType()); for(name in actions){ - var html=''+name+''; - var element=$(html); - element.data('action',name); - element.click(function(event){ - event.stopPropagation(); - event.preventDefault(); - var action=actions[$(this).data('action')]; - var currentFile=FileActions.getCurrentFile(); - FileActions.hide(); - action(currentFile); - }); - $('#file_menu').append(element); + if(actions[name]!=defaultAction){ + var html=''+name+''; + var element=$(html); + element.data('action',name); + element.click(function(event){ + event.stopPropagation(); + event.preventDefault(); + var action=actions[$(this).data('action')]; + var currentFile=FileActions.getCurrentFile(); + FileActions.hide(); + action(currentFile); + }); + $('#file_menu').append(element); + } } $('#file_menu').show(); return false; From 90ecd2c293f96a2e5041767afaf4266af30c4601 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Wed, 27 Jul 2011 23:31:38 +0200 Subject: [PATCH 14/40] deleting stuff is scary, lets move the button as far to the right as possible it doesn't fit good currently in the column but will be fixed with using icons --- files/css/files.css | 2 +- files/js/fileactions.js | 17 ++++++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/files/css/files.css b/files/css/files.css index 590c7bac364..37cb64bff0b 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -88,7 +88,7 @@ table td.filesize, table td.date table td.date { - width: 11em; + width: 12em; } table td.selection, table th.selection, table td.fileaction diff --git a/files/js/fileactions.js b/files/js/fileactions.js index a6891a5f82d..4920e803b71 100644 --- a/files/js/fileactions.js +++ b/files/js/fileactions.js @@ -54,7 +54,7 @@ FileActions={ var actions=FileActions.get(FileActions.getCurrentMimeType(),FileActions.getCurrentType()); var defaultAction=FileActions.getDefault(FileActions.getCurrentMimeType(),FileActions.getCurrentType()); for(name in actions){ - if(actions[name]!=defaultAction){ + if(actions[name]!=defaultAction && name!='Delete'){ var html=''+name+''; var element=$(html); element.data('action',name); @@ -69,12 +69,27 @@ FileActions={ $('#file_menu').append(element); } } + if(actions['Delete']){ + var html='Delete'; + var element=$(html); + element.data('action','Delete'); + element.click(function(event){ + event.stopPropagation(); + event.preventDefault(); + var action=actions[$(this).data('action')]; + var currentFile=FileActions.getCurrentFile(); + FileActions.hide(); + action(currentFile); + }); + parent.parent().children().last().append(element); + } $('#file_menu').show(); return false; }, hide:function(){ $('#file_menu').hide(); $('#file_menu').empty(); + $('#action_delete').remove(); $('body').append($('#file_menu')); }, getCurrentFile:function(){ From 25c48e6aed35084d3bd49e5b577a4ace9f640bc8 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Thu, 28 Jul 2011 00:21:11 +0200 Subject: [PATCH 15/40] lots of small style fixes for the file list --- core/css/styles.css | 4 ++- files/css/files.css | 65 ++++++++------------------------------- files/js/files.js | 32 ++++++++++--------- files/templates/index.php | 6 ++-- 4 files changed, 37 insertions(+), 70 deletions(-) diff --git a/core/css/styles.css b/core/css/styles.css index 7a26c2f6703..f5f54a1c9f6 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -5,7 +5,9 @@ body { background:#fefefe url('../img/body_background.jpg') repeat-y left top; f #owncloud { float:left; margin:0 0 0 2em; } h1 { margin:1em 3em 1em 0; border-bottom:1px solid #666; text-transform:uppercase; font-weight:normal; font-style:italic; color:#666; } p.center { text-align:center; } -a { color:#000; text-decoration:none; } +a { color:#000; text-decoration:none; outline:0; } +table { white-space:nowrap; } +input { background:#fff; cursor:pointer; } form#user_settings { max-width:600px; } form#user_settings p label { display:block; float:left; width:35%; padding:0.4em 0.5em 0 0; text-align:right; } diff --git a/files/css/files.css b/files/css/files.css index 590c7bac364..c00b595fd2f 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -17,7 +17,6 @@ .file_upload_form, #file_newfolder_form { display: inline; - margin-left:3em; } #fileSelector, #file_upload_submit, #file_newfolder_submit { @@ -37,14 +36,14 @@ #file_newfolder_name { background-image:url("../img/folder.png"); font-weight:bold; - width: 14em; + width: 11em; } .file_upload_start, .file_upload_filename{ position:absolute; top:0px; left:0px; - width:30ex; + width:11em; font-size: 0.9em; } @@ -54,7 +53,7 @@ left:-2em; display: -moz-inline-box; /* fallback for older firefox versions*/ display: inline-block; - width:30ex; + width:12em; } #file_newfolder_submit, #file_upload_submit { @@ -76,39 +75,6 @@ table { tbody tr:hover, tbody tr:active, tbody tr.selected { background-color:#eee; } tbody a { color:#000; } -table td.filesize, table td.date -{ - width: 7em; - padding: 0.5em 1em; - text-align: right; -} -#headerSize{ - text-align:right; -} - -table td.date -{ - width: 11em; -} - -table td.selection, table th.selection, table td.fileaction -{ - width: 2em; - text-align: center; -} - -td.filename{ - position:relative; -} - -.dropArrow{ - height:16px; - width:16px; - display: -moz-inline-box; /* fallback for older firefox versions*/ - display: inline-block; - background-image:url('../img/drop-arrow.png'); -} - span.extention{ color:#999; } @@ -118,23 +84,23 @@ div.crumb{ display:block; background-repeat:no-repeat; background-position:right 0px; - font-size:20px; + font-weight:bold; padding-top:8px; padding-left:8px; height:28px; /*36-8*/ } table tr.mouseOver td { background-color:#eee; } -table th, table td { padding:0; border-bottom:1px solid #ddd; text-align:left; font-style:italic; } -table th { padding:0.5em; } +table th { padding:.5em; } +table th .name { float:left; margin-left:.5em; } +table th, table td { border-bottom:1px solid #ddd; text-align:left; font-weight:normal; } table td { border-bottom:1px solid #eee; font-style:normal; } -table td.date { width:11em; } +table th#headerSize, table td.filesize, table th#headerDate, table td.date { width:4em; padding:0 1em; text-align:right; cursor:help; } table td.selection, table th.selection, table td.fileaction { width:2em; text-align:center; } table td.filename a { display:block; background-image:url('../img/file.png'); text-decoration:none; } -table td.filename a, table td.login, table td.logout, table td.download, table td.upload, table td.create, table td.delete { padding:0.5em 0.5em 0.5em 3em; background-position:1em center; background-repeat:no-repeat; } +table td.filename a, table td.login, table td.logout, table td.download, table td.upload, table td.create, table td.delete { padding:.5em .5em .5em 3em; background-position:1em center; background-repeat:no-repeat; } table td.filename a:hover, table td.filename a:focus { outline:0; } table td.filename a:active { outline:0; } -table em { font-weight:bold; } table td.filename a.folder-up { background-image:url('../img/back.png'); font-style:italic; } table td.filename a.folder { background-image:url('../img/folder.png'); } table td.filename a.folder-home { background-image:url('../img/home.png'); } @@ -151,16 +117,11 @@ table td.download { background-image:url('../img/download.png'); } table td.upload { background-image:url('../img/upload.png'); } table td.create { background-image:url('../img/folder-new.png'); } table td.delete { background-image:url('../img/delete.png'); } -#fileList tr input[type=checkbox] { display:none; float:left; margin:0.7em; margin-left:1em; } -#fileList tr input[type=checkbox]:checked { display:inline; } -#fileList tr:hover input[type=checkbox] { display:inline; } -#fileList tr:hover td.filename a{background-image:none !important} -#fileList tr.selected td.filename a{background-image:none !important} +#fileList tr input[type=checkbox] { display:none; float:left; margin:.7em 0 0 1em; /* bigger clickable area doesn’t work in FF width:2.8em; height:2.4em;*/ } +#fileList tr input[type=checkbox]:checked, #fileList tr:hover input[type=checkbox] { display:inline; } +#fileList tr.selected td.filename a, #fileList tr:hover td.filename a{background-image:none !important} #select_all{float:left; margin:0.2em; margin-left:0.6em; } -#selectedActions{ - float:right; - display:none; -} +#selectedActions { float:right; display:none; } #uploadsize-message{display:none} /* add breadcrumb divider to the File item in navigation panel */ diff --git a/files/js/files.js b/files/js/files.js index e1ac4e172fc..23d4c0205f0 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -328,7 +328,9 @@ function procesSelection(){ var selectedFolders=selected.filter(function(el){return el.type=='dir'}); if(selectedFiles.length==0 && selectedFolders.length==0){ $('#headerName>span.name').text('Name'); - $('#headerSize').text('Size (MB)'); + $('#headerSize').text('Size MB'); + $('#headerDate').text('Modified'); + $('th').css({background:'#fff',fontWeight:'normal'}); $('#selectedActions').hide(); }else{ $('#selectedActions').show(); @@ -347,26 +349,28 @@ function procesSelection(){ totalSize= '>1000'; } } - $('#headerSize').text(totalSize+' (MB)'); + $('#headerSize').text(totalSize+' MB'); var selection=''; - if(selectedFiles.length>0){ - if(selectedFiles.length==1){ - selection+='1 File'; + if(selectedFolders.length>0){ + if(selectedFolders.length==1){ + selection+='1 folder'; }else{ - selection+=selectedFiles.length+' Files'; + selection+=selectedFolders.length+' folders'; } - if(selectedFolders.length>0){ - selection+=' ,'; + if(selectedFiles.length>0){ + selection+=' & '; } } - if(selectedFolders.length>0){ - if(selectedFolders.length==1){ - selection+='1 Folder'; + if(selectedFiles.length>0){ + if(selectedFiles.length==1){ + selection+='1 file'; }else{ - selection+=selectedFolders.length+' Folders'; + selection+=selectedFiles.length+' files'; } } - $('#headerName>span.name').text(selection+' Selected'); + $('#headerName>span.name').text(selection); + $('#headerDate').text(''); + $('th').css({background:'#ddd', fontWeight:'bold'}); } } @@ -396,4 +400,4 @@ function getSelectedFiles(property){ } }); return files; -} \ No newline at end of file +} diff --git a/files/templates/index.php b/files/templates/index.php index b0d4f556f4a..e0c4fd39c15 100644 --- a/files/templates/index.php +++ b/files/templates/index.php @@ -34,8 +34,8 @@ Delete - t( 'Size (MB)' ); ?> - t( 'Modified' ); ?> + t( 'Size MB' ); ?> + t( 'Modified' ); ?> @@ -43,7 +43,7 @@ -
    +

    t( 'The files you are trying to upload exceed the maximum size for file uploads on this server.' ); ?>

    From 78f47c07e078aa9cde119c0eb32a8adc111569f8 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Thu, 28 Jul 2011 00:36:31 +0200 Subject: [PATCH 16/40] show arrow cursor instead of text caret by default --- core/css/styles.css | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core/css/styles.css b/core/css/styles.css index f5f54a1c9f6..ac4a6448af2 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -1,4 +1,4 @@ -* { margin:0; padding:0; border:0; } +* { margin:0; padding:0; border:0; cursor:default; } body { background:#fefefe url('../img/body_background.jpg') repeat-y left top; font:normal 80%/1.6em "Lucida Grande", Arial, Verdana, sans-serif; color:#000; } #header { position:fixed; top:0; z-index:100; width:100%; height:2.5em; padding:0.5em 1.5em; background:url('../img/header-a.png') repeat-x left top; } #body-settings #header { background-image:url('../img/header-settings-a.png'); } @@ -7,7 +7,9 @@ h1 { margin:1em 3em 1em 0; border-bottom:1px solid #666; text-transform:uppercas p.center { text-align:center; } a { color:#000; text-decoration:none; outline:0; } table { white-space:nowrap; } -input { background:#fff; cursor:pointer; } +input { background:#fff; } +a, a img, a strong, a span, input, button, select, li { cursor:pointer; } +input[type="text"], input[type="password"] { cursor:text; } form#user_settings { max-width:600px; } form#user_settings p label { display:block; float:left; width:35%; padding:0.4em 0.5em 0 0; text-align:right; } From 9a88f066c58c27152f8c58d5778140b872aa0be6 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Thu, 28 Jul 2011 01:15:36 +0200 Subject: [PATCH 17/40] first part of file action icons implementation --- core/img/actions/delete.png | Bin 0 -> 330 bytes core/img/actions/delete.svg | 70 +++++++++++++++++++++++++++++ core/img/actions/download.png | Bin 0 -> 264 bytes core/img/actions/download.svg | 73 +++++++++++++++++++++++++++++++ core/img/actions/rename.png | Bin 0 -> 339 bytes core/img/actions/rename.svg | 80 ++++++++++++++++++++++++++++++++++ core/img/actions/share.png | Bin 0 -> 478 bytes core/img/actions/share.svg | 70 +++++++++++++++++++++++++++++ files/css/files.css | 5 ++- files/templates/index.php | 4 +- 10 files changed, 298 insertions(+), 4 deletions(-) create mode 100644 core/img/actions/delete.png create mode 100644 core/img/actions/delete.svg create mode 100644 core/img/actions/download.png create mode 100644 core/img/actions/download.svg create mode 100644 core/img/actions/rename.png create mode 100644 core/img/actions/rename.svg create mode 100644 core/img/actions/share.png create mode 100644 core/img/actions/share.svg diff --git a/core/img/actions/delete.png b/core/img/actions/delete.png new file mode 100644 index 0000000000000000000000000000000000000000..97f089524b21449a6c9e1aa4c10c579433221ec7 GIT binary patch literal 330 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4$JXnPJT?snqh?n;Vv%U@vAiwIU^#(_ z)8I_KcFgliU zAo!@@1?}|mmbOY}_^f`j`GwZCuPj-kp6W#GJs9}szi}<&-Sa+Q TVy-*`g&KpWtDnm{r-UW|T5o*s literal 0 HcmV?d00001 diff --git a/core/img/actions/delete.svg b/core/img/actions/delete.svg new file mode 100644 index 00000000000..e542b6fed3a --- /dev/null +++ b/core/img/actions/delete.svg @@ -0,0 +1,70 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/core/img/actions/download.png b/core/img/actions/download.png new file mode 100644 index 0000000000000000000000000000000000000000..783ad448449e75e8561aab1e0f468e3ef57f2ff1 GIT binary patch literal 264 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR47K_44#yZiq`J#Fr zW) + + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/core/img/actions/rename.png b/core/img/actions/rename.png new file mode 100644 index 0000000000000000000000000000000000000000..9a86919df5a53d7957e25e09564046b8bb41eb78 GIT binary patch literal 339 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4Ty;Iu2`jNV%(EpP8@3pD)-|pYV^9iOq1A9iLj1tX z)g(b#d&Y{>enAEJ-A_2)ydC)CNSAu evg*{_$ryY;W@8i6^fsX17(8A5T-G@yGywnwAAkM; literal 0 HcmV?d00001 diff --git a/core/img/actions/rename.svg b/core/img/actions/rename.svg new file mode 100644 index 00000000000..adda394ddf9 --- /dev/null +++ b/core/img/actions/rename.svg @@ -0,0 +1,80 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + diff --git a/core/img/actions/share.png b/core/img/actions/share.png new file mode 100644 index 0000000000000000000000000000000000000000..300ce57544d4d3a4500e2a366e07b440d32ef722 GIT binary patch literal 478 zcmV<40U`d0P)ZfS|(e9h(iB7?K4~HQbqV?wP}gneiVK@(xz3 z)fw-73`~kh!_1DHb3V6#_r3v40hrkV&;ss)JY-c}Zj*mu6$Y$OtJNmbG`EIuVkGVZ-sU@@C(iO7kW%>rXti02&wy`ZWKfC6)Weim7Z z+q97UpVKkfak8~+uQ;GK@jW!H^7UC>;v~OAcH*k22HPj UXsb`a4FCWD07*qoM6N<$f}0Sk literal 0 HcmV?d00001 diff --git a/core/img/actions/share.svg b/core/img/actions/share.svg new file mode 100644 index 00000000000..7812971e387 --- /dev/null +++ b/core/img/actions/share.svg @@ -0,0 +1,70 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/files/css/files.css b/files/css/files.css index c00b595fd2f..7db46e3b0a7 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -95,7 +95,7 @@ table th { padding:.5em; } table th .name { float:left; margin-left:.5em; } table th, table td { border-bottom:1px solid #ddd; text-align:left; font-weight:normal; } table td { border-bottom:1px solid #eee; font-style:normal; } -table th#headerSize, table td.filesize, table th#headerDate, table td.date { width:4em; padding:0 1em; text-align:right; cursor:help; } +table th#headerSize, table td.filesize, table th#headerDate, table td.date { width:5em; padding:0 1em; text-align:right; cursor:help; } table td.selection, table th.selection, table td.fileaction { width:2em; text-align:center; } table td.filename a { display:block; background-image:url('../img/file.png'); text-decoration:none; } table td.filename a, table td.login, table td.logout, table td.download, table td.upload, table td.create, table td.delete { padding:.5em .5em .5em 3em; background-position:1em center; background-repeat:no-repeat; } @@ -122,7 +122,8 @@ table td.delete { background-image:url('../img/delete.png'); } #fileList tr.selected td.filename a, #fileList tr:hover td.filename a{background-image:none !important} #select_all{float:left; margin:0.2em; margin-left:0.6em; } #selectedActions { float:right; display:none; } -#uploadsize-message{display:none} +#selectedActions a { margin:0 .5em; } +#uploadsize-message{ display:none; } /* add breadcrumb divider to the File item in navigation panel */ #plugins li:first-child{ diff --git a/files/templates/index.php b/files/templates/index.php index e0c4fd39c15..ac890257394 100644 --- a/files/templates/index.php +++ b/files/templates/index.php @@ -29,9 +29,9 @@ t( 'Name' ); ?> - Download + Download - Delete + Delete t( 'Size MB' ); ?> From 7cd7e64498f54bbfff6ffe6d1bce80b844391938 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Thu, 28 Jul 2011 01:26:26 +0200 Subject: [PATCH 18/40] proper CSS formatting for better workflow --- core/css/styles.css | 194 ++++++-------------------------------------- files/css/files.css | 115 +++++--------------------- 2 files changed, 46 insertions(+), 263 deletions(-) diff --git a/core/css/styles.css b/core/css/styles.css index ac4a6448af2..0782986eada 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -7,7 +7,7 @@ h1 { margin:1em 3em 1em 0; border-bottom:1px solid #666; text-transform:uppercas p.center { text-align:center; } a { color:#000; text-decoration:none; outline:0; } table { white-space:nowrap; } -input { background:#fff; } +input, select { background:#fff; color:#333; } a, a img, a strong, a span, input, button, select, li { cursor:pointer; } input[type="text"], input[type="password"] { cursor:text; } @@ -20,9 +20,9 @@ form input { padding:0.2em; border:1px solid #ddd; font-size:1.2em; } form input[type="submit"] { padding:0.1em 1em; border:1px solid #999; font-weight:bold; font-size:0.9em; cursor:pointer; } form input[type="submit"]:hover, form input[type="submit"]:focus { border:1px solid #999; background-color:#999; outline:0; } form input[type="submit"]:active { outline:0; } -form input[type="button"], form input[type="text"] { font-size: 0.9em; } +form input[type="button"], form input[type="text"] { font-size:0.9em; } fieldset { padding:1em; background-color:#f7f7f7; border:1px solid #ddd; max-width:600px; margin:2em 2em 2em 3em; } -legend { padding: 0.5em; font-size:1.2em; } +legend { padding:0.5em; font-size:1.2em; } div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1px solid #eee; position:fixed; z-index:100 } @@ -30,170 +30,30 @@ div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1 #body-login { width:100%; background-image:none; background-color:#ddd; } #body-login p.info { width:16em; margin:4em auto; padding:1em; background-color:#eee; border:1px solid #ccc; -moz-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; } -#login -{ - margin: 0 auto 0 auto; - padding: 2em 0 0 0; - background-image: url(../img/header-login.png); - background-position: left 0; - background-repeat: repeat-x; - background-color: #EEE; - border-bottom: 1px solid #FFF; - text-align: center; -} - -#login_form -{ - width: 20em; - margin: 4em auto; - padding: 0; -} - -#login_form fieldset -{ - background-color: transparent; - border: 0; -} - -#login_form fieldset p -{ - margin: 0.5em 0 0 0; - padding: 0; - text-align: left; -} - -#login_form fieldset p.submit -{ - margin: 2em 0 0 0; - padding: 1em 0 0 0; - border-top: 1px solid #DDD; - text-align: right; -} - -#login_form label -{ - font-size: 1em; - color: #666; -} - -#login_form input -{ - width: 100%; - margin: 0 0 0.5em 0; - padding: 0.5em; - border: 1px solid #DDD; - -moz-border-radius: 15px; - -webkit-border-radius: 15px; - border-radius: 15px; - font-size: 1.5em; - color: #333; - text-align: center; -} - -#login_form input[type=submit] -{ - width: auto; - margin: 1em 0 0 0.5em; - text-align: center; - border: 1px solid #DDD; - background-color: #FFF; - -moz-border-radius: 15px; - -webkit-border-radius: 15px; - border-radius: 15px; - font-size: 1.5em -} - -#login_form input[type=submit]:hover -{ - border: 1px solid #666; - background-color: #666; - color: #FFF; -} -#login_form input[type="checkbox"] -{ - width:15px; -} - -#setup_form { - margin: 3em auto; - text-align: left; - width: 720px; -} - -#setup_form #use_mysql { - font-size: 0.9em; - margin: 0 0 0 1em; -} - -#setup_form p.intro { - color: #666; - font-size: 1.3em; - margin: 4em 0 3em 0; - padding: 0; - text-align: center; -} - -#setup_form ul.errors { - background-image: url(images/no.png); - background-position: 1em 1em; - background-repeat: no-repeat; - background-color: #FED7D7; - border: 1px solid #F00; - font-size: 1.2em; - list-style-indent: inside; - margin: 0 0 4em 0; - padding: 1em 1em 1em 5em; -} - -#setup_form fieldset { - margin: 0 0 3em 0; -} - -#setup_form p { - line-height: 1.8em; -} - -#setup_form legend { - font-weight: normal; -} - -#setup_form label { - cursor: pointer; - display: block; - float: left; - margin: 0 0 0.2em 0; - text-align: right; - width: 40%; -} - +#login { margin:0 auto 0 auto; padding:2em 0 0 0; background-image:url(../img/header-login.png); background-position:left 0; background-repeat:repeat-x; background-color:#EEE; border-bottom:1px solid #FFF; text-align:center; } +#login_form { width:20em; margin:4em auto; padding:0; } +#login_form fieldset { background-color:transparent; border:0; } +#login_form fieldset p { margin:0.5em 0 0 0; padding:0; text-align:left; } +#login_form fieldset p.submit { margin:2em 0 0 0; padding:1em 0 0 0; border-top:1px solid #DDD; text-align:right; } +#login_form label { font-size:1em; color:#666; } +#login_form input { width:100%; margin:0 0 0.5em 0; padding:0.5em; border:1px solid #DDD; -moz-border-radius:15px; -webkit-border-radius:15px; border-radius:15px; font-size:1.5em; color:#333; text-align:center; } +#login_form input[type=submit] { width:auto; margin:1em 0 0 0.5em; text-align:center; border:1px solid #DDD; background-color:#FFF; -moz-border-radius:15px; -webkit-border-radius:15px; border-radius:15px; font-size:1.5em } +#login_form input[type=submit]:hover { border:1px solid #666; background-color:#666; color:#FFF; } +#login_form input[type="checkbox"] { width:15px; } +#setup_form { margin:3em auto; text-align:left; width:720px; } +#setup_form #use_mysql { font-size:0.9em; margin:0 0 0 1em; } +#setup_form p.intro { color:#666; font-size:1.3em; margin:4em 0 3em 0; padding:0; text-align:center; } +#setup_form ul.errors { background-image:url(images/no.png); background-position:1em 1em; background-repeat:no-repeat; background-color:#FED7D7; border:1px solid #F00; font-size:1.2em; list-style-indent:inside; margin:0 0 4em 0; padding:1em 1em 1em 5em; } +#setup_form fieldset { margin:0 0 3em 0; } +#setup_form p { line-height:1.8em; } +#setup_form legend { font-weight:normal; } +#setup_form label { cursor:pointer; display:block; float:left; margin:0 0 0.2em 0; text-align:right; width:40%; } #setup_form input[type='text'], -#setup_form input[type='password'] { - font-size: 1em; - margin: 0 0 0 0.5em; - padding: 0.3em; -} - -#setup_form input[type='radio'] { - margin: 0 0 0 1em; -} - -#setup_form input[type='submit'] { - background-color: #DDD; - border: 1px solid #999; - color: #666; - font-size: 1.2em; -} - -#setup_form input[type='submit']:hover { - border-color: #000; - color: #000; -} - -#setup_form p.submit { - padding: 0 0 1em 0; - text-align: center; -} - +#setup_form input[type='password'] { font-size:1em; margin:0 0 0 0.5em; padding:0.3em; } +#setup_form input[type='radio'] { margin:0 0 0 1em; } +#setup_form input[type='submit'] { background-color:#DDD; border:1px solid #999; color:#666; font-size:1.2em; } +#setup_form input[type='submit']:hover { border-color:#000; color:#000; } +#setup_form p.submit { padding:0 0 1em 0; text-align:center; } .prettybutton { margin:0.1em; padding:0.2em 0.5em; border:1px solid #ddd; -moz-border-radius:15px; -webkit-border-radius:15px; border-radius:15px; font-size:1.5em; text-decoration:none; color:#666; background-color:#fff; } @@ -252,4 +112,4 @@ p.actions a.delete, div.actions a.delete { background-image:url('../img/delete.p #logs_options input[type="submit"] { float:right; margin:0 2em 0 0; } #logs_options input[type="submit"].nofloat { float:none; margin:0 2em 0 0; } #logs_options input[type="text"] { margin:0; padding:0; border:1px solid #ccc; text-align:right; } -li.error{ list-style:none; width:640px; margin:4em auto; padding:1em 1em 1em 4em; background-color:#fee; background-image:url('../img/task-attention.png'); background-position:0.8em 0.8em; background-repeat:no-repeat; border:1px solid #ccc; -moz-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; } +li.error { list-style:none; width:640px; margin:4em auto; padding:1em 1em 1em 4em; background-color:#fee; background-image:url('../img/task-attention.png'); background-position:0.8em 0.8em; background-repeat:no-repeat; border:1px solid #ccc; -moz-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; } diff --git a/files/css/files.css b/files/css/files.css index 7db46e3b0a7..e956f8c03af 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -1,95 +1,24 @@ /* FILE MENU */ - -#file_menu -{ - right:0px; - position:absolute; - top:0; -} - -#file_menu a -{ - display:block; - float:left; - background-image:none; - text-decoration: none; -} - -.file_upload_form, #file_newfolder_form { - display: inline; -} - -#fileSelector, #file_upload_submit, #file_newfolder_submit { - display: none; -} - -.file_upload_filename, #file_newfolder_name { - background-repeat: no-repeat; - background-position: 0.5em 0; - padding-left: 2em; -} - -.file_upload_filename { - background-image:url("../img/file.png"); font-weight:bold; -} -.file_upload_start {opacity:0;filter: alpha(opacity = 0);} - -#file_newfolder_name { - background-image:url("../img/folder.png"); font-weight:bold; - width: 11em; -} - -.file_upload_start, .file_upload_filename{ - position:absolute; - top:0px; - left:0px; - width:11em; - font-size: 0.9em; -} - -.file_upload_wrapper{ - position:relative; - top:-1.2em; - left:-2em; - display: -moz-inline-box; /* fallback for older firefox versions*/ - display: inline-block; - width:12em; -} - -#file_newfolder_submit, #file_upload_submit { - width: 3em; -} - -.file_upload_target { - display: none; -} +#file_menu { right:0px; position:absolute; top:0; } +#file_menu a { display:block; float:left; background-image:none; text-decoration:none; } +.file_upload_form, #file_newfolder_form { display:inline; } +#fileSelector, #file_upload_submit, #file_newfolder_submit { display:none; } +.file_upload_filename, #file_newfolder_name { background-repeat:no-repeat; background-position:0.5em 0; padding-left:2em; } +.file_upload_filename { background-image:url("../img/file.png"); font-weight:bold; }.file_upload_start { opacity:0;filter:alpha(opacity = 0); } + +#file_newfolder_name { background-image:url("../img/folder.png"); font-weight:bold; width:11em; } +.file_upload_start, .file_upload_filename { position:absolute; top:0px; left:0px; width:11em; font-size:0.9em; } +.file_upload_wrapper { position:relative; top:-1.2em; left:-2em; display:-moz-inline-box; /* fallback for older firefox versions*/ display:inline-block; width:12em; } +#file_newfolder_submit, #file_upload_submit { width:3em; } +.file_upload_target { display:none; } /* FILE TABLE */ - -table { - position:relative; - top:37px; - width: 100%; -} - +table { position:relative; top:37px; width:100%; } tbody tr:hover, tbody tr:active, tbody tr.selected { background-color:#eee; } tbody a { color:#000; } -span.extention{ - color:#999; -} - -div.crumb{ - float:left; - display:block; - background-repeat:no-repeat; - background-position:right 0px; - font-weight:bold; - padding-top:8px; - padding-left:8px; - height:28px; /*36-8*/ -} - +span.extention { color:#999; } +div.crumb { float:left; display:block; background-repeat:no-repeat; background-position:right 0px; font-weight:bold; padding-top:8px; padding-left:8px; height:28px; /*36-8*/ } table tr.mouseOver td { background-color:#eee; } table th { padding:.5em; } table th .name { float:left; margin-left:.5em; } @@ -119,17 +48,11 @@ table td.create { background-image:url('../img/folder-new.png'); } table td.delete { background-image:url('../img/delete.png'); } #fileList tr input[type=checkbox] { display:none; float:left; margin:.7em 0 0 1em; /* bigger clickable area doesn’t work in FF width:2.8em; height:2.4em;*/ } #fileList tr input[type=checkbox]:checked, #fileList tr:hover input[type=checkbox] { display:inline; } -#fileList tr.selected td.filename a, #fileList tr:hover td.filename a{background-image:none !important} -#select_all{float:left; margin:0.2em; margin-left:0.6em; } +#fileList tr.selected td.filename a, #fileList tr:hover td.filename a { background-image:none !important } +#select_all { float:left; margin:0.2em; margin-left:0.6em; } #selectedActions { float:right; display:none; } #selectedActions a { margin:0 .5em; } -#uploadsize-message{ display:none; } +#uploadsize-message { display:none; } /* add breadcrumb divider to the File item in navigation panel */ -#plugins li:first-child{ - background-position: 15.7em 0px; - background-repeat:no-repeat; - background-image: url("/owncloud/core/img/breadcrumb-divider-start.png"); - width:15.7em; - padding-right:11px; -} +#plugins li:first-child { background-position:15.7em 0px; background-repeat:no-repeat; background-image:url("/owncloud/core/img/breadcrumb-divider-start.png"); width:15.7em; padding-right:11px; } From c5bc345604caee2a908c61ac42dad7f025da27de Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Thu, 28 Jul 2011 02:30:09 +0200 Subject: [PATCH 19/40] rewrote header in pure CSS, smaller, less obtrusive --- core/css/styles.css | 23 ++- core/img/{layout => actions}/back.png | Bin core/img/actions/back.svg | 121 ++++++++++++ core/img/{layout => actions}/logout.png | Bin core/img/actions/logout.svg | 95 ++++++++++ core/img/{layout => actions}/settings.png | Bin core/img/actions/settings.svg | 221 ++++++++++++++++++++++ core/img/drop-arrow.png | Bin 2899 -> 0 bytes core/img/header-a.png | Bin 2951 -> 0 bytes core/img/header-login.png | Bin 2402 -> 0 bytes core/img/header-settings-a.png | Bin 2885 -> 0 bytes core/img/header-settings.png | Bin 2887 -> 0 bytes core/img/header.png | Bin 2953 -> 0 bytes core/img/owncloud-logo-small-white.png | Bin 5444 -> 5339 bytes core/templates/installation.php | 2 +- core/templates/layout.admin.php | 4 +- core/templates/layout.user.php | 4 +- core/templates/login.php | 2 +- 18 files changed, 460 insertions(+), 12 deletions(-) rename core/img/{layout => actions}/back.png (100%) create mode 100644 core/img/actions/back.svg rename core/img/{layout => actions}/logout.png (100%) create mode 100644 core/img/actions/logout.svg rename core/img/{layout => actions}/settings.png (100%) create mode 100644 core/img/actions/settings.svg delete mode 100644 core/img/drop-arrow.png delete mode 100644 core/img/header-a.png delete mode 100644 core/img/header-login.png delete mode 100644 core/img/header-settings-a.png delete mode 100644 core/img/header-settings.png delete mode 100644 core/img/header.png diff --git a/core/css/styles.css b/core/css/styles.css index 0782986eada..0e4ac7ac3eb 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -1,7 +1,7 @@ * { margin:0; padding:0; border:0; cursor:default; } body { background:#fefefe url('../img/body_background.jpg') repeat-y left top; font:normal 80%/1.6em "Lucida Grande", Arial, Verdana, sans-serif; color:#000; } -#header { position:fixed; top:0; z-index:100; width:100%; height:2.5em; padding:0.5em 1.5em; background:url('../img/header-a.png') repeat-x left top; } -#body-settings #header { background-image:url('../img/header-settings-a.png'); } +#header { position:fixed; top:0; z-index:100; width:100%; height:2.5em; padding:0.5em 1.5em; background:#1d2d44; -moz-box-shadow:0 0 10px #000, inset 0 -2px 10px #222; -webkit-box-shadow:0 0 10px #000, inset 0 -2px 10px #222; box-shadow:0 0 10px #000, inset 0 -2px 10px #222; } +#body-settings #header { background:#313131; } #owncloud { float:left; margin:0 0 0 2em; } h1 { margin:1em 3em 1em 0; border-bottom:1px solid #666; text-transform:uppercase; font-weight:normal; font-style:italic; color:#666; } p.center { text-align:center; } @@ -28,9 +28,20 @@ div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1 /* LOG IN & INSTALLATION ------------------------------------------------------------ */ #body-login { width:100%; background-image:none; background-color:#ddd; } -#body-login p.info { width:16em; margin:4em auto; padding:1em; background-color:#eee; border:1px solid #ccc; -moz-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; } - -#login { margin:0 auto 0 auto; padding:2em 0 0 0; background-image:url(../img/header-login.png); background-position:left 0; background-repeat:repeat-x; background-color:#EEE; border-bottom:1px solid #FFF; text-align:center; } +#body-login p.info { width:16em; margin:2em auto; padding:1em; background-color:#eee; border:1px solid #ccc; -moz-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; } +#body-login p.info a { font-weight:bold; } + +#login header { margin-top:-2em; height:10em; + -moz-box-shadow:0 0 5px #000; -webkit-box-shadow:0 0 20px #000; box-shadow:0 0 20px #000; +background: #1d2d44; /* Old browsers */ +background: -moz-linear-gradient(top, #35537a 0%, #1d2d42 100%); /* FF3.6+ */ +background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#35537a), color-stop(100%,#1d2d42)); /* Chrome,Safari4+ */ +background: -webkit-linear-gradient(top, #35537a 0%,#1d2d42 100%); /* Chrome10+,Safari5.1+ */ +background: -o-linear-gradient(top, #35537a 0%,#1d2d42 100%); /* Opera11.10+ */ +background: -ms-linear-gradient(top, #35537a 0%,#1d2d42 100%); /* IE10+ */ +filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#35537a', endColorstr='#1d2d42',GradientType=0 ); /* IE6-9 */ +background: linear-gradient(top, #35537a 0%,#1d2d42 100%); /* W3C */ } +#login { margin:0 auto 0 auto; padding:2em 0 0 0; border-bottom:1px solid #FFF; text-align:center; background:#eee; } #login_form { width:20em; margin:4em auto; padding:0; } #login_form fieldset { background-color:transparent; border:0; } #login_form fieldset p { margin:0.5em 0 0 0; padding:0; text-align:left; } @@ -62,7 +73,7 @@ div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1 /* META NAVIGATION (Settings, Log out) ---------------------------------------------------------------- */ #metanav { float:right; position:relative; top:0.5em; right:2.5em; list-style:none; margin:0; padding:0; } #metanav li { display:inline; } -#metanav li a { margin:.1em; padding:1em; } +#metanav li a { margin:.2em; padding:.7em; } #metanav li a:hover, #metanav li a:focus { background:rgba(0,0,0,.5); -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; outline:0; box-shadow:#555 0 1px 0; -moz-box-shadow:#555 0 1px 0; -webkit-box-shadow:#555 0 1px 0; } #metanav li a img { vertical-align:middle; } diff --git a/core/img/layout/back.png b/core/img/actions/back.png similarity index 100% rename from core/img/layout/back.png rename to core/img/actions/back.png diff --git a/core/img/actions/back.svg b/core/img/actions/back.svg new file mode 100644 index 00000000000..2bdf50c7334 --- /dev/null +++ b/core/img/actions/back.svg @@ -0,0 +1,121 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/layout/logout.png b/core/img/actions/logout.png similarity index 100% rename from core/img/layout/logout.png rename to core/img/actions/logout.png diff --git a/core/img/actions/logout.svg b/core/img/actions/logout.svg new file mode 100644 index 00000000000..d95ac959778 --- /dev/null +++ b/core/img/actions/logout.svg @@ -0,0 +1,95 @@ + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + diff --git a/core/img/layout/settings.png b/core/img/actions/settings.png similarity index 100% rename from core/img/layout/settings.png rename to core/img/actions/settings.png diff --git a/core/img/actions/settings.svg b/core/img/actions/settings.svg new file mode 100644 index 00000000000..67473520af6 --- /dev/null +++ b/core/img/actions/settings.svg @@ -0,0 +1,221 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/core/img/drop-arrow.png b/core/img/drop-arrow.png deleted file mode 100644 index 315395d5d4240bb8c2372e92f0af90ce0c9450b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2899 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 diff --git a/core/img/header-a.png b/core/img/header-a.png deleted file mode 100644 index 46fb0977ee2c49444c29312c48acacc4d826131f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2951 zcmV;23wZR2P)EX>4Tx0C?J+Q+HUC_ZB|i_hk=OLfG)Jmu!ImA|tE_$Pihg5Rw34gb)%y#f69p zRumNxoJdu~g4GI0orvO~D7a@qiilc^Ra`jkAKa(4eR}Wh?fcjJyyu+f{LXpL4}cL8 zCXwc%Y5+M>g*-agACFH+#L2yY0u@N$1RxOR%fe>`#Q*^C19^CUbg)1C0k3ZW0swH; zE+i7i;s1lWP$pLZAdvvzA`<5d0gzGv$SzdK6adH=0I*ZDWC{S3003-xd_p1ssto|_ z^hrJi0NAOM+!p}Yq8zCR0F40vnJ7mj0zkU}U{!%qECRs70HCZuA}$2Lt^t5qwlYTo zfV~9(c8*w(4?ti5fSE!p%m5%b0suoE6U_r4Oaq`W(!b!TUvP!ENC5!A%azTSOVTqG zxRuZvck=My;vwR~Y_URN7by^C3FIQ2mzyIKNaq7g&I|wm8u`(|{y0C7=jP<$=4R(? z@ASo@{%i1WB0eGU-~POe0t5gMPS5Y!U*+Z218~Oyuywy{sapWrRsd+<`CT*H37}dE z(0cicc{uz)9-g64$UGe!3JVMEC1RnyFyo6p|1;rl;ER6t{6HT5+j{T-ahgDxt-zy$ z{c&M#cCJ#6=gR~_F>d$gBmT#QfBlXr(c(0*Tr3re@mPttP$EsodAU-NL?OwQ;u7h9 zGVvdl{RxwI4FIf$Pry#L2er#=z<%xl0*ek<(slqqe)BDi8VivC5N9+pdG`PSlfU_o zKq~;2Moa!tiTSO!5zH77Xo1hL_iEAz&sE_ z2IPPo3ZWR5K^auQI@koYumc*P5t`u;w81er4d>tzT!HIw7Y1M$p28Tsh6w~g$Osc* zAv%Z=Vvg7%&IlKojszlMNHmgwq#)^t6j36@$a16tsX}UzT}UJHEpik&ja)$bklV;0 zGK&0)yhkyVfwEBp)B<%txu_o+ipHRG(R4HqU4WLNYtb6C9zB4zqNmYI=yh}eeTt4_ zfYC7yW{lZkT#ScBV2M~7CdU?I?5=ix(HVZgM=}{CnA%mPqZa^68Xe5gFH?u96Et<2 zCC!@_L(8Nsqt(!wX=iEoXfNq>x(VHb9z~bXm(pwK2kGbOgYq4YG!XMxcgB zqf}$J#u<$v7REAV@mNCEa#jQDENhreVq3EL>`ZnA`x|yIdrVV9bE;;nW|3x{=5fsd z4#u(I@HyF>O3oq94bFQl11&!-vDRv>X03j$H`;pIzS?5#a_tuF>)P*iaGgM%ES>c_ zZ94aL3A#4AQM!e?+jYlFJ5+DSzi0S9#6BJCZ5(XZOGfi zTj0IRdtf>~J!SgN=>tB-J_4V5pNGDtz9Qc}z9W9tewls;{GR(e`pf-~_`l(K@)q$< z1z-We0p$U`ff|9c18V~x1epY-2Q>wa1-k|>3_cY?3<(WcA99m#z!&lx`C~KOXDpi0 z70L*m6G6C?@k ziR8rC#65}Qa{}jVnlqf_npBo_W3J`gqPZ95>CVfZcRX1&S&)1jiOPpx423?lIEROmG(H@JAFg?XogQlb;dIZPf{y+kr|S? zBlAsGMAqJ{&)IR=Ejg5&l$@hd4QZCNE7vf$D7Q~$D=U)?Nn}(WA6du22pZOfRS_cv~1-c(_QtNLti0-)8>m`6CO07JR*suu!$(^sg%jf zZm#rNxnmV!m1I@#YM0epR(~oNm0zrItf;Q|utvD%;#W>z)qM4NZQ9!2O1H}G>qzUQ z>u#*~S--DJy=p<#(1!30tsC);y-IHSJr>wyfLop*ExT zdYyk=%U1oZtGB+{Cfe4&-FJKQ4uc&PJKpb5^_C@dOYIJXG+^@gCvI%WcHjN%gI&kHifN$EH?V5MBa9S!3!a?Q1 zC*P)gd*e{(q0YnH!_D8Bf4B7r>qvPk(mKC&tSzH$pgp0z@92!9ogH2sN4~fJe(y2k zV|B+hk5`_cohUu=`Q(C=R&z?UQbnZ;IU-!xL z-sg{9@Vs#JBKKn3CAUkhJ+3`ResKNaNUvLO>t*-L?N>ambo5Q@JJIjcfBI^`)pOVQ z*DhV3dA;w(>>IakCfyvkCA#(acJ}QTcM9%I++BK)c(44v+WqPW`VZ=VwEnSWz-{38 zV8CF{!&wjS4he^z{*?dIhvCvk%tzHDMk9@nogW_?4H~`jWX_Y}r?RIL&&qyQ|9R_k ztLNYS;`>X_Sp3-V3;B!Bzpi7Jk5yCLq$k3nQq!zL@M?h;V06^fs<9rd(c3 z1GFFl=mW+CrfMEE2h53KXCk>ik=&N1J5q$b1ldr`&wBw*+%KYR{$;bL7YURKoEw1r xbYS~^0DOC>o57{CnNIpG$aCESyo;Bm-2fQ0jK2f$;#dFx002ovPDHLkV1mm=o%R3# diff --git a/core/img/header-login.png b/core/img/header-login.png deleted file mode 100644 index b0160e02d1f34172bd4c2e684f8716bdb71c4572..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2402 zcmV-o37z(dP)Px#24YJ`L;yJeR{(rvGGwX%000SaNLh0L01FZT01FZU(%pXi00007bV*G`2ipP( z3o-_~qeKG$00`nqL_t(&-lbaYv1~OAvoh&}I;ezZ=!E8gLRS1pVoOf;G7R_4yt{YL zS59Kfk{tZ{+wYA3@iQVK$O!I#5sY9&1cUp}*hkKfex3{l5D|eOX{P||CLkgZK{61r z&Syj*VxA8{`V;gqSfhd-L%srQ)N&opD57qz|6{#(%>GtuFvw96`E4B!2KT4YM@z0D zv%L@WxO^CE34A4~?{v+J%oQ24=CFnc$~2$lj0miwc@G5E98liUCTg!gd~Bh&A38+X z$+2T#jn3wT%$rXHBM5tPuE$;pK!eQZW0EW4u6fh%c;8-fL1La^Gu+li-yuH_zjr0m zT8W-UCui!C34JMOnC~0myum)6C#;c=O4oW7#z!YSfHmtGm3w7?oz5Bs*lA=#rv@`J z6N20$;95#tlNX+a^71#I+*RW8POA7G2E2 z<_wWBD1Yc%L$bV%C+u!)dYN^I4bJ%W2>YBhdOCh3%q2esvGMo!2nA~M?$1Ohg(%1~d&hQp*2 z3Z7|~XzgTUfS)UEDIv?l*6a~AN0Su&I6Vt|KWbmWUhC;I~+ z6vsf4w$4-pp(5B7A z7O*K}T{F*tg|;^R$%Dvq3ZsS1iUY*QN)}MeoJz(+30BU*DJ&8oolRsQF%jEFP(`6p z3DcB#67WItuKlm-tgJ!OVPNy36moDZ%!E>Chel#&CnpPU8CSuT(i@(QI$&J*^byT+ zem-XzY5L%d0FB^LYvlf3mXT7Sv41N|K|HYSknK*UdNSQ2?0h$?Izte*coA~CzPLD6 zfesZyIK^NEYV1;fAZ)Plp+H=E0m_E4`2!ME>4k(v;WRcfL+L7Z#xrmq_3VojAMwRW z6Dk?k&XC@>F|JX#xZ5zg~eG*yceiAJvT7P!fF z!v^7rIyw7PvMDs@2L~TU_f^=Lm?hNqHl&P9v;R6K?y$^Ux$T&mgPZCi-_(>!6t9a< z#7NRb-aeQZactpzpeA{uB0CbCRFF|Dfx64QQjb-HU1&4{#)PzwA52FRPk!6eXiZEZ)etxXw#ts69xCb`}EI-#lr@#7d&cN7ZdQqv@vd7sunVy)eWZq^UL#0u|z`I(KQ?^f&RU%w-+US{{)t z=xVl0%L3p9szkSE#DwiRqT)VXoQ8Ysi%Zi8>o}a|y`mT|JE1u|!+I;igG}{?(|&C1 z1k*ogwl^ZPuT(q@iB2J&-{PECV(c5XDf^O4cz#DS+f4E>>p~V26Wmp$-N0r{O*Uu` zg|u!DWPP=e&-4k5<5J{wCE2;v;nFDWjOJblok;%-If|3|4C(TKWwznbE>xIDa^_D= zqEU{Gc?2F-C8fE$<-fX{uehwx=u5fz~a+OoQXfoS^qo#uM(G@Z(qJBu$3mjfurcw);y;?2(Jy|+{>9_t6r zz2mJ$&T&qLsZ&%*uYMe4bhH&9qwGK)sEV7pqRAZ!Y7GsTM<>W2oULfrGA2uD$$oXT zX>D^>vre})H0LYekKLzz4#lZr^0_K8w5;ngLd|(;*2Yzx?^bom2Wopj39QzGz9MoI zr$NDTDeFKbPCWV#6sKccVc%hmPWODG&B=<053i=|RrXugYeF_|r~vQgJS4v$1#B*R z54RxLfdc91gD$=aoV_?2#xNHnx7wUghO|;h@edm0z<4FEP;SMwd)fZk6il-KMq^D< zjMZc8CS{58arK({2%g(y$nY3l+Fkt^-j1fyka4&U8kH@X!z}&hv)ZVm6t1?%ikT5? zy++zw4dZ?b`0xHP#pGW%-GvmwO{ zs57B-c&4x`*?+*K`w+kCwG&6BpLpv{=$M=Dy+yYD8cbM!Z0y2YL|$IYygQYTS;wUAJ$LW#j?+4 z^4YQE(?_A20Z>Eo2XC04cO$phx~PxWR+{wD*}4F`FEuFu5m0jF70CR=vtI?Lv|YO_ zwS;^8R diff --git a/core/img/header-settings-a.png b/core/img/header-settings-a.png deleted file mode 100644 index a72271be6a48d44a21a26e99f1e7d69dcbfd802e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2885 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 diff --git a/core/img/header-settings.png b/core/img/header-settings.png deleted file mode 100644 index 7e6b70b5903bcdfb2422e225cf4c17bd2af8ca6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2887 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 diff --git a/core/img/header.png b/core/img/header.png deleted file mode 100644 index d377f65186d24983acf78756db7deff093d566d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2953 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 diff --git a/core/img/owncloud-logo-small-white.png b/core/img/owncloud-logo-small-white.png index 397ddf91341592b1a6a28824db55254a46dd84d5..8374c1335065ce58577b1dc63a144dac5ae5079e 100644 GIT binary patch literal 5339 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 QP#Y2$8JM8T^&MmX1L(OF=>Px# literal 5444 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 - ownCloud +
    ownCloud

    diff --git a/core/templates/layout.admin.php b/core/templates/layout.admin.php index e83cf6861bf..78ccf877221 100644 --- a/core/templates/layout.admin.php +++ b/core/templates/layout.admin.php @@ -30,8 +30,8 @@

    diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php index ffdb7937ae7..f8beb79e81e 100644 --- a/core/templates/layout.user.php +++ b/core/templates/layout.user.php @@ -31,8 +31,8 @@ ownCloud
      -
    • -
    • +
    • +
    diff --git a/core/templates/login.php b/core/templates/login.php index 19830a24993..fb3177eb0ee 100644 --- a/core/templates/login.php +++ b/core/templates/login.php @@ -1,5 +1,5 @@
    - ownCloud +
    ownCloud
    From 74249c65da5b21c4b191f9792b510268c4b83454 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Thu, 28 Jul 2011 04:28:04 +0200 Subject: [PATCH 20/40] give OC.imagePath the ability to detect whether to use svg or png images --- core/js/js.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/core/js/js.js b/core/js/js.js index 2f74bda2588..407c5708701 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -40,6 +40,9 @@ OC={ return link; }, imagePath:function(app,file){ + if(file.indexOf('.')==-1){//if no extention is given, use png or svg depending on browser support + file+=(SVGSupport())?'.svg':'.png' + } return OC.filePath(app,'img',file); }, addScript:function(app,script,ready){ @@ -95,4 +98,8 @@ if (!Array.prototype.indexOf){ } return -1; }; -} \ No newline at end of file +} + +function SVGSupport() { + return document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure", "1.1") || document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#Shape", "1.0"); +} From ece6bd663cc2a03e339019c29d1ea9170d11c24e Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Thu, 28 Jul 2011 04:29:04 +0200 Subject: [PATCH 21/40] show icons instead of text for file actions --- apps/files_imageviewer/js/lightbox.js | 2 +- apps/media/js/files.js | 8 ++--- files/css/files.css | 3 +- files/js/fileactions.js | 45 +++++++++++++++++---------- files/js/filelist.js | 4 +-- files/templates/part.list.php | 2 +- 6 files changed, 38 insertions(+), 26 deletions(-) diff --git a/apps/files_imageviewer/js/lightbox.js b/apps/files_imageviewer/js/lightbox.js index 6e45547ebb4..318c764458e 100644 --- a/apps/files_imageviewer/js/lightbox.js +++ b/apps/files_imageviewer/js/lightbox.js @@ -7,7 +7,7 @@ $(document).ready(function() { $( 'body' ).append(overlay); var container=$(' +
    +

    These items will be permanently deleted and cannot be recovered. Are you sure?

    +
    + From f1616b0e629ec5fd59a859748e64418862691597 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Fri, 29 Jul 2011 00:45:44 +0200 Subject: [PATCH 32/40] implemented relative file size and coloring --- core/css/styles.css | 2 +- files/templates/part.list.php | 7 +++++-- lib/template.php | 23 +++++++++++++++++++++++ 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/core/css/styles.css b/core/css/styles.css index 33c1af44362..35b65f9480d 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -24,7 +24,7 @@ form input[type="button"], form input[type="text"] { font-size:0.9em; } fieldset { padding:1em; background-color:#f7f7f7; border:1px solid #ddd; max-width:600px; margin:2em 2em 2em 3em; } legend { padding:0.5em; font-size:1.2em; } -div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1px solid #eee; position:fixed; z-index:0; } +div.controls { width:100%; margin:0px; background-color:#f7f7f7; border-bottom:1px solid #eee; position:fixed; z-index:2; } /* LOG IN & INSTALLATION ------------------------------------------------------------ */ #body-login { width:100%; background-image:none; background-color:#ddd; } diff --git a/files/templates/part.list.php b/files/templates/part.list.php index 1d78b77ae3e..a0ffb4b6073 100644 --- a/files/templates/part.list.php +++ b/files/templates/part.list.php @@ -1,6 +1,9 @@ + $simple_size_color = 200-intval(pow(($file['size']/(1024*1024)),2)); + $relative_modified_date = relative_modified_date($file['mtime']); + $relative_date_color = round((time()-$file['mtime'])/60/60/24*5); //days ago + if($relative_date_color>200) $relative_date_color = 200; ?> '> @@ -15,6 +18,6 @@ - + diff --git a/lib/template.php b/lib/template.php index 3c0cdf7e161..99099d49d0f 100644 --- a/lib/template.php +++ b/lib/template.php @@ -75,6 +75,29 @@ function simple_file_size($bytes) { else { return number_format($mbytes, 1); } } +function relative_modified_date($timestamp) { + $timediff = time() - $timestamp; + $diffminutes = round($timediff/60); + $diffhours = round($diffminutes/60); + $diffdays = round($diffhours/24); + $diffmonths = round($diffdays/31); + $diffyears = round($diffdays/365); + if($timediff < 60) { return 'seconds ago'; } + else if($timediff < 120) { return '1 minute ago'; } + else if($timediff < 3600) { return $diffminutes.' minutes ago'; } + //else if($timediff < 7200) { return '1 hour ago'; } + //else if($timediff < 86400) { return $diffhours.' hours ago'; } + else if($timediff < 86400) { return 'today'; } + else if($timediff < 172800) { return 'yesterday'; } + else if($timediff < 2678400) { return $diffdays.' days ago'; } + else if($timediff < 5184000) { return 'last month'; } + //else if($timediff < 31556926) { return $diffmonths.' months ago'; } + else if($timediff < 31556926) { return 'months ago'; } + else if($timediff < 63113852) { return 'last year'; } + else { return $diffyears.' years ago'; } +} + + /** * This class provides the templates for owncloud. */ From 82261e99073047dd72ecec927f33ff5fea3cbffd Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Fri, 29 Jul 2011 01:10:08 +0200 Subject: [PATCH 33/40] use relative times for new upload files --- files/js/filelist.js | 16 +++++++++++++--- files/js/files.js | 29 +++++++++++++++++++++++++---- 2 files changed, 38 insertions(+), 7 deletions(-) diff --git a/files/js/filelist.js b/files/js/filelist.js index e4ec97e5068..252a9c95807 100644 --- a/files/js/filelist.js +++ b/files/js/filelist.js @@ -24,8 +24,10 @@ FileList={ simpleSize='Pending'; } sizeColor = Math.round(200-Math.pow((size/(1024*1024)),2)); + lastModifiedTime=Math.round(lastModified.getTime() / 1000); + modifiedColor=Math.round((Math.round((new Date()).getTime() / 1000)-lastModifiedTime)/60/60/24*5); html+=''+simpleSize+''; - html+=''+lastModified+''; + html+=''+relative_modified_date(lastModified.getTime() / 1000)+''; html+=''; FileList.insertElement(name,'file',$(html)); if(loading){ @@ -37,8 +39,16 @@ FileList={ addDir:function(name,size,lastModified){ var html=''; html+=''+name+''; - html+=''+size+''; - html+=''+lastModified+''; + if(size!='Pending'){ + simpleSize=simpleFileSize(size); + }else{ + simpleSize='Pending'; + } + sizeColor = Math.round(200-Math.pow((size/(1024*1024)),2)); + lastModifiedTime=Math.round(lastModified.getTime() / 1000); + modifiedColor=Math.round((Math.round((new Date()).getTime() / 1000)-lastModifiedTime)/60/60/24*5); + html+=''+simpleSize+''; + html+=''+relative_modified_date(lastModified.getTime() / 1000)+''; html+=''; FileList.insertElement(name,'dir',$(html)); diff --git a/files/js/files.js b/files/js/files.js index cd1689a2dd7..60f2b2aec87 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -62,8 +62,8 @@ $(document).ready(function() { url: 'ajax/newfolder.php', data: "dir="+$('#dir').val()+"&foldername="+$('#file_newfolder_name').val(), complete: function(data){boolOperationFinished(data, function(){ - var date=formatDate(new Date()); - FileList.addDir($('#file_newfolder_name').val(),'0 B',date) + var date=new Date(); + FileList.addDir($('#file_newfolder_name').val(),0,date) });} }); $('#file_newfolder_submit').fadeOut(250).trigger('vanish'); @@ -175,14 +175,13 @@ $(document).ready(function() { }); form.submit(); var date=new Date(); - var uploadTime=formatDate(date); for(var i=0;i0){ var size=files[i].size; }else{ var size='Pending'; } - FileList.addFile(files[i].name,size,uploadTime,true); + FileList.addFile(files[i].name,size,date,true); } //clone the upload form and hide the new one to allow users to start a new upload while the old one is still uploading @@ -416,3 +415,25 @@ function getSelectedFiles(property){ }); return files; } + +function relative_modified_date(timestamp) { + var timediff = Math.round((new Date()).getTime() / 1000) - timestamp; + var diffminutes = Math.round(timediff/60); + var diffhours = Math.round(diffminutes/60); + var diffdays = Math.round(diffhours/24); + var diffmonths = Math.round(diffdays/31); + var diffyears = Math.round(diffdays/365); + if(timediff < 60) { return 'seconds ago'; } + else if(timediff < 120) { return '1 minute ago'; } + else if(timediff < 3600) { return diffminutes+' minutes ago'; } + //else if($timediff < 7200) { return '1 hour ago'; } + //else if($timediff < 86400) { return $diffhours.' hours ago'; } + else if(timediff < 86400) { return 'today'; } + else if(timediff < 172800) { return 'yesterday'; } + else if(timediff < 2678400) { return diffdays+' days ago'; } + else if(timediff < 5184000) { return 'last month'; } + //else if($timediff < 31556926) { return $diffmonths.' months ago'; } + else if(timediff < 31556926) { return 'months ago'; } + else if(timediff < 63113852) { return 'last year'; } + else { return diffyears+' years ago'; } +} From c15db76aa0d86f68242b01e06f982e0ca782fbee Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Fri, 29 Jul 2011 01:16:30 +0200 Subject: [PATCH 34/40] icons for music and images --- core/img/mimetypes/image.png | Bin 0 -> 284 bytes core/img/mimetypes/music.png | Bin 0 -> 562 bytes files/img/drop-arrow.png | Bin 2899 -> 0 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 core/img/mimetypes/image.png create mode 100644 core/img/mimetypes/music.png delete mode 100644 files/img/drop-arrow.png diff --git a/core/img/mimetypes/image.png b/core/img/mimetypes/image.png new file mode 100644 index 0000000000000000000000000000000000000000..06d4024fa23223c190bd38c5fb72df4f8f85b447 GIT binary patch literal 284 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2?p zUk71ECym(^Ktah8*NBqf{Irtt#G+J&^73-M%)IR4A?J_=3=(*BeDY_4qkmXtj;ck;ck4??$Z?&y9i;JCcL-`=<; z*lS^Gj__aJMuwip6=uiYOnGDcyhe!O{olHI&u6#w8Om*AslD&L_Uj5kp2Hs+zVo`c z9R74NqG8?ZD@{{3GF*E#f1^?TCZ}!(hB?LFUN2V(wg^n~HSoR6T5w9>dzALG=eaeE Y|EI}j%s1YC6X-|=Pgg&ebxsLQ0K{i(SpWb4 literal 0 HcmV?d00001 diff --git a/core/img/mimetypes/music.png b/core/img/mimetypes/music.png new file mode 100644 index 0000000000000000000000000000000000000000..6333b947f07c7e4b896639213eea4234defb121e GIT binary patch literal 562 zcmV-20?qx2P)PTDY6-DDcCR?XMpN94c*&~wU|_y^Z+^@x zCNv(85u{3`5(4mnF}6LM&9(t#=ks|6Ko-Ey(P(r60O6p^^?LnSlB7?vEUSv5$dO1y zUY76sK7iGLLZR?Q)3hx@2nl>1Ac;+2AdyJK8DoS}3Q8#$WAjWV^Q%^?O~si|;0p*L zApq$0dUu9lc*SDTRTO0k;L*12v*m0cARPX4>^ROh0FMBkIOqOfZ!7)qr-podsZ)%jJJUj^penlgaPVXf(RALZ{O?jKyL{ zs;a7QL%Ob?rc$YoVpdi4_d7r?m-`xz#|<%SnzjfThOy&$-U3*yRv#91#U`K6CkY`C ztI=rO3$NSl-s-yUrqgM!*=#=a`~6Gdg~V@kUH4)z7#v8F^kSOk)VA&O$z*Z`0G4I# z0%!xE0EV3N>vsUlvi1Oc2Jj5v2Y?&S`7<`?6||IPzX`s{4gdfE07*qoM6N<$f?yZ% AvH$=8 literal 0 HcmV?d00001 diff --git a/files/img/drop-arrow.png b/files/img/drop-arrow.png deleted file mode 100644 index 315395d5d4240bb8c2372e92f0af90ce0c9450b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2899 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 From b88e5ce9a1af81604eec0a5a03d2d1a0428cb693 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Fri, 29 Jul 2011 01:19:09 +0200 Subject: [PATCH 35/40] added icon to media app --- apps/media/img/media.png | Bin 0 -> 562 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 apps/media/img/media.png diff --git a/apps/media/img/media.png b/apps/media/img/media.png new file mode 100644 index 0000000000000000000000000000000000000000..6333b947f07c7e4b896639213eea4234defb121e GIT binary patch literal 562 zcmV-20?qx2P)PTDY6-DDcCR?XMpN94c*&~wU|_y^Z+^@x zCNv(85u{3`5(4mnF}6LM&9(t#=ks|6Ko-Ey(P(r60O6p^^?LnSlB7?vEUSv5$dO1y zUY76sK7iGLLZR?Q)3hx@2nl>1Ac;+2AdyJK8DoS}3Q8#$WAjWV^Q%^?O~si|;0p*L zApq$0dUu9lc*SDTRTO0k;L*12v*m0cARPX4>^ROh0FMBkIOqOfZ!7)qr-podsZ)%jJJUj^penlgaPVXf(RALZ{O?jKyL{ zs;a7QL%Ob?rc$YoVpdi4_d7r?m-`xz#|<%SnzjfThOy&$-U3*yRv#91#U`K6CkY`C ztI=rO3$NSl-s-yUrqgM!*=#=a`~6Gdg~V@kUH4)z7#v8F^kSOk)VA&O$z*Z`0G4I# z0%!xE0EV3N>vsUlvi1Oc2Jj5v2Y?&S`7<`?6||IPzX`s{4gdfE07*qoM6N<$f?yZ% AvH$=8 literal 0 HcmV?d00001 From 19d81add3d847da063986b969b1d259de2e897d4 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Fri, 29 Jul 2011 01:27:02 +0200 Subject: [PATCH 36/40] remove legacy styles --- files/css/files.css | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/files/css/files.css b/files/css/files.css index d79e75468a5..328eaa40f50 100644 --- a/files/css/files.css +++ b/files/css/files.css @@ -31,22 +31,6 @@ table td.filename a, table td.login, table td.logout, table td.download, table t table td.filename .nametext, .modified { float:left; padding:.3em 0; } table td.filename .nametext { width:80%; } table td.filename form { float:left; font-size:.85em; } -table td.filename a.folder-up { background-image:url('../img/back.png'); font-style:italic; } -table td.filename a.folder { background-image:url('../img/folder.png'); } -table td.filename a.folder-home { background-image:url('../img/home.png'); } -table td.filename a.folder-music { background-image:url('../img/folder-music.png'); } -table td.filename a.folder-videos { background-image:url('../img/folder-video.png'); } -table td.filename a.folder-shared { background-image:url('../img/folder-shared.png'); } -table td.filename a.folder-images { background-image:url('../img/folder-image.png'); } -table td.filename a.file-txt { background-image:url('../img/file-txt.png'); } -table td.filename a.file-python { background-image:url('../img/file-python.png'); } -table td.filename a.file-php { background-image:url('../img/file.png'); } -table td.login { background-image:url('../img/login.png'); } -table td.logout { background-image:url('../img/logout.png'); } -table td.download { background-image:url('../img/download.png'); } -table td.upload { background-image:url('../img/upload.png'); } -table td.create { background-image:url('../img/folder-new.png'); } -table td.delete { background-image:url('../img/delete.png'); } #fileList tr input[type=checkbox] { display:none; float:left; margin:.7em 0 0 1em; /* bigger clickable area doesn’t work in FF width:2.8em; height:2.4em;*/ } #fileList tr input[type=checkbox]:checked, #fileList tr:hover input[type=checkbox] { display:inline; } #fileList tr.selected td.filename a, #fileList tr:hover td.filename a { background-image:none !important } From dbcebba8826be76eca141a28c29b4dd8d051291f Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Fri, 29 Jul 2011 01:33:03 +0200 Subject: [PATCH 37/40] show media icon in settings as well --- apps/media/appinfo/app.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/media/appinfo/app.php b/apps/media/appinfo/app.php index 22cb10d7897..a41e228be4a 100644 --- a/apps/media/appinfo/app.php +++ b/apps/media/appinfo/app.php @@ -29,5 +29,5 @@ if(OC_APP::getCurrentApp()=='files'){ OC_APP::register( array( 'order' => 3, 'id' => 'media', 'name' => 'Media' )); OC_APP::addNavigationEntry( array( 'id' => 'media_index', 'order' => 2, 'href' => OC_HELPER::linkTo( 'media', 'index.php' ), 'icon' => OC_HELPER::imagePath( 'media', 'media.png' ), 'name' => 'Media' )); -OC_APP::addSettingsPage( array( 'id' => 'media_settings', 'order' => 5, 'href' => OC_HELPER::linkTo( 'media', 'settings.php' ), 'name' => 'Media', 'icon' => OC_HELPER::imagePath( 'files', 'media.png' ))); +OC_APP::addSettingsPage( array( 'id' => 'media_settings', 'order' => 5, 'href' => OC_HELPER::linkTo( 'media', 'settings.php' ), 'name' => 'Media', 'icon' => OC_HELPER::imagePath( 'media', 'media.png' ))); ?> From 6d0c8ea7e4c15e2a4072e0951eac3c0f64b2fbdc Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Fri, 29 Jul 2011 01:36:31 +0200 Subject: [PATCH 38/40] use proper file icons for image and audio files --- core/img/mimetypes/{music.png => audio.png} | Bin files/js/filelist.js | 3 ++- files/js/files.js | 9 +++++++++ lib/helper.php | 5 +++++ 4 files changed, 16 insertions(+), 1 deletion(-) rename core/img/mimetypes/{music.png => audio.png} (100%) diff --git a/core/img/mimetypes/music.png b/core/img/mimetypes/audio.png similarity index 100% rename from core/img/mimetypes/music.png rename to core/img/mimetypes/audio.png diff --git a/files/js/filelist.js b/files/js/filelist.js index 252a9c95807..a53ad672e42 100644 --- a/files/js/filelist.js +++ b/files/js/filelist.js @@ -96,7 +96,8 @@ FileList={ }, loadingDone:function(name){ $('tr[data-file="'+name+'"]').data('loading',false); - $('tr[data-file="'+name+'"] td.filename a').attr('style','background-image:url(img/file.png'); + var mime=$('tr[data-file="'+name+'"]').data('mime'); + $('tr[data-file="'+name+'"] td.filename a').attr('style','background-image:url('+getMimeIcon(mime)+')'); $('tr[data-file="'+name+'"] td.filename').draggable(dragOptions); }, isLoading:function(name){ diff --git a/files/js/files.js b/files/js/files.js index 60f2b2aec87..193c740b6c5 100644 --- a/files/js/files.js +++ b/files/js/files.js @@ -437,3 +437,12 @@ function relative_modified_date(timestamp) { else if(timediff < 63113852) { return 'last year'; } else { return diffyears+' years ago'; } } + +function getMimeIcon(mime){ + mime=mime.substr(0,mime.indexOf('/')); + var knownMimes=['image','audio']; + if(knownMimes.indexOf(mime)==-1){ + mime='file'; + } + return OC.imagePath('core','mimetypes/'+mime+'.png'); +} \ No newline at end of file diff --git a/lib/helper.php b/lib/helper.php index 1fbcc589d10..ffb25877433 100755 --- a/lib/helper.php +++ b/lib/helper.php @@ -110,6 +110,11 @@ class OC_HELPER { if( file_exists( "$SERVERROOT/core/img/mimetypes/$mimetype.png" )){ return "$WEBROOT/core/img/mimetypes/$mimetype.png"; } + //try only the first part of the mimetype + $mimetype=substr($mimetype,0,strpos($mimetype,'-')); + if( file_exists( "$SERVERROOT/core/img/mimetypes/$mimetype.png" )){ + return "$WEBROOT/core/img/mimetypes/$mimetype.png"; + } else{ return "$WEBROOT/core/img/mimetypes/file.png"; } From 03713ede032a6fced5ab24d918d424c7585a355e Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Fri, 29 Jul 2011 01:42:08 +0200 Subject: [PATCH 39/40] updated ownCloud icon and position --- core/css/styles.css | 2 +- core/img/owncloud-logo-small-white.png | Bin 5339 -> 3550 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/core/css/styles.css b/core/css/styles.css index 35b65f9480d..48a36734e52 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -2,7 +2,7 @@ body { background:#fefefe url('../img/body_background.jpg') repeat-y left top; font:normal 80%/1.6em "Lucida Grande", Arial, Verdana, sans-serif; color:#000; } #header { position:fixed; top:0; z-index:100; width:100%; height:2.5em; padding:0.5em 1.5em; background:#1d2d44; -moz-box-shadow:0 0 10px #000, inset 0 -2px 10px #222; -webkit-box-shadow:0 0 10px #000, inset 0 -2px 10px #222; box-shadow:0 0 10px #000, inset 0 -2px 10px #222; } #body-settings #header { background:#313131; } -#owncloud { float:left; margin:0 0 0 2em; } +#owncloud { float:left; } h1 { margin:1em 3em 1em 0; border-bottom:1px solid #666; text-transform:uppercase; font-weight:normal; font-style:italic; color:#666; } p.center { text-align:center; } a { color:#000; text-decoration:none; outline:0; } diff --git a/core/img/owncloud-logo-small-white.png b/core/img/owncloud-logo-small-white.png index 8374c1335065ce58577b1dc63a144dac5ae5079e..c0d8a92d83361509b0364f730aa24a072ede9170 100644 GIT binary patch literal 3550 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 YKN0+wBgq;vG5`Po07*qoM6N<$g7SO$*#H0l literal 5339 zcmWky2{@Ep6ux7ZbtGhOB0@3Q`z_H(CXppFmaHTDPO?q=YUM&{$%U|NFo1x!--Bd%t_1bI$Xg^PY3!ZkQNy9TPqV0N^sZiZX}hWN1jSu|VI- zdXH9UVsXA^hyq9dzb{&fQlS-g|Eo4Z0B{`tf51T2b0KJvHQ4C70qZ2Ih~O#V<@?9W z0pP!5gwnITJF#vT6)b8Uax_iHhWQv&*H$Y`9!pW(4ONgXVVAmuW{6|B|7(cvtJIFi zaeW+LE1IW}|Esu0Z6s4*mc9rZB$qjx%JpeJOTUGehyhNifM_wR7OI5Yd>dJD1*MM@T8hwvil$4Zo6?G>%`Y$JZ zoaF^qy8|}5mP85(u-xMo7OSvDS6^vyu+B8T!gvY#U8Zn2A`!_82Y9|gOZ3@0 zWr7*|A4W$<=~hBZb!=Ll&M6TQ5zJt5aj`KYJalJeB!uI+sb&)Gy%HxgjyJ{gUOJ5T zLJ$VUsoYi%iD$?cDZiWT7pc`=VpUp^lbIQ=6rZ1yc*W%{rpy7Ut{!#_$MeXkzPOZt zbS3EhkaRJ|cuhNE`BDa9?GJc#WFK>jp+{CjPBgtgL64EjaM?32v#L|3k-;Ue#NdmG zN}PFu219Dy0lbf#uAJG%FErWwTk!IF^ep^o6J7S(T1_M;HFG0!z!waJUWZOVGH_=YfGP z2}+!-&*>70gsZT2U&MhlF8G70LH`;rymr(Lao`8nKZnK3kWN z60H{%Y*A<)e$&vfTSB=;K|x`2Wu(;2Z6f!<-15rGR{&|L2(vRn(G_m6tSzJ>u}|@% zFeUU^LoaQ8RG!-+q;4|ubuzw@fXu=lLj_kL7xOGih86Q=4>&|VsG~l@9L-CHrGExC zqM){;9VGj)ZY(M4fD*ucwM|4!UF=ni8UsAXqQvqYL;G=4t&}&G zas%k|OPO^gC1)XZ1NN700+SjK0UghgCKBnH7b(k9?!?CWdg7;_zr5m>*3I}kFI|l_ z&9FJ?ash%K1wJ&A?h~w#pX_`LccDuKFMAHLceXIv6g7bCx{Fy=WE?9@%VNRptdiA# zh*(dJDSPGQQ)hi=!Q)4CvReFCU~V+WYlik}NzU{;oXM zM@?J%vlqGi8Ke{zyA`F|&=Wp>$15<&A6hLEvFR1Qtnv~cc?7FtidicL$e=SGrtw`Q2)CtJiLGs zo|loE>u|yVUUs`J8U|t|CCMSzU*5PQn36^bx9Fxju=0opqyCM589YcK_-cd$@(NPN~^o>cpYW!!jTb9L|0AaqDt>)Z| z)_?K7f^eVNdAxhVRW`}aelm1O-`$mJkyQ*TV~)oje)!xUsSMuQ zH@!<2ipb5$kp>u)1DN9iGj(Cqnc;H#ru@bA#{J0LfByLg3gE1W55Irc$5osaNLbKF zT3KF>Yiw#NSoEJ1DsWC*qU(f(gqXEBs5=SeLl|G(X)GD>OdF&;GyeoGwK&`s*Q)A* zyo@63;#+;{F23VL09az-?K-jb+KAA0%aLGXh;qHWHV@+&Uzm?eKj7gtOUA1(s=Lj~ zOC$0!Gcz??pr_SRc2;YDi<0wCm^t62YcSW6-MBdRa`LLby}G6z7Z_`c(M@2R%&&l? zV~?6W3IclPiA}wGQ6rqarePeYsI}zpz3y@Pz z_MNCL5w8-T7xZ2@F}4Tx7J2Sq@$c)Kuo45n(FIv)8kJgKTej!aI9 zQ2BmG0dkkG<9t`5>B&>&HZ_kjY#u#&q@u!cQD57sEyMEmvbr8NF}8g4rR?Z%rKz#V~ z=MN+=i=%M6JrHN`H{)f}Ws7yRzkNGzrXk3EsvA0ArnY98p8E}y!&7{lFwaJ;?19dz zhKam?{f(v|ipjCqIe9R{ItK@JpkAW=pIFIydA8W?^mDegBNwNE6_VxxUZh>bI_avY zpxAf+NZ~|aqD-6DfiBFyfl8mY4D{L+l6!bqwHRX#g!Xoi;=2rouk2i`9krd9m~dcmd{tU1FWzGt zEBRXz=Vxkc{9H`=5%X&smP*5e8;EaHGoz!S@*u!|Z|ZfQA6M)gM`)$uJHiZ1l8|5Q zN!7+;A&^+4UoU6aGzUfM4cXZc^drD5!)E-yX>7>>0epavnCMnJ8iu5mHP~&?`T$iG z@zmy{fiquYwo1RVw}e3ocCiMv@DR1V8+?(=r9U~%yh6Qe`-)jGY4iY#$Qr_!j>qYW zlchsxV@E7oCE~9FFLqkVTLJ=pv)A`e0)X&C^BG_6Pd6k+J zGGI1Cy|ezQ@ePq-(~caK>XvTI%jCJYG3^2T?e}uPD6`(CXVdQw9SPIDW1RcQbLCeG z-V12RFw`@(Kg^}{E-fv+`TpHWCU3APY;8<0mlDO){+vpWN$=?v?fWePHw#sm<#E&? z_C@KiF}S$`+Ji)YQF(y(*C9!$vgmJrdMRsu>k-cklvIwvItzBUIaDa73$N2pb6)mz z?)ZJ*7Nq%1MuT<8(k!g3*MHRoS7r01B!c=|3Ik&nG{jf33N|1kPjuD5TLa=3bGc`t zSni_NuXSK^qq6Zol$yhFX(48&LM~&A51wXP3AvPCEBZ!x>~#0F`AWZRyzuC>*3B8i z?oxBFLrrWh^JX+%o|9y(;RjI5!563RsGQ*uyI5ORSokw{x+$!vLn&>f)Y`(&&rgfd zdg7{d=IQvuLpc!CKc&=FzvXFC^eyw>%7L+0%ZQ#lbX_NzN$*L3eb|S+LoZmQdvNe} zp>3US8AJQ#W@SOz1*p>NwKMawV4*u;Ti@J}gnT>ovVCNTE<}@-o>~kUateFF3%d%$rvcuy7t+7(@MJ$aGgv&sDk9-i&)KCULhv zc=M)+8L};Qi$@sqaB-PgTa$edfi3eI0WgKyRAFjI$)sYC99-Mm-av@156`qlm-(m& z=lS~i>E8A_yqz@v>UfmF^+S(I0eDKFsG)(`w&MEwy2MvZ%+T)bYjzT*S%59>YMQx6 z*^XG!{8TaNZ~xlbnn$*}pRf0HqiTGRf*$V_%iN3A#@k{dA_>+bhoHQgA#5OaNetxj z%uV-(M%YL9rJt+mwFljm7VT9}B|lMUpJ>gBu=@LW@n2C#`5Gv3h{U}{-@;cfM6)?s zyu5MO4I;0CTMB_OF-HoxQiBDNhx$(KA=8gm8&fFZPF1&DXZNT;>1p534e^sFjcj)J z0j>?YD)I2}@a1Zw+5gn1p>Zd2_DBimQ)0P7{joVsYt9D4k+W^5MzyxIb14s7sckTv z3?hv25>%Zz-4hlSwd21vJv~j;@t}zZT+zUv}^V67G^niFRBQ0LEL_a3?}Tl>W%#WV8mGzU>{>;-}1H`J>Muba3UEvfV(y z6P~*#ZcB`hoV9MS^Bwk`X`Ip$}?&SJh$T;iT>HH(f{EFbP zFu~VFMbk>0x?FQwF8!VeVfV%4kg%|$?9XD}7rKJqLVokss?^?>(D0?TN4QVi4RoNk zbAm4(?s%)&o)bv$R<3NclnYT4PTZS_G#c<72k>V=tG_>wy0OvPedXqxiVD-@#6%L3 z#thVK5^1N&Au$3({(JZCNwG16+N%%n9-YDoG6<0|G3P=V^?2<#=lDS@gx>4v8nKeM z7%$0WEE`$L@?$bIN#V4`OxK9#%sF|t-rTz}?C4-0$P#v?qOP!55xX;LHA`fl%I^R}cGc+_L5}cuah(?Od z6$F_kb*-KxvojPq8yF=uN#yHnrIr@;NJ#`lLmevq)q=uY;vnT_Bz<^0scD6FgwX3^3BwxQjz$t*8SKREB$y;v$ zxUYu?3=Dg!&Nr4j_&!z6Bz$tc@QS1suoKm=i}hErULZ1j2_$oJaSc7<5*bUs`zl-& zf=g~*o^@(!s-fjb)GWnPj->G(Dl`==`t6uzCP-fMzc`RJYm;@<;-e}nojhyQ#{hoe zBFQX{lD3reK}tios>${10g?arS1cA3t-L$AsZ+@b;f5u=6@Rj}Z7PqLH?VFTiC>6u QP#Y2$8JM8T^&MmX1L(OF=>Px# From ebec36f19019f04d4994ab5980c54208c035a964 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Fri, 29 Jul 2011 01:53:29 +0200 Subject: [PATCH 40/40] better image icon --- core/img/mimetypes/image.png | Bin 284 -> 303 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/core/img/mimetypes/image.png b/core/img/mimetypes/image.png index 06d4024fa23223c190bd38c5fb72df4f8f85b447..3dda2729bc996a5883d9cd68a5efdee99be585f0 100644 GIT binary patch delta 201 zcmV;)05<=e033Pya*+0egz)L(?>uaU2gNNC@%j`@UTXj4>x7;ym`P zl+rPqKq*y(0f3oRRzO5G{8Ba_q?G#v%vB$33;r*>1>XC62|}{go;L+C#YuSPf3iZ0KraBCb4yC;su6?`mQ65C k(*