Ignore:
Timestamp:
03/13/12 14:10:32 (13 years ago)
Author:
hendrikvanantwerpen
Message:

[Client] Use toaster to show errors from server
[Client] Create widget for mainmenu, cleaner loading of index.html now.
[Server] Renamed answerset datetime to more meaningful creationdate

Location:
Dev/branches/rest-dojo-ui/client/rft
Files:
3 added
7 edited

Legend:

Unmodified
Added
Removed
  • Dev/branches/rest-dojo-ui/client/rft/api.js

    r274 r311  
    1 define(['dojo/_base/xhr','dojo/_base/json','dojo/_base/Deferred','./auth'],function(xhr,json,Deferred){
    2     return {
    3         post: function(path,args) {
    4             return xhr.post({
    5                 url: "../server/api.php/"+path,
    6                 handleAs: "json",
    7                 headers: {
    8                     "Content-Type": "application/json"
    9                 },
    10                 rawBody: json.toJson(args)
    11             });
    12         }
    13     };
    14 });
     1define(['dojo/_base/xhr','dojo/_base/json','dojo/_base/connect'],
     2    function(xhr,json,connect){
     3        return new (function(){
     4            var self = this;
     5            this.post = function(path,args) {
     6                var dfd = xhr.post({
     7                    url: "../server/api.php/"+path,
     8                    handleAs: "json",
     9                    headers: {
     10                        "Content-Type": "application/json"
     11                    },
     12                    rawBody: json.toJson(args)
     13                });
     14                dfd.then(
     15                    function(){},
     16                    self.defaultErrorHandler);
     17                return dfd;
     18            };
     19            this.defaultErrorHandler = function(error) {
     20                var msg = "An error occured!";
     21                try {
     22                    msg = json.fromJson(error.responseText).errorMsg;
     23                } catch (ex) {
     24                    msg = error.message;
     25                }
     26                self.notify(msg,'error');
     27            };
     28            this.notify =  function(text,type) {
     29                connect.publish('/rft/notify',{
     30                    text: text,
     31                    type: type
     32                });
     33            };
     34        })();
     35    });
  • Dev/branches/rest-dojo-ui/client/rft/content.js

    r292 r311  
    2121define(['dojo/_base/declare','dojo/_base/connect','dojo/_base/xhr','dojo/_base/json',
    2222    'dojo/_base/lang','dojo/_base/Deferred','dojo/hash','dojo/dom-attr','dojo/dom-construct',
    23     'dojo/io-query','dijit','rft/util','rft/ui/_Page'],
     23    'dojo/io-query','dijit','./util','./ui/_Page'],
    2424    function(declare,connect,xhr,json,lang,Deferred,hash,attr,domConstruct,uriQuery,dijit,util,_Page){
    2525        return new (function() {
     
    145145                    return _goTo(new HRI(path,args));
    146146                }
    147             }
     147            };
    148148
    149149            self.goTo = function(path,args) {
     
    157157                    return {};
    158158                }
    159             }
     159            };
    160160
    161161            connect.subscribe('/dojo/hashchange', function(){
  • Dev/branches/rest-dojo-ui/client/rft/pages/survey.js

    r303 r311  
    1 define(['dojo/_base/declare','dojo/_base/lang','dojo/_base/event','dojo/_base/Deferred','rft/store','rft/ui/_Page'],
    2     function(declare,lang,event,Deferred,store,_Page){
     1define(['dojo/_base/declare','dojo/_base/lang','dojo/_base/event','dojo/_base/Deferred','rft/store','rft/ui/_Page','rft/api'],
     2    function(declare,lang,event,Deferred,store,_Page,api){
    33        return declare('rft.pages.survey',[_Page],{
    44            object: null,
     
    3131                    this.object = obj;
    3232                    this.setFields(obj);
     33                    api.notify("Object saved");
     34                }),lang.hitch(this,function(){
     35                    api.notify("Object save failed",'error');
    3336                }));
    3437                event.stop(evt);
  • Dev/branches/rest-dojo-ui/client/rft/run.js

    r292 r311  
    2525    'dojox/grid/DataGrid',
    2626    'dojox/widget/TitleGroup',
     27    'rft/ui/MainMenu',
    2728    'rft/ui/MenuBarLink',
    2829    'rft/ui/MenuLink',
     30    'rft/ui/Notifications',
    2931    'rft/ui/LineWithActionsWidget',
    3032    'rft/ui/QuestionWidget',
  • Dev/branches/rest-dojo-ui/client/rft/store.js

    r303 r311  
    1 define(['dojo/_base/lang','dojo/_base/array','dojo/_base/Deferred','dojo/store/JsonRest'],
    2     function(lang,array,Deferred,JsonRest){
     1define(['dojo/_base/lang','dojo/_base/array','dojo/_base/Deferred','dojo/store/JsonRest','./api'],
     2    function(lang,array,Deferred,JsonRest,api){
    33   
    44        var OBJ_TYPE = '__objectType';
     
    2020                idProperty: OBJ_UID
    2121            });
     22            var errHandler = api.defaultErrorHandler;
    2223            return lang.delegate(jsonStore,{
    2324                query: function(query, directives){
     
    2627                            return new RftObject(typeof result == "object" ? result : object);
    2728                        });
    28                     });
     29                    },errHandler);
    2930                },
    3031                get: function(id, directives){
    3132                    return Deferred.when( jsonStore.get(id,directives), function(result){
    3233                        return new RftObject(typeof result == "object" ? result : object);
    33                     });
     34                    },errHandler);
    3435                },
    3536                add: function(object, directives){
    3637                    return Deferred.when( jsonStore.add(object,directives), function(result){
    3738                        return new RftObject(typeof result == "object" ? result : object);
    38                     });
     39                    },errHandler);
    3940                },
    4041                put: function(object, directives){
    4142                    return Deferred.when( jsonStore.put(object,directives), function(result) {
    4243                        return new RftObject(typeof result == "object" ? result : object);
    43                     });
     44                    },errHandler);
    4445                },
    4546                remove: function(id, directives){
  • Dev/branches/rest-dojo-ui/client/rft/ui/AccordionList.js

    r305 r311  
    22    'dojo/_base/Deferred','dojo/dom-construct','dijit/_WidgetBase',
    33    'dijit/_TemplatedMixin','dijit/_WidgetsInTemplateMixin','dijit/TitlePane',
    4     'rft/ui/LineWithActionsWidget','dojo/text!rft/ui/templates/AccordionList.html'],
     4    'rft/ui/LineWithActionsWidget','dojo/text!./templates/AccordionList.html'],
    55    function(declare,lang,array,
    66        Deferred,domConstruct,_WidgetBase,
  • Dev/branches/rest-dojo-ui/client/rft/ui/templates/MultipleChoiceWidget.html

    r288 r311  
    11<div class="${baseClass}">
    22    <div data-dojo-attach-point="rows">
    3         <tr><td>a</td>
    43    </div>
    54    <div data-dojo-attach-point="buttons" class="row">
Note: See TracChangeset for help on using the changeset viewer.