Author: simoneg
Date: Mon Nov  8 16:09:27 2010
New Revision: 1032615

URL: http://svn.apache.org/viewvc?rev=1032615&view=rev
Log:
Batched multiple updates at least for internal content

Added:
    
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxDispatchUtils.java
   (with props)
Modified:
    
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuDispatch.aj
    
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuInternalDispatch.aj
    
labs/magma/trunk/website-autoajax/src/main/resources/org/apache/magma/website/autoajax/autoajax.js

Modified: 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuDispatch.aj
URL: 
http://svn.apache.org/viewvc/labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuDispatch.aj?rev=1032615&r1=1032614&r2=1032615&view=diff
==============================================================================
--- 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuDispatch.aj
 (original)
+++ 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuDispatch.aj
 Mon Nov  8 16:09:27 2010
@@ -80,119 +80,13 @@ public aspect AjaxBuDispatch {
                                )
                        );
                
-               rewrite.setTemplatePrefix("template/" + 
t.getClass().getPackage().getName() + "/");
-               Head head = new Head(rewrite);
-               try {
-                       rewrite.write("<div class='buroot'>");
-                       rewrite.write("<div class='ajaxhead'>");
-                       List<Change> computed = diff.compute();
-                       computed = normalize(computed);
-                       for (Change change : computed) {
-                               renderHead(change, head);
-                       }
-                       head.finished();
-                       rewrite.write("</div>");
-                       rewrite.flush();
-                       
-                       for (Change change : computed) {
-                               renderChange(change, rewrite);
-                       }
-                       rewrite.write("</div>");
-               } catch (Exception e) {
-                       throw new MagmaException(e, "Error writing");
-               }
-       }
-       
-       List<Change> normalize(List<Change> change) {
-               List<Change> ret = new ArrayList<Change>();
-               for (Change acc : change) {
-                       if (acc instanceof ChangeAdd) {
-                               LocalElement element = 
((ChangeAdd)acc).getElement();
-                               if (element instanceof 
InternalHtmlProducerAjaxInfo || element instanceof OrphanHtmlProducerAjaxInfo) {
-                                       ChangeRenew ren = new ChangeRenew();
-                                       
ren.setElement(((CollectedAjaxInfo)element).getParent());
-                                       ret.add(ren);
-                                       continue;
-                               }
-                       }
-                       ret.add(acc);
-               }
-               return ret;
-       }
-       
-       public void renderHead(Change c, Head h) {
-               if (c instanceof ChangeAdd) {
-                       ((ChangeAdd)c).getElement().renderHead(h);
-               } else if (c instanceof ChangeRenew) {
-                       ((ChangeRenew)c).getElement().renderHead(h);
-               }
-       }
-       
-       public void renderChange(Change c, URLRewritingStream rewrite) throws 
IOException {
-               rewrite.write("<div id=\"" + c.hashCode() + "\" ");
-               rewrite.write("class=\"" + renderJs(c) + "\" ");
-               if (c instanceof ChangeAdd || c instanceof ChangeRenew) {
-                       LocalElement element = null;
-                       if (c instanceof ChangeAdd) {
-                               element = ((ChangeAdd)c).getElement();
-                       } else {
-                               element = ((ChangeRenew)c).getElement();
-                       }
-                       if (element instanceof CollectedAjaxInfo) {
-                               CollectedAjaxInfo cai = (CollectedAjaxInfo) 
element;
-                               rewrite.write(" state=\"");
-                               recursePrintingState(cai, rewrite);
-                               rewrite.write("\"");
-                       }
-                       rewrite.write(">");
-                       element.renderBody(rewrite);
-               } else {
-                       rewrite.write(">");
-               }
+               List<Change> computed = diff.compute();
+               computed = AjaxDispatchUtils.normalize(computed);
+
+               rewrite.setTemplatePrefix("template/" + 
t.getClass().getPackage().getName() + "/");             
                
-               rewrite.write("</div>");
-               rewrite.flush();
+               AjaxDispatchUtils.renderListOfChanges(computed, rewrite);
        }
        
-       private void recursePrintingState(CollectedAjaxInfo cai, 
URLRewritingStream rewrite) throws IOException {
-               
rewrite.write(StringEscapeUtils.escapeXml(cai.produceJsonRow()));
-               List<LocalElement> children = cai.getChildren();
-               for (LocalElement subele : children) {
-                       if (subele instanceof CollectedAjaxInfo) {
-                               rewrite.write(",");
-                               recursePrintingState((CollectedAjaxInfo) 
subele, rewrite);
-                       }
-               }
-       }
-
-       public String renderJs(Change c) {
-               if (c instanceof ChangeAdd) {
-                       ChangeAdd ca = (ChangeAdd) c;
-                       if (ca.getReference() == null) {
-                               if (ca.getElement() instanceof 
TemplateAjaxInfo) {
-                                       return "newpage";
-                               }
-                       } else {
-                               String ref = ca.getReference().getId(); 
-                               if (ca.isAfter() == null) {
-                                       return "add inside " + ref;
-                               } else if (ca.isAfter()) {
-                                       return "add after " + ref;
-                               } else {
-                                       return "add before " + ref;
-                               }
-                       }
-               } else if (c instanceof ChangeMove) {
-                       ChangeMove cm = (ChangeMove) c;
-                       return "move " + cm.getElement().getId() + 
(cm.isAfter() ? " after " : " before ") + cm.getReference().getId();
-               } else if (c instanceof ChangeRemove) {
-                       return "remove " + 
((ChangeRemove)c).getElement().getId();
-               } else if (c instanceof ChangeRenew) {
-                       return "renew " + ((ChangeRenew)c).getElement().getId();
-               } else {
-                       throw new MagmaException("{0} is an unknow change 
type", c.getClass());
-               }
-               return "unknown";
-       }
        
 }

Modified: 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuInternalDispatch.aj
URL: 
http://svn.apache.org/viewvc/labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuInternalDispatch.aj?rev=1032615&r1=1032614&r2=1032615&view=diff
==============================================================================
--- 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuInternalDispatch.aj
 (original)
+++ 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxBuInternalDispatch.aj
 Mon Nov  8 16:09:27 2010
@@ -6,13 +6,20 @@ import javax.servlet.http.HttpServletRes
 import org.apache.magma.basics.MagmaException;
 import org.apache.magma.basics.startup.Cycle;
 import org.apache.magma.website.HtmlProducer;
+import org.apache.magma.website.Producer;
+import org.apache.magma.website.autoajax.data.Change;
+import org.apache.magma.website.autoajax.data.ChangeRenew;
+import org.apache.magma.website.autoajax.webdata.InternalHtmlProducerAjaxInfo;
 import org.apache.magma.website.templating.Template;
 import org.apache.magma.website.Dispatch;
 import org.apache.magma.website.templating.Template;
+import org.apache.magma.website.utils.URLRewritingStream;
 import org.apache.magma.website.Head;
 import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.List;
 
-public aspect AjaxBuInternalDispatch {
+public privileged aspect AjaxBuInternalDispatch {
 
        /**
         * Handle an ajax-browser-update request for the internals of a single 
producer
@@ -23,22 +30,54 @@ public aspect AjaxBuInternalDispatch {
        public void Dispatch.handleAJAXBUINT(HtmlProducer producer, 
HttpServletRequest req, HttpServletResponse resp) {
                setHeaders(producer, resp);
                try {
-                       OutputStream str = Cycle.get().getRewriting();
-                       if (producer instanceof HtmlProducer) {
-                               str.write("<div 
class=\"buintroot\">".getBytes("UTF-8"));
-                               str.write("<div 
class=\"ajaxhead\">".getBytes("UTF-8"));
-                               Head h = new Head(str);
-                               ((HtmlProducer)producer).head(h);
-                               str.write("</div>".getBytes("UTF-8"));
+                       URLRewritingStream str = Cycle.get().getRewriting();
+                       
+                       List<HtmlProducer> producers = new 
ArrayList<HtmlProducer>();
+                       if (producer instanceof HtmlProducer) 
producers.add((HtmlProducer)producer);
+                       
+                       String othersStr = req.getParameter("others");
+                       if (othersStr != null) {
+                               String[] othsplit = othersStr.split(";");
+                               for (String oth : othsplit) {
+                                       Producer othp = findProducer(oth);
+                                       if (othp instanceof HtmlProducer) 
producers.add((HtmlProducer)othp);
+                               }
+                       }
+                       
+                       List<Change> changes = new ArrayList<Change>();
+                       for (HtmlProducer prod : producers) {
+                               ChangeRenew ch = new ChangeRenew();
+                               ch.setElement(new 
InternalHtmlProducerAjaxInfo(null, prod));
+                               changes.add(ch);
+                       }
+                       
+                       AjaxDispatchUtils.renderListOfChanges(changes, str);
+                       
+                       /*
+                       
+                       str.write("<div 
class=\"buintroot\">".getBytes("UTF-8"));
+                       str.write("<div class=\"ajaxhead\">".getBytes("UTF-8"));
+                       Head h = new Head(str);
+                       for (Producer prod : producers) {
+                               if (prod instanceof HtmlProducer) {
+                                       ((HtmlProducer)producer).head(h);
+                               }
+                       }                       
+                       str.write("</div>".getBytes("UTF-8"));
+                       
+                       
+                       
+                       for (Producer prod : producers) {
                                str.write("<div class=\"ajaxbuint 
".getBytes("UTF-8"));
-                               
str.write(Template.computePartialProducerClasses((HtmlProducer) 
producer).getBytes("UTF-8"));
+                               if (prod instanceof HtmlProducer) {             
        
+                                       
str.write(Template.computePartialProducerClasses((HtmlProducer) 
prod).getBytes("UTF-8"));
+                               }
                                str.write("\">".getBytes("UTF-8"));
-                       }
-                       producer.produceWithoutCompound(str);
-                       if (producer instanceof HtmlProducer) {
+                               prod.produceWithoutCompound(str);
                                str.write("</div>".getBytes("UTF-8"));
                                str.write("</div>".getBytes("UTF-8"));
-                       }               
+                       }
+                       */
                } catch (Exception e) {
                        throw new MagmaException(e, "Error sending ajaxbuint 
response");
                }

Added: 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxDispatchUtils.java
URL: 
http://svn.apache.org/viewvc/labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxDispatchUtils.java?rev=1032615&view=auto
==============================================================================
--- 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxDispatchUtils.java
 (added)
+++ 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxDispatchUtils.java
 Mon Nov  8 16:09:27 2010
@@ -0,0 +1,138 @@
+package org.apache.magma.website.autoajax;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.commons.lang.StringEscapeUtils;
+import org.apache.magma.basics.MagmaException;
+import org.apache.magma.website.Head;
+import org.apache.magma.website.autoajax.data.Change;
+import org.apache.magma.website.autoajax.data.ChangeAdd;
+import org.apache.magma.website.autoajax.data.ChangeMove;
+import org.apache.magma.website.autoajax.data.ChangeRemove;
+import org.apache.magma.website.autoajax.data.ChangeRenew;
+import org.apache.magma.website.autoajax.data.LocalElement;
+import org.apache.magma.website.autoajax.webdata.CollectedAjaxInfo;
+import org.apache.magma.website.autoajax.webdata.InternalHtmlProducerAjaxInfo;
+import org.apache.magma.website.autoajax.webdata.OrphanHtmlProducerAjaxInfo;
+import org.apache.magma.website.autoajax.webdata.TemplateAjaxInfo;
+import org.apache.magma.website.utils.URLRewritingStream;
+
+public class AjaxDispatchUtils {
+
+       public static void renderListOfChanges(List<Change> computed, 
URLRewritingStream rewrite) {
+               Head head = new Head(rewrite);
+               try {
+                       rewrite.write("<div class='buroot'>");
+                       rewrite.write("<div class='ajaxhead'>");
+                       for (Change change : computed) {
+                               renderHead(change, head);
+                       }
+                       head.finished();
+                       rewrite.write("</div>");
+                       rewrite.flush();
+                       
+                       for (Change change : computed) {
+                               renderChange(change, rewrite);
+                       }
+                       rewrite.write("</div>");
+               } catch (Exception e) {
+                       throw new MagmaException(e, "Error writing");
+               }               
+       }
+       
+       public static List<Change> normalize(List<Change> change) {
+               List<Change> ret = new ArrayList<Change>();
+               for (Change acc : change) {
+                       if (acc instanceof ChangeAdd) {
+                               LocalElement element = 
((ChangeAdd)acc).getElement();
+                               if (element instanceof 
InternalHtmlProducerAjaxInfo || element instanceof OrphanHtmlProducerAjaxInfo) {
+                                       ChangeRenew ren = new ChangeRenew();
+                                       
ren.setElement(((CollectedAjaxInfo)element).getParent());
+                                       ret.add(ren);
+                                       continue;
+                               }
+                       }
+                       ret.add(acc);
+               }
+               return ret;
+       }
+       
+       public static void renderHead(Change c, Head h) {
+               if (c instanceof ChangeAdd) {
+                       ((ChangeAdd)c).getElement().renderHead(h);
+               } else if (c instanceof ChangeRenew) {
+                       ((ChangeRenew)c).getElement().renderHead(h);
+               }
+       }
+       
+       public static void renderChange(Change c, URLRewritingStream rewrite) 
throws IOException {
+               rewrite.write("<div id=\"" + c.hashCode() + "\" ");
+               rewrite.write("class=\"" + renderJs(c) + "\" ");
+               if (c instanceof ChangeAdd || c instanceof ChangeRenew) {
+                       LocalElement element = null;
+                       if (c instanceof ChangeAdd) {
+                               element = ((ChangeAdd)c).getElement();
+                       } else {
+                               element = ((ChangeRenew)c).getElement();
+                       }
+                       if (element instanceof CollectedAjaxInfo) {
+                               CollectedAjaxInfo cai = (CollectedAjaxInfo) 
element;
+                               rewrite.write(" state=\"");
+                               recursePrintingState(cai, rewrite);
+                               rewrite.write("\"");
+                       }
+                       rewrite.write(">");
+                       element.renderBody(rewrite);
+               } else {
+                       rewrite.write(">");
+               }
+               
+               rewrite.write("</div>");
+               rewrite.flush();
+       }
+       
+       public static void recursePrintingState(CollectedAjaxInfo cai, 
URLRewritingStream rewrite) throws IOException {
+               
rewrite.write(StringEscapeUtils.escapeXml(cai.produceJsonRow()));
+               List<LocalElement> children = cai.getChildren();
+               for (LocalElement subele : children) {
+                       if (subele instanceof CollectedAjaxInfo) {
+                               rewrite.write(",");
+                               recursePrintingState((CollectedAjaxInfo) 
subele, rewrite);
+                       }
+               }
+       }
+
+       public static String renderJs(Change c) {
+               if (c instanceof ChangeAdd) {
+                       ChangeAdd ca = (ChangeAdd) c;
+                       if (ca.getReference() == null) {
+                               if (ca.getElement() instanceof 
TemplateAjaxInfo) {
+                                       return "newpage";
+                               }
+                       } else {
+                               String ref = ca.getReference().getId(); 
+                               if (ca.isAfter() == null) {
+                                       return "add inside " + ref;
+                               } else if (ca.isAfter()) {
+                                       return "add after " + ref;
+                               } else {
+                                       return "add before " + ref;
+                               }
+                       }
+               } else if (c instanceof ChangeMove) {
+                       ChangeMove cm = (ChangeMove) c;
+                       return "move " + cm.getElement().getId() + 
(cm.isAfter() ? " after " : " before ") + cm.getReference().getId();
+               } else if (c instanceof ChangeRemove) {
+                       return "remove " + 
((ChangeRemove)c).getElement().getId();
+               } else if (c instanceof ChangeRenew) {
+                       return "renew " + ((ChangeRenew)c).getElement().getId();
+               } else {
+                       throw new MagmaException("{0} is an unknow change 
type", c.getClass());
+               }
+               return "unknown";
+       }
+       
+       
+}

Propchange: 
labs/magma/trunk/website-autoajax/src/main/java/org/apache/magma/website/autoajax/AjaxDispatchUtils.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: 
labs/magma/trunk/website-autoajax/src/main/resources/org/apache/magma/website/autoajax/autoajax.js
URL: 
http://svn.apache.org/viewvc/labs/magma/trunk/website-autoajax/src/main/resources/org/apache/magma/website/autoajax/autoajax.js?rev=1032615&r1=1032614&r2=1032615&view=diff
==============================================================================
--- 
labs/magma/trunk/website-autoajax/src/main/resources/org/apache/magma/website/autoajax/autoajax.js
 (original)
+++ 
labs/magma/trunk/website-autoajax/src/main/resources/org/apache/magma/website/autoajax/autoajax.js
 Mon Nov  8 16:09:27 2010
@@ -3,6 +3,7 @@ if (window.magma == undefined) {
 }
 
 magma.autoajax = new function() {
+       var me = this;
        
        /**
         * Current state
@@ -198,18 +199,51 @@ magma.autoajax = new function() {
                        delete me.torenew;
                        return;
                }
-               // TODO better batching using the server multiple parts
                var stateId = me.torenew[0];
                me.torenew.splice(0,1);
-               setTimeout('magma.autoajax._intrenew()', 200);          
+               setTimeout('magma.autoajax._intrenew()', 200);
+
                var stategrp = this.state.elements[stateId];
+               if (stategrp.type == 'int') {
+                       var mainurl = stategrp.localurl; 
+                       var jqele = jQuery(stategrp.domElement);
+                       var event = jQuery.Event("renewing");
+                       event.state = stategrp;
+                       jqele.trigger(event);
+                       /* Check if there are others and if they are internal */
+                       var urls = new Array();
+                       for (var i = 0; i < me.torenew.length; i++) {
+                               stategrp = this.state.elements[me.torenew[i]];
+                               if (stategrp.type == 'int') {
+                                       jqele = jQuery(stategrp.domElement);
+                                       event = jQuery.Event("renewing");
+                                       event.state = stategrp;
+                                       jqele.trigger(event);
+                                       
+                                       urls.push(stategrp.localurl);
+                                       me.torenew.splice(i,1);
+                                       i--;
+                               }
+                       }                       
+                       
+                       /* Since they are internals, we can use the batched 
version */
+                       jQuery.ajax({
+                               url: me._buildUrl(mainurl,".ajaxbuint"),
+                               type: "POST",
+                               dataType: "html",
+                               data: {"others" : urls.join(';')},
+                               complete: me.parseResponse
+                       });             
+                       return;
+               }
+               
+               /* Non-internals go with the old .ajax way */
                var jqele = jQuery(stategrp.domElement);
                var event = jQuery.Event("renewing");
                event.state = stategrp;
                jqele.trigger(event);
                var url = stategrp.localurl;
-               var internal = (stategrp.type == 'int'); 
-               var real = me._buildUrl(url,".ajax" + (internal ? 'buint' : 
''));
+               var real = me._buildUrl(url,".ajax");
                jQuery.ajax({
                        url: real,
                        type: "GET",
@@ -217,8 +251,8 @@ magma.autoajax = new function() {
                        complete: function(res, status){
                                if ( status == "success" || status == 
"notmodified" ) {
                                        var payload = $(res.responseText);
-                                       var wrapperclass = internal ? 
'ajaxbuint' : 'AjaxWrapper';
-                                       var headclass = internal ? '.ajaxhead' 
: '.AjaxHead';
+                                       var wrapperclass = 'AjaxWrapper';
+                                       var headclass = '.AjaxHead';
                                        // TODO use replaceWith?
                                        jqele.empty();
                                        jqele.append($('.' + 
wrapperclass,payload).children());
@@ -264,6 +298,9 @@ magma.autoajax = new function() {
                var stategrp = this.state.elements[relative];
                var jqele = jQuery(stategrp.domElement);
                var payload = $(what).children();
+               var event = jQuery.Event("adding");
+               event.state = stategrp;
+               payload.trigger(event);
                var addtarget = null;
                if (position == 'inside') {
                        jqele.append(payload);
@@ -273,7 +310,8 @@ magma.autoajax = new function() {
                } else if (position == 'before') {
                        jqele.before(payload);
                }
-               var event = jQuery.Event("added");
+               event = jQuery.Event("added");
+               event.state = stategrp;
                payload.trigger(event);
        }
 
@@ -281,11 +319,15 @@ magma.autoajax = new function() {
                var stategrp = this.state.elements[which];
                var jqele = jQuery(stategrp.domElement);
                var payload = $(what).children();
+               jqele.empty();
+               jqele.append(payload);
+               /*
                jqele.after(payload);
                jqele.remove();
+               */
                var event = jQuery.Event("renewed");
                event.state = stategrp;
-               payload.trigger(event);
+               jqele.trigger(event);
        }
        
        
@@ -334,8 +376,6 @@ magma.autoajax = new function() {
                var me = this;
                var event = jQuery.Event("ajaxloading");
                $(document).trigger(event);             
-               // TODO send the request, parse the resulting
-               // head and directives.
                var real = me._buildUrl(rel,".ajaxbu");
                var state = this.getState();
                if (otherparams) {
@@ -348,64 +388,66 @@ magma.autoajax = new function() {
                        type: "POST",
                        dataType: "html",
                        data: otherparams,
-                       complete: function(res, status){
-                               var event = jQuery.Event("ajaxloaded");
-                               $(document).trigger(event);             
-                               if ( status == "success" || status == 
"notmodified" ) {
-                                       var payload = $(res.responseText);
-                                       var actions = payload.children();
-                                       var newpages = 
actions.filter(".newpage");
-                                       if (newpages.length > 0) {
-                                               newpages.each(function() {
-                                                       me.performNewPage(this);
+                       complete: me.parseResponse
+               });             
+       }
+       
+       this.parseResponse = function(res, status){
+               var event = jQuery.Event("ajaxloaded");
+               $(document).trigger(event);             
+               if ( status == "success" || status == "notmodified" ) {
+                       var payload = $(res.responseText);
+                       var actions = payload.children();
+                       var newpages = actions.filter(".newpage");
+                       if (newpages.length > 0) {
+                               newpages.each(function() {
+                                       me.performNewPage(this);
+                                       var statemod = $(this).attr('state');
+                                       if (statemod != '' && typeof statemod 
!= 'undefined') {
+                                               statemod = jQuery.parseJSON('{' 
+ statemod + '}');
+                                               me.updateState(statemod);
+                                       }
+                                       me.recalcState();
+                               });
+                       } else {
+                               
me.parseMagmaHead(payload.find('.ajaxhead'),payload, function() {
+                                       actions.each(function() {
+                                               try { 
+                                                       var classes = 
this.className;
+                                                       var acts = 
classes.split(' ');
+                                                       if (acts[0] == 'add') {
+                                                               
me.performAdd(acts[1], acts[2], this);
+                                                       } else if (acts[0] == 
'move') {
+                                                               
me.performMove(acts[1], acts[2], acts[3]);                                      
                
+                                                       } else if (acts[0] == 
'renew') {
+                                                               
me.performRenew(acts[1], this);
+                                                       }
                                                        var statemod = 
$(this).attr('state');
                                                        if (statemod != '' && 
typeof statemod != 'undefined') {
                                                                statemod = 
jQuery.parseJSON('{' + statemod + '}');
                                                                
me.updateState(statemod);
                                                        }
-                                                       me.recalcState();
-                                               });
-                                       } else {
-                                               
me.parseMagmaHead(payload.find('.ajaxhead'),payload, function() {
-                                                       actions.each(function() 
{
-                                                               try { 
-                                                                       var 
classes = this.className;
-                                                                       var 
acts = classes.split(' ');
-                                                                       if 
(acts[0] == 'add') {
-                                                                               
me.performAdd(acts[1], acts[2], this);
-                                                                       } else 
if (acts[0] == 'move') {
-                                                                               
me.performMove(acts[1], acts[2], acts[3]);                                      
                
-                                                                       } else 
if (acts[0] == 'renew') {
-                                                                               
me.performRenew(acts[1], this);
-                                                                       }
-                                                                       var 
statemod = $(this).attr('state');
-                                                                       if 
(statemod != '' && typeof statemod != 'undefined') {
-                                                                               
statemod = jQuery.parseJSON('{' + statemod + '}');
-                                                                               
me.updateState(statemod);
-                                                                       }
-                                                               } catch (e) {
-                                                                       
console.log(e);
-                                                               }
-                                                       });
-                                                       
actions.filter(".remove").each(function() {
-                                                               try {
-                                                                       var 
classes = this.className;
-                                                                       var 
acts = classes.split(' ');
-                                                                       
me.performRemove(acts[1]);
-                                                               } catch (e) {
-                                                                       
console.log(e);
-                                                               }
-                                                       });
-                                                       me.recalcState();
-                                               });
-                                       }
-                                       //alert("Success");
-                               } else {
-                                       var event = jQuery.Event("ajaxerror");
-                                       $(document).trigger(event);             
        
-                               }
+                                               } catch (e) {
+                                                       console.log(e);
+                                               }
+                                       });
+                                       
actions.filter(".remove").each(function() {
+                                               try {
+                                                       var classes = 
this.className;
+                                                       var acts = 
classes.split(' ');
+                                                       
me.performRemove(acts[1]);
+                                               } catch (e) {
+                                                       console.log(e);
+                                               }
+                                       });
+                                       me.recalcState();
+                               });
                        }
-               });             
+                       //alert("Success");
+               } else {
+                       var event = jQuery.Event("ajaxerror");
+                       $(document).trigger(event);                     
+               }
        }
        
        /**



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to