Skip to content

Instantly share code, notes, and snippets.

@oleics
Created May 5, 2011 22:53
Show Gist options
  • Save oleics/958144 to your computer and use it in GitHub Desktop.
Save oleics/958144 to your computer and use it in GitHub Desktop.
$(document).ready(function() {
//$.cookie('mri', null);
var mri_numChilds = $('body').data('numChilds');
var mri_id = mri_numChilds ? $('body').data('id') : $('body').data('pid');
var mri_pid = $('body').data('pid');
var mri_pos = 0;
var mri_max = 5;
var mri = [];
$('#menu-right > div').hide().each(function() {
mri.push($(this));
});
mri_max = mri.length>mri_max?mri_max:mri.length;
var fnMriSave = function() {
var f = false;
try {
var p = $.cookie('mri').split(';');
for(var i=0; i<p.length; i++) {
var q = p[i].split(',');
if(q[0]==mri_id) {
p[i] = mri_id+','+mri_pos;
f = true;
break;
}
}
} catch(e) {
var p = [];
}
if(!f) {
p.push(mri_id+','+mri_pos);
}
$.cookie('mri', p.join(';'));
};
var fnMriLoad = function() {
try {
var p = $.cookie('mri').split(';');
console.log(p);
for(var i=0; i<p.length; i++) {
var q = p[i].split(',');
if(q[0]==mri_id) {
mri_pos = parseInt(q[1]);
break;
}
}
for(var i=0; i<mri_pos; i++) {
mri.push(mri.shift());
}
} catch(e) { }
};
fnMriLoad();
var fnMriUpdate = function() {
for(var i=0; i<mri.length; i++) {
if(i>0) {
mri[i].detach().insertAfter(mri[i-1]);
}
if(i<mri_max) {
mri[i].show();
} else {
mri[i].hide();
}
}
};
fnMriUpdate();
if(mri.length>mri_max) {
$('<div class="grid_h_5 grid_v_1 alpha_h omega_h alpha_v"></div>')
.append(
$('<div class="box_outer"></div>')
.append(
$('<a class="box navi">&#x2B06;</a>')
.bind('click', function(e) {
e.preventDefault();
mri_pos -= 1;
if(mri_pos<0) mri_pos = mri.length-1;
mri.unshift(mri.pop());
fnMriUpdate();
fnMriSave();
})
)
)
.prependTo('#menu-right');
$('<div class="grid_h_5 grid_v_1 alpha_h omega_h omega_v"></div>')
.append(
$('<div class="box_outer"></div>')
.append(
$('<a class="box navi">&#x2B07;</a>')
.bind('click', function(e) {
e.preventDefault();
mri_pos += 1;
if(mri_pos>=mri.length) mri_pos = mri.length-mri_pos;
mri.push(mri.shift());
fnMriUpdate();
fnMriSave();
})
)
)
.appendTo('#menu-right');
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment