mirror of
https://github.com/slawkens/myaac.git
synced 2025-04-26 17:29:21 +02:00
Use local storage for saving menu items
Fixes a bug when visiting with browser: www.wykop.pl, and then navigating back to myaac (browser freeze)
This commit is contained in:
parent
98bd51436b
commit
bca098e074
@ -23,6 +23,7 @@ if(isset($config['boxes']))
|
||||
<?php endif; ?>
|
||||
|
||||
<script type="text/javascript">
|
||||
var menus = '';
|
||||
var loginStatus="<?php echo ($logged ? 'true' : 'false'); ?>";
|
||||
<?php
|
||||
if(PAGE !== 'news') {
|
||||
@ -112,8 +113,8 @@ if(isset($config['boxes']))
|
||||
}
|
||||
}
|
||||
|
||||
var menu = new Array();
|
||||
menu[0] = new Object();
|
||||
var menu = [];
|
||||
menu[0] = {};
|
||||
var unloadhelper = false;
|
||||
|
||||
// load the menu and set the active submenu item by using the variable 'activeSubmenuItem'
|
||||
@ -121,8 +122,9 @@ if(isset($config['boxes']))
|
||||
{
|
||||
document.getElementById("submenu_"+activeSubmenuItem).style.color = "white";
|
||||
document.getElementById("ActiveSubmenuItemIcon_"+activeSubmenuItem).style.visibility = "visible";
|
||||
if(self.name.lastIndexOf("&") == -1) {
|
||||
self.name = "news=1&account=0&community=0&library=0&forum=0<?php if($config['gifts_system']) echo '&shops=0'; ?>&";
|
||||
menus = localStorage.getItem('menus');
|
||||
if(menus.lastIndexOf("&") === -1) {
|
||||
menus = "news=1&account=0&community=0&library=0&forum=0<?php if($config['gifts_system']) echo '&shops=0'; ?>&";
|
||||
}
|
||||
FillMenuArray();
|
||||
InitializeMenu();
|
||||
@ -139,13 +141,13 @@ if(isset($config['boxes']))
|
||||
// store the values of the variable 'self.name' in the array menu
|
||||
function FillMenuArray()
|
||||
{
|
||||
while(self.name.length > 0 ){
|
||||
var mark1 = self.name.indexOf("=");
|
||||
var mark2 = self.name.indexOf("&");
|
||||
var menuItemName = self.name.substr(0, mark1);
|
||||
menu[0][menuItemName] = self.name.substring(mark1 + 1, mark2);
|
||||
self.name = self.name.substr(mark2 + 1, self.name.length);
|
||||
}
|
||||
while(menus.length > 0 ){
|
||||
var mark1 = menus.indexOf("=");
|
||||
var mark2 = menus.indexOf("&");
|
||||
var menuItemName = menus.substr(0, mark1);
|
||||
menu[0][menuItemName] = menus.substring(mark1 + 1, mark2);
|
||||
menus = menus.substr(mark2 + 1, menus.length);
|
||||
}
|
||||
}
|
||||
|
||||
// hide or show the corresponding submenus
|
||||
@ -167,16 +169,17 @@ if(isset($config['boxes']))
|
||||
}
|
||||
}
|
||||
|
||||
// reconstruct the variable "self.name" out of the array menu
|
||||
function SaveMenuArray()
|
||||
{
|
||||
var stringSlices = "";
|
||||
var temp = "";
|
||||
for(menuItemName in menu[0]) {
|
||||
stringSlices = menuItemName + "=" + menu[0][menuItemName] + "&";
|
||||
temp = temp + stringSlices;
|
||||
}
|
||||
self.name = temp;
|
||||
var stringSlices = "";
|
||||
var temp = "";
|
||||
|
||||
for(menuItemName in menu[0]) {
|
||||
stringSlices = menuItemName + "=" + menu[0][menuItemName] + "&";
|
||||
temp = temp + stringSlices;
|
||||
}
|
||||
|
||||
localStorage.setItem('menus', temp);
|
||||
}
|
||||
|
||||
// onClick open or close submenus
|
||||
|
Loading…
x
Reference in New Issue
Block a user