diff --git a/css/small.php b/css/small.php new file mode 100644 index 00000000000..3c91614f260 --- /dev/null +++ b/css/small.php @@ -0,0 +1,438 @@ + + +/* css used for devices with small screen such as smartphones */ +html,body { + background-color: #F9F9F9; + margin:0px; + height:100%; + width:100%; + position:absolute; +} +#mainlayout{ + width:100%; + height:100%; +} + +#mainlayout>div{ + position:absolute; + width:100%; + left:0px; +} + +#mainlayout>.head{ + height:24px; + top:0px; +} + +#mainlayout>.body{ + vertical-align:top; + top:24px; + bottom:24px; + overflow:auto; +} + +#mainlayout>.foot{ + height:24px; + bottom:0px; +} + +#mainlayout>.foot>.bar{ + background-color:#EEE; + position:absolute; + top:0px; + height:24px; + width:100%; +} + +body.error {background-color: #F0F0F0;} +td.error{color:#FF0000; text-align:center} +body,th,td,ul,li,a,div,p,pre {color:#333333; font-family:Verdana,"Bitstream Vera Sans",Arial,Helvetica,Sans,"Bitstream Vera Serif"; font-size:9.0pt;} + +a img { + border:none; +} + +h1 { + margin-bottom:1.5em; +} + +.center { + text-align:center; +} + +.center * { + margin-left:auto; + margin-right:auto; +} + +td { + text-align:left; +} + +div#nav { + width:100%; + background-color: #EEEEEE; + padding:0px; + margin:0px; + position:absolute; + bottom:0px; +} + +a#owncloud-logo { + margin-left:auto; + margin-right:auto; + display:block; + width:200px; + height:99px; + background: transparent url(/img/owncloud-logo-small.png) no-repeat scroll 0 0; +} + +a#owncloud-logo span { + display:none; +} + +td.nametext{ + white-space:nowrap; + /*overflow:hidden;*/ + text-overflow: ellipsis; +} +td.nametext>img{ + float:left; + display:box; +} +td.nametext>a{ + display:block; + max-width:95%; + float:left; + overflow:hidden; + text-overflow: ellipsis; +} +.nametext a, .breadcrumb a{color:#333333; font-size:8pt; font-weight:bold; text-decoration:none;} +.errortext {color:#CC3333; font-size:9pt; font-weight:bold; text-decoration:none;} +.highlighttext {color:#333333; font-size:9pt; font-weight:bold; text-decoration:none;} +.datetext {color:#333333; font-size:7pt;} +.sizetext{ + color:#333333; + font-size:7pt; +} +.footer {color:#999999; text-align:center; font-size:9pt; margin-top:4px;} +.footer a {color:#999999; text-decoration:none;} +.hint {color:#AAAAAA; text-align:center; font-size:8pt; margin-top:10px;} +.hint a{color:#AAAAAA; text-align:center; font-size:8pt;} + +.formstyle { + font-weight:normal; + font-size: 8.0pt; + color: #555555; + background-color: #FFFFFF; + border: 1px solid #DDDDDD; + padding:0px; + margin:0px; +} + +.loginform { + background-color: #EEEEEE; +} + +.browser { + width:100%; + table-layout:fixed; + background-color: #EEEEEE; +} + +.browserline { + background-color: #EEEEEE; +} + +.browserline:hover { + background-color: #DDDDDD; +} + + +.navigationitem1 { + background-color: #EEEEEE; + color:#555555; + font-size:9pt; + font-weight:bold; +} + +.navigationitem1 a{ + text-decoration:none; +} + +.navigationitem1 img { + border:none; +} + +.navigationitem1:hover { + background-color: #EEEEEE; +} + +.navigationitem { + background-color: #EEEEEE; +} + +.navigationitem:hover { + background-color: #DDDDDD; +} + +.navigationselected td { + background-color: #DDDDDD; +} + +.navigationitem a { + text-decoration:none; + color: #333333; + font-size: 8.0pt; +} + +.navigationitemselected a { + text-decoration:none; + color: #333333; + font-size: 8.0pt; + font-weight:bold; +} + +.hidden{ + height:0px; + width:0px; + margin:0px; + padding:0px; + border:0px; + position:absolute; + top:0px; + left:0px; + overflow:hidden; + /*do not use display:none here, it breaks iframes in some browsers*/ +} + +div.OCNotification{ + background:#0c285a; + color:white; + border:white solid 1px; + padding:1px; + margin:4px; + min-width:200px; +} +div.OCNotificationHolder{ + right:20px; + bottom:0px; + position:fixed; + color:white; +} + +td img.file_actions{ + cursor:pointer; + height:0px; + width:9px; +} + +td.nametext:hover img.file_actions{ + height:auto; +} + +div.breadcrumb{ + background-color: #F0F0F0; +} + +div.fileactionlist{ + z-index:50; + position:absolute; + background-color: #DDDDDD; + margin-top:5px; + border:1px black solid; +} + +div.fileactionlist td{ + cursor:pointer; +} + +div.fileactionlist td:hover{ + background-color: #CCCCCC; +} + +tr.breadcrumb{ + background-color: #CCCCCC; +} + +#content, div.browser{ + vertical-align:top; + /*min-height:200px;*/ + height:100%; +} + +table.browser{ + border: solid 3px #CCC; + height:100%; + border-spacing:0px; +} + +table.browser thead, table.browser tfoot{ + background-color:#CCC; + width:100%; +} + +td.sizetext{ + width:70px; + float:right; + text-align:right; +} + + +input.fileSelector{ + margin-right:17px; + float:left; +} + +td.fileSelector, td.fileicon{ + width:20px; +} + +span.upload{ + float:right; + text-align:right; + margin:0px; + padding:0px; +} + +table.browser>tbody{ + vertical-align:top; +} + +table.browser>tbody>tr>td, table.browser>tbody>tr{ + padding:0px; + /*height:100%;*/ +} + +div.fileList{ + width:100%; + position:relative; + overflow:hidden; + vertical-align:top; + height:100%; + min-height:150px; + top:0px; +} + +div.fileactionlist table{ + table-layout:auto !important; +} + +div.fileList table{ + width:100%; + table-layout:fixed; + vertical-align:top; +} + +table.browser thead td,table.browser tfoot td{ + padding-left:6px; + padding-top:0px; + padding-bottom:0px; +} + +#imageframe{ + position:absolute; + top:0px; + left:0px; + height:100%; + width:100%; + background:rgb(20,20,20); + background:rgba(20,20,20,0.9); + text-align:center; +} + +#imageframe img{ + vertical-align:middle; + max-height:90%; + max-width:90%; + margin:10px; + border: black solid 3px; +} + +tr.hint, tr.hint td{ + background:transparent; +} + +#debug{ + position:fixed; + bottom:20px; + left:20px; + border:solid 1px black; +} + +.dragClone{ + position:absolute; +} + +div.breadcrumb{ + float:left; + background:transparent; +} + +div.moreActionsButton>p{ + padding:0px; + margin:0px; + width:100%; + height:100%; +} + +div.moreActionsButton{ + background-color:white; + display:inline; + border:1px solid black; + cursor:pointer; + padding-right:10px; + text-align:right; + width:90px; + height:19px; + float:right; + margin-top:2px !important; + right:2px; + position:absolute; + background:#DDD url(/img/arrow_up.png) no-repeat scroll center right; +} + +td.moreActionsButtonClicked{ + background:#DDD url(/img/arrow_down.png) no-repeat scroll center right !important +} + +tr.utilityline{ + height:24px; +} + +td.actionsSelected{ + + +} + +div.moreActionsList{ + background:#EEE; + position:absolute; + bottom:19px; + right:-2px; + border:1px solid black; + text-align:right; + float:right; +} + +div.moreActionsList input{ + +} + +div.moreActionsList>table{ + width:100%; +} + +div.moreActionsList td{ + width:300px; + text-align:right; + padding-top:3px !important; + padding-bottom:3px !important; +} + +div.moreActionsList tr:hover{ + background-color:#DDD; +} \ No newline at end of file diff --git a/inc/lib_base.php b/inc/lib_base.php index b5829c6d999..536024697d7 100755 --- a/inc/lib_base.php +++ b/inc/lib_base.php @@ -206,6 +206,18 @@ class OC_UTIL { global $WEBROOT; oc_require('templates/header.php');; } + + /** + * check if we need to use the layout optimized for smaller screen, currently only checks for iPhone/Android + * @return bool + */ + public static function hasSmallScreen(){ + $userAgent=strtolower($_SERVER['HTTP_USER_AGENT']); + if(strpos($userAgent,'android') or strpos($userAgent,'iphone') or strpos($userAgent,'ipod')){//todo, add support for more devices + return true; + } + return false; + } /** * show the footer of the web GUI diff --git a/inc/templates/footer.php b/inc/templates/footer.php index a7e2aa62052..5206fcb7ad9 100755 --- a/inc/templates/footer.php +++ b/inc/templates/footer.php @@ -3,9 +3,13 @@ global $WEBROOT; ?>
+

Hint: Mount it via webdav like this: ">webdav:///webdav/owncloud.php

+
'); +if(!OC_UTIL::hasSmallScreen()){ + echo('

'); +} // check if already configured. otherwise start configuration wizard diff --git a/js/filebrowser.js b/js/filebrowser.js index 3ec8994c029..9900ce69902 100755 --- a/js/filebrowser.js +++ b/js/filebrowser.js @@ -178,10 +178,14 @@ OC_FILES.browser.files.add=function(name,type,size,date,mime){ a.setAttribute('href','#'+OC_FILES.dir+dirname); }else{ a.setAttribute('href','#'+OC_FILES.dir); - sizeTd=document.createElement('td'); - tr.appendChild(sizeTd); - sizeTd.className='sizetext'; - sizeTd.appendChild(document.createTextNode(sizeFormat(size))); + if(!SMALLSCREEN){ + sizeTd=document.createElement('td'); + tr.appendChild(sizeTd); + sizeTd.className='sizetext'; + sizeTd.appendChild(document.createTextNode(sizeFormat(size))); + }else{ + td.setAttribute('colspan',2); + } } a=document.createElement('a'); var img=document.createElement('img'); @@ -191,10 +195,12 @@ OC_FILES.browser.files.add=function(name,type,size,date,mime){ img.title='actions'; img.src=WEBROOT+'/img/arrow_down.png'; img.addEvent('onclick',OC_FILES.browser.showactions,name); - td=document.createElement('td'); - tr.appendChild(td); - td.className='sizetext'; - td.appendChild(document.createTextNode(date)); + if(!SMALLSCREEN){ + td=document.createElement('td'); + tr.appendChild(td); + td.className='sizetext'; + td.appendChild(document.createTextNode(date)); + } } }