From: <die...@us...> - 2010-02-07 10:20:42
|
Revision: 1832 http://openutils.svn.sourceforge.net/openutils/?rev=1832&view=rev Author: diego_schivo Date: 2010-02-07 10:20:23 +0000 (Sun, 07 Feb 2010) Log Message: ----------- MEDIA-78 Background switcher: load the correct background immediately, don't switch after page loading Modified Paths: -------------- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/js/mediafolderview.js trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html Modified: trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java =================================================================== --- trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2010-02-07 10:19:52 UTC (rev 1831) +++ trunk/openutils-mgnlmedia/src/main/java/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.java 2010-02-07 10:20:23 UTC (rev 1832) @@ -45,6 +45,7 @@ import javax.jcr.RepositoryException; import javax.servlet.ServletException; +import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -773,4 +774,15 @@ return MediaModule.getInstance().isSingleinstance(); } + public String getBgSelector() + { + for (Cookie cookie : request.getCookies()) + { + if ("bgselector".equals(cookie.getName())) + { + return cookie.getValue(); + } + } + return "white"; + } } Modified: trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/js/mediafolderview.js =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/js/mediafolderview.js 2010-02-07 10:19:52 UTC (rev 1831) +++ trunk/openutils-mgnlmedia/src/main/resources/mgnl-resources/media/js/mediafolderview.js 2010-02-07 10:20:23 UTC (rev 1832) @@ -11,19 +11,14 @@ MediaFolderView.BgSelectors = new Class({ initialize: function(selectors){ - this.selectors = $$(selectors); - var cookie = Cookie.read('bgselector'); - var clickHandler = this.handleClick.bindWithEvent(this); - $$(selectors).each(function(item){ - item.addEvent('click', clickHandler); - if (item.hasClass(cookie)) item.fireEvent('click', {stop: $empty, target: item}); - }); + this.selectors = $$(selectors).addEvent('click', this.handleClick.bindWithEvent(this)); + this.previousValue = document.body.className.match(/bg-(\w+)/)[1]; }, handleClick: function(e){ e.stop(); var selector = $(e.target); - var value = selector.className.replace(/^bg-selector\s(.*)(-active)?$/, '$1'); + var value = selector.className.match(/bg-selector\s+(\w+)(-active)?/)[1]; if (value == this.previousValue) return; if (this.previousValue) $(document.body).removeClass('bg-' + this.previousValue); $(document.body).addClass('bg-' + value); Modified: trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html =================================================================== --- trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html 2010-02-07 10:19:52 UTC (rev 1831) +++ trunk/openutils-mgnlmedia/src/main/resources/net/sourceforge/openutils/mgnlmedia/media/pages/MediaFolderViewPage.html 2010-02-07 10:20:23 UTC (rev 1832) @@ -104,7 +104,7 @@ }); </script> </head> - <body id="mediafolderview"> + <body id="mediafolderview" class="bg-${this.bgSelector}"> <form action="" style="display:none" id="actionForm" method="POST"> <input type="hidden" id="actionCmd" name="command" value="delete" /> <input type="hidden" id="actionPath" name="path" value="${this.path!""}" /> @@ -124,13 +124,13 @@ <div id="navigation"> <div id="bgselectorblock"> <div class="voice right"> - <a name="bg-black" href="#" class="bg-selector black" title="${this.msgs.get('media.bgselector.black')}"><!-- --></a> + <a name="bg-black" href="#" class="bg-selector black [#if this.bgSelector == 'black']black-active[/#if]" title="${this.msgs.get('media.bgselector.black')}"><!-- --></a> </div> <div class="voice right"> - <a name="bg-transparent" href="#" class="bg-selector transparent" title="${this.msgs.get('media.bgselector.transparent')}"><!-- --></a> + <a name="bg-transparent" href="#" class="bg-selector transparent [#if this.bgSelector == 'transparent']transparent-active[/#if]" title="${this.msgs.get('media.bgselector.transparent')}"><!-- --></a> </div> <div class="voice right"> - <a name="bg-white" href="#" class="bg-selector white" title="${this.msgs.get('media.bgselector.white')}"><!-- --></a> + <a name="bg-white" href="#" class="bg-selector white [#if this.bgSelector == 'white']white-active[/#if]" title="${this.msgs.get('media.bgselector.white')}"><!-- --></a> </div> </div> [#list this.types as type] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |