add mobile toggle to frost mobile

This commit is contained in:
Zach Prezkuta 2012-09-12 21:35:51 -06:00
parent 3ea5001bb0
commit e8acdb31bc
5 changed files with 60 additions and 8 deletions

View File

@ -1511,14 +1511,20 @@ if(! function_exists('current_theme')) {
$is_mobile = $mobile_detect->isMobile() || $mobile_detect->isTablet(); $is_mobile = $mobile_detect->isMobile() || $mobile_detect->isTablet();
if($is_mobile) { if($is_mobile) {
$system_theme = ((isset($a->config['system']['mobile-theme'])) ? $a->config['system']['mobile-theme'] : ''); if(isset($_SESSION['show-mobile']) && !$_SESSION['show-mobile']) {
$theme_name = ((isset($_SESSION) && x($_SESSION,'mobile-theme')) ? $_SESSION['mobile-theme'] : $system_theme);
if($theme_name === '---') {
// user has selected to have the mobile theme be the same as the normal one
$system_theme = ''; $system_theme = '';
$theme_name = ''; $theme_name = '';
} }
else {
$system_theme = ((isset($a->config['system']['mobile-theme'])) ? $a->config['system']['mobile-theme'] : '');
$theme_name = ((isset($_SESSION) && x($_SESSION,'mobile-theme')) ? $_SESSION['mobile-theme'] : $system_theme);
if($theme_name === '---') {
// user has selected to have the mobile theme be the same as the normal one
$system_theme = '';
$theme_name = '';
}
}
} }
if(!$is_mobile || ($system_theme === '' && $theme_name === '')) { if(!$is_mobile || ($system_theme === '' && $theme_name === '')) {
$system_theme = ((isset($a->config['system']['theme'])) ? $a->config['system']['theme'] : ''); $system_theme = ((isset($a->config['system']['theme'])) ? $a->config['system']['theme'] : '');
@ -1760,3 +1766,20 @@ function build_querystring($params, $name=null) {
} }
return $ret; return $ret;
} }
/**
* Returns the complete URL of the current page, e.g.: http(s)://something.com/network
*
* Taken from http://webcheatsheet.com/php/get_current_page_url.php
*/
function curPageURL() {
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80" && $_SERVER["SERVER_PORT"] != "443") {
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageURL;
}

17
mod/toggle_mobile.php Normal file
View File

@ -0,0 +1,17 @@
<?php
function toggle_mobile_init(&$a) {
if(isset($_GET['off']))
$_SESSION['show-mobile'] = false;
else
$_SESSION['show-mobile'] = true;
if(isset($_GET['address']))
$address = $_GET['address'];
else
$address = $a->get_baseurl();
goaway($address);
}

View File

@ -21,6 +21,9 @@
<section><?php if(x($page,'content')) echo $page['content']; ?> <section><?php if(x($page,'content')) echo $page['content']; ?>
</section> </section>
</div> </div>
<footer>
<a href="<?php echo $a->get_baseurl() ?>/toggle_mobile?off=1&address=<?php echo curPageURL() ?>">toggle mobile</a>
</footer>
<?php } else { ?> <?php } else { ?>
<div class='main-container'> <div class='main-container'>
@ -33,7 +36,10 @@
</div> </div>
<right_aside><?php if(x($page,'right_aside')) echo $page['right_aside']; ?></right_aside> <right_aside><?php if(x($page,'right_aside')) echo $page['right_aside']; ?></right_aside>
<?php if( ($a->module === 'contacts') && x($page,'aside')) echo $page['aside']; ?> <?php if( ($a->module === 'contacts') && x($page,'aside')) echo $page['aside']; ?>
<footer><?php if(x($page,'footer')) echo $page['footer']; ?></footer> <footer>
<a href="<?php echo $a->get_baseurl() ?>/toggle_mobile?off=1&address=<?php echo curPageURL() ?>">toggle mobile</a>
<?php if(x($page,'footer')) echo $page['footer']; ?>
</footer>
<!-- </div>--> <!-- </div>-->
</div> </div>
<?php } ?> <?php } ?>

View File

@ -152,3 +152,9 @@ div.section-wrapper {
#login-submit-wrapper { #login-submit-wrapper {
text-align: center; text-align: center;
} }
footer {
text-align: center;
padding-top: 3em;
padding-bottom: 1em;
}

View File

@ -393,8 +393,8 @@ section {
/* footer */ /* footer */
footer { footer {
display: none; text-align: center;
padding-bottom: 1em;
} }
.birthday-today, .event-today { .birthday-today, .event-today {