diff --git a/mod/settings.php b/mod/settings.php index 37498a0dd..314b99ba7 100644 --- a/mod/settings.php +++ b/mod/settings.php @@ -279,7 +279,7 @@ function settings_post(&$a) { return; } - if(($a->argc > 1) && ($a->argv[1] === 'features')) { + if (($a->argc > 1) && ($a->argv[1] === 'features')) { check_form_security_token_redirectOnErr('/settings/features', 'settings_features'); foreach($_POST as $k => $v) { if(strpos($k,'feature_') === 0) { @@ -290,49 +290,50 @@ function settings_post(&$a) { return; } - if(($a->argc > 1) && ($a->argv[1] === 'display')) { - + if (($a->argc > 1) && ($a->argv[1] === 'display')) { check_form_security_token_redirectOnErr('/settings/display', 'settings_display'); - $theme = ((x($_POST,'theme')) ? notags(trim($_POST['theme'])) : $a->user['theme']); - $mobile_theme = ((x($_POST,'mobile_theme')) ? notags(trim($_POST['mobile_theme'])) : ''); - $nosmile = ((x($_POST,'nosmile')) ? intval($_POST['nosmile']) : 0); - $first_day_of_week = ((x($_POST,'first_day_of_week')) ? intval($_POST['first_day_of_week']) : 0); - $noinfo = ((x($_POST,'noinfo')) ? intval($_POST['noinfo']) : 0); - $infinite_scroll = ((x($_POST,'infinite_scroll')) ? intval($_POST['infinite_scroll']) : 0); - $no_auto_update = ((x($_POST,'no_auto_update')) ? intval($_POST['no_auto_update']) : 0); - $browser_update = ((x($_POST,'browser_update')) ? intval($_POST['browser_update']) : 0); + $theme = x($_POST, 'theme') ? notags(trim($_POST['theme'])) : $a->user['theme']; + $mobile_theme = x($_POST, 'mobile_theme') ? notags(trim($_POST['mobile_theme'])) : ''; + $nosmile = x($_POST, 'nosmile') ? intval($_POST['nosmile']) : 0; + $first_day_of_week = x($_POST, 'first_day_of_week') ? intval($_POST['first_day_of_week']) : 0; + $noinfo = x($_POST, 'noinfo') ? intval($_POST['noinfo']) : 0; + $infinite_scroll = x($_POST, 'infinite_scroll') ? intval($_POST['infinite_scroll']) : 0; + $no_auto_update = x($_POST, 'no_auto_update') ? intval($_POST['no_auto_update']) : 0; + $bandwidth_saver = x($_POST, 'bandwidth_saver') ? intval($_POST['bandwidth_saver']) : 0; + $browser_update = x($_POST, 'browser_update') ? intval($_POST['browser_update']) : 0; if ($browser_update != -1) { - $browser_update = $browser_update * 1000; + $browser_update = $browser_update * 1000; if ($browser_update < 10000) $browser_update = 10000; } - $itemspage_network = ((x($_POST,'itemspage_network')) ? intval($_POST['itemspage_network']) : 40); - if($itemspage_network > 100) + $itemspage_network = x($_POST,'itemspage_network') ? intval($_POST['itemspage_network']) : 40; + if ($itemspage_network > 100) { $itemspage_network = 100; - $itemspage_mobile_network = ((x($_POST,'itemspage_mobile_network')) ? intval($_POST['itemspage_mobile_network']) : 20); - if($itemspage_mobile_network > 100) + } + $itemspage_mobile_network = x($_POST,'itemspage_mobile_network') ? intval($_POST['itemspage_mobile_network']) : 20; + if ($itemspage_mobile_network > 100) { $itemspage_mobile_network = 100; - + } if($mobile_theme !== '') { set_pconfig(local_user(),'system','mobile_theme',$mobile_theme); } - set_pconfig(local_user(),'system','update_interval', $browser_update); - set_pconfig(local_user(),'system','itemspage_network', $itemspage_network); - set_pconfig(local_user(),'system','itemspage_mobile_network', $itemspage_mobile_network); - set_pconfig(local_user(),'system','no_smilies',$nosmile); - set_pconfig(local_user(),'system','first_day_of_week',$first_day_of_week); - set_pconfig(local_user(),'system','ignore_info',$noinfo); - set_pconfig(local_user(),'system','infinite_scroll',$infinite_scroll); - set_pconfig(local_user(),'system','no_auto_update',$no_auto_update); + set_pconfig(local_user(), 'system', 'update_interval' , $browser_update); + set_pconfig(local_user(), 'system', 'itemspage_network' , $itemspage_network); + set_pconfig(local_user(), 'system', 'itemspage_mobile_network', $itemspage_mobile_network); + set_pconfig(local_user(), 'system', 'no_smilies' , $nosmile); + set_pconfig(local_user(), 'system', 'first_day_of_week' , $first_day_of_week); + set_pconfig(local_user(), 'system', 'ignore_info' , $noinfo); + set_pconfig(local_user(), 'system', 'infinite_scroll' , $infinite_scroll); + set_pconfig(local_user(), 'system', 'no_auto_update' , $no_auto_update); + set_pconfig(local_user(), 'system', 'bandwidth_saver' , $bandwidth_saver); - - if ($theme == $a->user['theme']){ + if ($theme == $a->user['theme']) { // call theme_post only if theme has not been changed - if( ($themeconfigfile = get_theme_config_file($theme)) != null){ + if (($themeconfigfile = get_theme_config_file($theme)) != null) { require_once($themeconfigfile); theme_post($a); } @@ -975,8 +976,11 @@ function settings_content(&$a) { $no_auto_update = get_pconfig(local_user(),'system','no_auto_update'); $no_auto_update = (($no_auto_update===false)? '0': $no_auto_update); // default if not set: 0 + $bandwidth_saver = get_pconfig(local_user(), 'system', 'bandwidth_saver'); + $bandwidth_saver = (($bandwidth_saver === false) ? '0' : $bandwidth_saver); // default if not set: 0 + $theme_config = ""; - if( ($themeconfigfile = get_theme_config_file($theme_selected)) != null){ + if (($themeconfigfile = get_theme_config_file($theme_selected)) != null) { require_once($themeconfigfile); $theme_config = theme_content($a); } @@ -1000,6 +1004,7 @@ function settings_content(&$a) { '$noinfo' => array('noinfo', t("Don't show notices"), $noinfo, ''), '$infinite_scroll' => array('infinite_scroll', t("Infinite scroll"), $infinite_scroll, ''), '$no_auto_update' => array('no_auto_update', t("Automatic updates only at the top of the network page"), $no_auto_update, 'When disabled, the network page is updated all the time, which could be confusing while reading.'), + '$bandwidth_saver' => array('bandwidth_saver', t('Bandwith Saver Mode'), $bandwidth_saver, 'When enabled, embedded content is not displayed on automatic updates, they only show on page reload.'), '$d_tset' => t('General Theme Settings'), '$d_ctset' => t('Custom Theme Settings'), @@ -1347,4 +1352,3 @@ function settings_content(&$a) { return $o; } - diff --git a/mod/update_community.php b/mod/update_community.php index 512629b00..d5df7ba3b 100644 --- a/mod/update_community.php +++ b/mod/update_community.php @@ -2,7 +2,7 @@ // See update_profile.php for documentation -require_once('mod/community.php'); +require_once("mod/community.php"); function update_community_content(&$a) { @@ -10,24 +10,25 @@ function update_community_content(&$a) { echo "\r\n"; echo "
"; - $text = community_content($a,true); - $pattern = "/]*) src=\"([^\"]*)\"/"; - $replace = "'; - $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; - $text = preg_replace($pattern, $replace, $text); + if (get_pconfig(local_user(), "system", "bandwith_saver")) { + $replace = "
".t("[Embedded content - reload page to view]")."
"; + $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; + $text = preg_replace($pattern, $replace, $text); + } - echo str_replace("\t",' ',$text); + echo str_replace("\t", " ", $text); echo "
"; echo "\r\n"; killme(); - } \ No newline at end of file diff --git a/mod/update_display.php b/mod/update_display.php index 25b0f7792..bd2a52934 100644 --- a/mod/update_display.php +++ b/mod/update_display.php @@ -2,12 +2,12 @@ // See update_profile.php for documentation -require_once('mod/display.php'); -require_once('include/group.php'); +require_once("mod/display.php"); +require_once("include/group.php"); function update_display_content(&$a) { - $profile_uid = intval($_GET['p']); + $profile_uid = intval($_GET["p"]); header("Content-type: text/html"); echo "\r\n"; @@ -19,20 +19,20 @@ function update_display_content(&$a) { $replace = "'; - $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; - $text = preg_replace($pattern, $replace, $text); + if (get_pconfig(local_user(), "system", "bandwith_saver")) { + $replace = "
".t("[Embedded content - reload page to view]")."
"; + $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; + $text = preg_replace($pattern, $replace, $text); + } - - echo str_replace("\t",' ',$text); + echo str_replace("\t", " ", $text); echo ""; echo "\r\n"; killme(); - } diff --git a/mod/update_network.php b/mod/update_network.php index 1bf374657..258d03e32 100644 --- a/mod/update_network.php +++ b/mod/update_network.php @@ -2,40 +2,41 @@ // See update_profile.php for documentation -require_once('mod/network.php'); -require_once('include/group.php'); +require_once("mod/network.php"); +require_once("include/group.php"); function update_network_content(&$a) { - $profile_uid = intval($_GET['p']); + $profile_uid = intval($_GET["p"]); header("Content-type: text/html"); echo "\r\n"; echo "
"; - if (!get_pconfig($profile_uid, "system", "no_auto_update") OR ($_GET['force'] == 1)) - $text = network_content($a,$profile_uid); - else + if (!get_pconfig($profile_uid, "system", "no_auto_update") OR ($_GET["force"] == 1)) { + $text = network_content($a, $profile_uid); + } else { $text = ""; + } $pattern = "/]*) src=\"([^\"]*)\"/"; $replace = "'; - $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; - $text = preg_replace($pattern, $replace, $text); + if (get_pconfig(local_user(), "system", "bandwith_saver")) { + $replace = "
".t("[Embedded content - reload page to view]")."
"; + $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; + $text = preg_replace($pattern, $replace, $text); + } - - echo str_replace("\t",' ',$text); + echo str_replace("\t", " ", $text); echo "
"; echo "\r\n"; killme(); - } diff --git a/mod/update_notes.php b/mod/update_notes.php index 6b8fff511..ee9d1d71f 100644 --- a/mod/update_notes.php +++ b/mod/update_notes.php @@ -1,17 +1,15 @@ \r\n"; @@ -20,37 +18,35 @@ function update_notes_content(&$a) { /** * - * Grab the page inner contents by calling the content function from the profile module directly, - * but move any image src attributes to another attribute name. This is because + * Grab the page inner contents by calling the content function from the profile module directly, + * but move any image src attributes to another attribute name. This is because * some browsers will prefetch all the images for the page even if we don't need them. * The only ones we need to fetch are those for new page additions, which we'll discover * on the client side and then swap the image back. * */ - $text = notes_content($a,$profile_uid); + $text = notes_content($a, $profile_uid); $pattern = "/]*) src=\"([^\"]*)\"/"; $replace = "'; - $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; - $text = preg_replace($pattern, $replace, $text); + if (get_pconfig(local_user(), "system", "bandwith_saver")) { + $replace = "
".t("[Embedded content - reload page to view]")."
"; + $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; + $text = preg_replace($pattern, $replace, $text); + } - /** - * reportedly some versions of MSIE don't handle tabs in XMLHttpRequest documents very well - */ - - echo str_replace("\t",' ',$text); + // reportedly some versions of MSIE don't handle tabs in XMLHttpRequest documents very well + echo str_replace("\t", " ", $text); echo ""; echo "\r\n"; killme(); - } \ No newline at end of file diff --git a/mod/update_profile.php b/mod/update_profile.php index 2492a48ee..1bc29d82c 100644 --- a/mod/update_profile.php +++ b/mod/update_profile.php @@ -3,58 +3,49 @@ /** * Module: update_profile * Purpose: AJAX synchronisation of profile page - * */ - -require_once('mod/profile.php'); +require_once("mod/profile.php"); function update_profile_content(&$a) { - $profile_uid = intval($_GET['p']); + $profile_uid = intval($_GET["p"]); header("Content-type: text/html"); echo "\r\n"; - /** - * We can remove this hack once Internet Explorer recognises HTML5 natively - */ - + // We can remove this hack once Internet Explorer recognises HTML5 natively echo "
"; /** - * - * Grab the page inner contents by calling the content function from the profile module directly, - * but move any image src attributes to another attribute name. This is because + * Grab the page inner contents by calling the content function from the profile module directly, + * but move any image src attributes to another attribute name. This is because * some browsers will prefetch all the images for the page even if we don't need them. * The only ones we need to fetch are those for new page additions, which we'll discover * on the client side and then swap the image back. - * */ - $text = profile_content($a,$profile_uid); + $text = profile_content($a, $profile_uid); $pattern = "/]*) src=\"([^\"]*)\"/"; $replace = "'; - $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; - $text = preg_replace($pattern, $replace, $text); - $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; - $text = preg_replace($pattern, $replace, $text); + if (get_pconfig(local_user(), "system", "bandwith_saver")) { + $replace = "
".t("[Embedded content - reload page to view]")."
"; + $pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*embed[^>]*>(.*?)<\s*\/\s*embed>/i"; + $text = preg_replace($pattern, $replace, $text); + $pattern = "/<\s*iframe[^>]*>(.*?)<\s*\/\s*iframe>/i"; + $text = preg_replace($pattern, $replace, $text); + } - /** - * reportedly some versions of MSIE don't handle tabs in XMLHttpRequest documents very well - */ - - echo str_replace("\t",' ',$text); + // reportedly some versions of MSIE don't handle tabs in XMLHttpRequest documents very well + echo str_replace("\t", " ", $text); echo "
"; echo "\r\n"; killme(); - } \ No newline at end of file diff --git a/view/templates/field_checkbox.tpl b/view/templates/field_checkbox.tpl index 06796376b..3d4a4284b 100644 --- a/view/templates/field_checkbox.tpl +++ b/view/templates/field_checkbox.tpl @@ -1,5 +1,6 @@ -
- - - {{$field.3}} +
+ + + + {{$field.3}}
diff --git a/view/templates/settings_display.tpl b/view/templates/settings_display.tpl index 8b15563bd..d6d0a1a81 100644 --- a/view/templates/settings_display.tpl +++ b/view/templates/settings_display.tpl @@ -13,6 +13,7 @@ {{include file="field_checkbox.tpl" field=$nosmile}} {{include file="field_checkbox.tpl" field=$noinfo}} {{include file="field_checkbox.tpl" field=$infinite_scroll}} +{{include file="field_checkbox.tpl" field=$bandwidth_saver}}

{{$calendar_title}}

{{include file="field_select.tpl" field=$first_day_of_week}} diff --git a/view/theme/decaf-mobile/templates/field_checkbox.tpl b/view/theme/decaf-mobile/templates/field_checkbox.tpl index ddcc05aa5..4f094e089 100644 --- a/view/theme/decaf-mobile/templates/field_checkbox.tpl +++ b/view/theme/decaf-mobile/templates/field_checkbox.tpl @@ -1,7 +1,8 @@ - -
- -
- {{$field.3}} + +
+ + +
+ {{$field.3}}
diff --git a/view/theme/frio/templates/field_checkbox.tpl b/view/theme/frio/templates/field_checkbox.tpl index 112208c1d..106226923 100644 --- a/view/theme/frio/templates/field_checkbox.tpl +++ b/view/theme/frio/templates/field_checkbox.tpl @@ -1,6 +1,7 @@ -
- +
+ +