Skip to content
Snippets Groups Projects
Commit f9db4249 authored by Frank Karlitschek's avatar Frank Karlitschek
Browse files

add a formfactor session variable which is autodetected but can also manually...

add a formfactor session variable which is autodetected but can also manually overwritten via a get variable.
currently we have:
         * default -> the normal desktop browser interface
         * mobile -> interface for smartphones
         * tablet -> interface for tablets
         * standalone -> the default interface but without header, footer and sidebar. just the application. useful to use just a specific app on the desktop in a standalone window.
In the future we should adapt the userinterface to the specific formfactor.
parent f18e866a
No related branches found
No related tags found
No related merge requests found
......@@ -70,6 +70,31 @@ class OC{
}
}
/**
* autodetects the formfactor of the used device
* default -> the normal desktop browser interface
* mobile -> interface for smartphones
* tablet -> interface for tablets
* standalone -> the default interface but without header, footer and sidebar. just the application. useful to ue just a specific app on the desktop in a standalone window.
*/
public static function detectFormfactor(){
// please add more useragent strings for other devices
if(isset($_SERVER['HTTP_USER_AGENT'])){
if(stripos($_SERVER['HTTP_USER_AGENT'],'ipad')>0) {
$mode='tablet';
}elseif(stripos($_SERVER['HTTP_USER_AGENT'],'iphone')>0){
$mode='mobile';
}elseif((stripos($_SERVER['HTTP_USER_AGENT'],'N9')>0) and (stripos($_SERVER['HTTP_USER_AGENT'],'nokia')>0)){
$mode='mobile';
}else{
$mode='default';
}
}else{
$mode='default';
}
return($mode);
}
public static function init(){
// register autoloader
spl_autoload_register(array('OC','autoload'));
......@@ -130,6 +155,16 @@ class OC{
ini_set('session.cookie_httponly','1;');
session_start();
// if the formfactor is not yet autodetected do the autodetection now. For possible forfactors check the detectFormfactor documentation
if(!isset($_SESSION['formfactor'])){
$_SESSION['formfactor']=OC::detectFormfactor();
}
// allow manual override via GET parameter
if(isset($_GET['formfactor'])){
$_SESSION['formfactor']=$_GET['formfactor'];
}
// Add the stuff we need always
OC_Util::addScript( "jquery-1.6.4.min" );
OC_Util::addScript( "jquery-ui-1.8.14.custom.min" );
......@@ -214,5 +249,7 @@ if(!function_exists('get_temp_dir')) {
require_once('fakedirstream.php');
// FROM search.php
new OC_Search_Provider_File();
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment