Commits

Juan Carlos Picado Herrera committed 6f177a8

Dojo widget error handler

Comments (0)

Files changed (17)

encuestame-mvc/src/main/java/org/encuestame/mvc/controller/HomeController.java

 
 package org.encuestame.mvc.controller;
 
-import java.io.FileNotFoundException;
-import java.io.IOException;
-
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.encuestame.business.service.PictureService.PictureType;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.ModelMap;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.ResponseBody;
 
 /**
  * Home or FrontEnd Controller.

encuestame-mvc/src/main/java/org/encuestame/mvc/controller/settings/SettingsController.java

+/*
+ ************************************************************************************
+ * Copyright (C) 2001-2011 encuestame: system online surveys Copyright (C) 2009
+ * encuestame Development Team.
+ * Licensed under the Apache Software License version 2.0
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
+ * Unless required by applicable law or agreed to  in writing,  software  distributed
+ * under the License is distributed  on  an  "AS IS"  BASIS,  WITHOUT  WARRANTIES  OR
+ * CONDITIONS OF ANY KIND, either  express  or  implied.  See  the  License  for  the
+ * specific language governing permissions and limitations under the License.
+ ************************************************************************************
+ */
+package org.encuestame.mvc.controller.settings;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.encuestame.mvc.controller.BaseController;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+/**
+ * Settings Controller.
+ * @author Picado, Juan juanATencuestame.org
+ * @since Jan 29, 2011 11:37:56 AM
+ * @version $Id:$
+ */
+@Controller
+public class SettingsController extends BaseController{
+
+    private Log log = LogFactory.getLog(this.getClass());
+
+    /**
+     * Account Settings.
+     * @param model
+     * @return
+     */
+    @RequestMapping(value = "/settings/account", method = RequestMethod.GET)
+    public String settingsAccountController(ModelMap model) {
+        log.debug("account");
+        return "settings/account";
+    }
+
+    /**
+    * Social Settings Accounts.
+    * @param model
+    * @return
+    */
+   @RequestMapping(value = "/settings/social", method = RequestMethod.GET)
+   public String socialSettingsController(ModelMap model) {
+       log.debug("social");
+       return "settings/social";
+   }
+}

encuestame-war/src/main/webapp/WEB-INF/jsp/account.jsp

+<%@ include file="/WEB-INF/jsp/includes/taglibs.jsp" %>
+<%@ include file="/WEB-INF/jsp/includes/initPage.jsp" %>
+<%@ include file="/WEB-INF/jsp/includes/initBody.jsp" %>
+<script type="text/javascript">
+    dojo.require("encuestame.org.core.commons.profile.Profile");
+</script>
+<div class="defaultMarginWrapper">
+    <div dojoType="encuestame.org.core.commons.profile.Profile"></div>
+</div>
+</div>
+<%@ include file="/WEB-INF/jsp/includes/endBody.jsp" %>
+<%@ include file="/WEB-INF/jsp/includes/validate.jsp" %>
+<%@ include file="/WEB-INF/jsp/includes/footer.jsp" %>

encuestame-war/src/main/webapp/WEB-INF/jsp/includes/footer.jsp

+<div id="sessionHandler" dojoType="encuestame.org.core.commons.error.ErrorSessionHandler"></div>
+<div id="errorHandler" dojoType="encuestame.org.core.commons.error.ErrorHandler"></div>
+<div id="errorConexionHandler" dojoType="encuestame.org.core.commons.error.ErrorConexionHandler"></div>
 </body>
 </html>

encuestame-war/src/main/webapp/WEB-INF/jsp/includes/initPage.jsp

          dojo.require("encuestame.org.core.commons.profile.ProfileMenu");
          dojo.require("encuestame.org.core.commons.search.SearchMenu");
          dojo.require("encuestame.org.core.commons.dashboard.DashBoardMenu");
+         dojo.require("encuestame.org.core.commons.error.ErrorSessionHandler");
+         dojo.require("encuestame.org.core.commons.error.ErrorConexionHandler");
+         dojo.require("encuestame.org.core.commons.error.ErrorHandler");
     </script>
     <style type="css">
         img{ border:0px;}

encuestame-war/src/main/webapp/WEB-INF/web.xml

         <servlet-name>encuestame-spring-dispacher</servlet-name>
         <url-pattern>/user/*</url-pattern>
     </servlet-mapping>
+        <servlet-mapping>
+        <servlet-name>encuestame-spring-dispacher</servlet-name>
+        <url-pattern>/settings/*</url-pattern>
+    </servlet-mapping>
     <servlet-mapping>
         <servlet-name>encuestame-spring-dispacher</servlet-name>
         <url-pattern>/picture/*</url-pattern>

encuestame-war/src/main/webapp/resource/css/profile.css

-.profileWrapper{
-
-}
-
+/** profile menu **/
 div.profilePanel{
     display: none;
     position: absolute;
     padding: 10px;
     color: #BABABA !important;
     font-weight: normal;
-}
+}
+
+/** profile update wrapper **/
+
+div.accountUpdateWrapper{
+    padding: 10px;
+}

encuestame-war/src/main/webapp/resource/js/encuestame.profile.js

                 "encuestame.org.core.shared.utils.YesNoWidget",
                 "encuestame.org.core.map.Map",
                 "encuestame.org.core.commons.profile.ProfileMenu",
+                "encuestame.org.core.commons.profile.Profile",
                 "encuestame.org.core.commons.search.SearchMenu",
                 "encuestame.org.core.commons.dashboard.DashBoardMenu",
                 "encuestame.org.core.commons.security.Login",
-                "encuestame.org.core.commons.security.Password"
+                "encuestame.org.core.commons.security.Password",
+                "encuestame.org.core.commons.error.ErrorSessionHandler",
+                "encuestame.org.core.commons.error.ErrorConexionHandler",
+                "encuestame.org.core.commons.error.ErrorHandler"
                 ]
             }/*,
             {

encuestame-war/src/main/webapp/resource/js/encuestame/org/core/commons.js

  * Json Get Call.
  */
 encuestame.service.xhrGet = function(url, params, load, error){
-    //console.debug("url ", url);
-    //console.debug("params ", params);
-    //console.debug("load ", load);
     var defaultError = function(error, ioargs){
         console.debug("default error ", error);
     };
                     console.debug(message);
                     break;
                 default:
+                    console.debug("error", dijit.byId("errorConexionHandler"));
+                    dijit.byId("errorConexionHandler").show();
                     message = "Unknown error.";
                     console.debug(message);
                 }
     }
 };
 
+encuestame.filter = {};
+
+encuestame.filter.response = function(load){
+
+}
+
 /**
  * Json Get Call.
  */

encuestame-war/src/main/webapp/resource/js/encuestame/org/core/commons/error/AbstractErrorHandler.js

+dojo.provide("encuestame.org.core.commons.error.AbstractErrorHandler");
+
+dojo.require("dijit._Templated");
+dojo.require("dijit._Widget");
+
+dojo.declare(
+    "encuestame.org.core.commons.error.AbstractErrorHandler",
+    [dijit._Widget, dijit._Templated],{
+
+        templatePath: dojo.moduleUrl("encuestame.org.core.commons.error", "template/error.inc"),
+
+        widgetsInTemplate: true,
+
+        type : "",
+
+        postMixInProperties: function(){
+
+        },
+
+        postCreate: function() {
+
+        }
+    }
+);

encuestame-war/src/main/webapp/resource/js/encuestame/org/core/commons/error/ErrorConexionHandler.js

+dojo.provide("encuestame.org.core.commons.error.ErrorConexionHandler");
+
+dojo.require("dojox.widget.Dialog");
+dojo.require("encuestame.org.core.commons.error.AbstractErrorHandler");
+
+dojo.declare(
+    "encuestame.org.core.commons.error.ErrorConexionHandler",
+    [encuestame.org.core.commons.error.AbstractErrorHandler],{
+
+        widgetsInTemplate: true,
+
+        type : "Conexion Error",
+
+        postMixInProperties: function(){
+
+        },
+
+        postCreate: function() {
+
+        }
+    }
+);

encuestame-war/src/main/webapp/resource/js/encuestame/org/core/commons/error/ErrorHandler.js

+dojo.provide("encuestame.org.core.commons.error.ErrorHandler");
+
+dojo.require("dojox.widget.Dialog");
+dojo.require("encuestame.org.core.commons.error.AbstractErrorHandler");
+
+dojo.declare(
+    "encuestame.org.core.commons.error.ErrorHandler",
+    [encuestame.org.core.commons.error.AbstractErrorHandler],{
+
+        widgetsInTemplate: true,
+
+        type : "Error",
+
+        postMixInProperties: function(){
+
+        },
+
+        postCreate: function() {
+
+        }
+    }
+);

encuestame-war/src/main/webapp/resource/js/encuestame/org/core/commons/error/ErrorSessionHandler.js

+dojo.provide("encuestame.org.core.commons.error.ErrorSessionHandler");
+
+dojo.require("dojox.widget.Dialog");
+dojo.require("encuestame.org.core.commons.error.AbstractErrorHandler");
+
+dojo.declare(
+    "encuestame.org.core.commons.error.ErrorSessionHandler",
+    [encuestame.org.core.commons.error.AbstractErrorHandler],{
+
+        widgetsInTemplate: true,
+
+        type : "Session Error",
+
+        postMixInProperties: function(){
+
+        },
+
+        postCreate: function() {
+
+        }
+    }
+);

encuestame-war/src/main/webapp/resource/js/encuestame/org/core/commons/error/template/error.inc

+<div>
+    <div dojoType="dojox.widget.Dialog" id="errorDialog_${id}" dimensions="[1030,310]">
+         <div dojoType="dijit.layout.ContentPane" title="Error ${type}" selected="true">
+            ERROR
+         </div>
+    </div>
+</div>

encuestame-war/src/main/webapp/resource/js/encuestame/org/core/commons/profile/Profile.js

+dojo.provide("encuestame.org.core.commons.profile.Profile");
+
+dojo.declare(
+    "encuestame.org.core.commons.profile.Profile",
+    [dijit._Widget, dijit._Templated],{
+        templatePath: dojo.moduleUrl("encuestame.org.core.commons.profile", "templates/profile.inc"),
+
+        widgetsInTemplate: true,
+
+        _openBox : false,
+
+        contextPath : ""
+});

encuestame-war/src/main/webapp/resource/js/encuestame/org/core/commons/profile/templates/profile.inc

+<div class="accountUpdateWrapper">
+
+        WRAPPER
+
+</div>

encuestame-war/src/main/webapp/resource/js/encuestame/org/core/commons/profile/templates/profileMenu.inc

 <span>
     <a href="#" dojoAttachEvent="onclick:_open">Profile</a>
     <div class="profilePanel" dojoAttachPoint="_profileBox">
-        <ul class="user-dropdown">
+        <ul>
             <li><a href="${contextPath}/settings/account">Configuration</a></li>
             <li><a href="${contextPath}/settings/social">Social Accounts</a></li>
             <li><a href="${contextPath}/help">Help</a></li>