Committer: dpetrov
LJSUP-11456: Add link Collapse to Video block on cyr home pageU trunk/htdocs/js/journal.js
Modified: trunk/htdocs/js/journal.js =================================================================== --- trunk/htdocs/js/journal.js 2012-03-28 11:43:12 UTC (rev 21573) +++ trunk/htdocs/js/journal.js 2012-03-28 12:33:21 UTC (rev 21574) @@ -362,23 +362,30 @@ jQuery(document).on('click', '.appwidget-prop-collapsable', function(ev) { if (ev.target.className.indexOf('w-head-status-switch') !== -1) { var videoCollapes = ev.target.className.indexOf('collapse') !== -1, - id = this.id.replace('LJWidget_', ''), + id = this.id.replace('LJWidget_', '') + '-', + fullid = id + this.getAttribute('data-cid'), cookie = Cookie('clpsd') || '', - id_idx = -1; + cookie_ids = cookie ? cookie.split(':') : []; - cookie_ids = cookie ? cookie.split(':') : []; - id_idx = jQuery.inArray(id, cookie_ids); jQuery(this).toggleClass('appwidget-prop-collapsed', videoCollapes); - if (videoCollapes) { - if (id_idx === -1) { - cookie_ids.push(id); + + var found = false; + for (var i = 0; i < cookie_ids.length; ++i) { + if (cookie_ids[i].indexOf(id) !== -1) { + found = true; + if (videoCollapes) { + cookie_ids[i] = fullid; + } else { + cookie_ids.splice(i, 1); + } + break; } - } else { - if (id_idx !== -1) { - cookie_ids.splice(id_idx, 1); - } } + if (!found && videoCollapes) { + cookie_ids.push(fullid); + } + Cookie('clpsd', cookie_ids.length > 0 ? cookie_ids.join(':') : null, { domain: location.host, expires: 30 }); } });