faalis 0.11.1 → 0.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/faalis/dashboard/app.js +0 -19
- data/app/assets/javascripts/faalis/dashboard/functions.js.erb +5 -22
- data/app/assets/javascripts/faalis/dashboard/init.js +1 -20
- data/app/assets/javascripts/faalis/dashboard/modules/anim.js +0 -19
- data/app/assets/javascripts/faalis/dashboard/modules/api.js +0 -19
- data/app/assets/javascripts/faalis/dashboard/modules/auth/auth.js +2 -21
- data/app/assets/javascripts/faalis/dashboard/modules/auth/group.js +0 -19
- data/app/assets/javascripts/faalis/dashboard/modules/auth/profile.js +0 -19
- data/app/assets/javascripts/faalis/dashboard/modules/auth/user.js +0 -18
- data/app/assets/javascripts/faalis/dashboard/modules/conversations.js +33 -32
- data/app/assets/javascripts/faalis/dashboard/modules/errors.js +7 -20
- data/app/assets/javascripts/faalis/dashboard/modules/fields/boolean.js +14 -21
- data/app/assets/javascripts/faalis/dashboard/modules/fields/controlcombo-field.js +63 -0
- data/app/assets/javascripts/faalis/dashboard/modules/fields/datetime.js +18 -20
- data/app/assets/javascripts/faalis/dashboard/modules/fields/fields.js +1 -1
- data/app/assets/javascripts/faalis/dashboard/modules/fields/float.js +50 -0
- data/app/assets/javascripts/faalis/dashboard/modules/fields/input-grid.js +46 -0
- data/app/assets/javascripts/faalis/dashboard/modules/fields/input-list.js +31 -0
- data/app/assets/javascripts/faalis/dashboard/modules/fields/integer.js +22 -22
- data/app/assets/javascripts/faalis/dashboard/modules/fields/relation.js +25 -19
- data/app/assets/javascripts/faalis/dashboard/modules/fields/string.js +11 -20
- data/app/assets/javascripts/faalis/dashboard/modules/fields/text.js +10 -19
- data/app/assets/javascripts/faalis/dashboard/modules/fields/time.js +123 -0
- data/app/assets/javascripts/faalis/dashboard/modules/filter.js +0 -19
- data/app/assets/javascripts/faalis/dashboard/modules/list-view.js +43 -25
- data/app/assets/javascripts/faalis/dashboard/modules/logs.js +0 -18
- data/app/assets/javascripts/faalis/dashboard/modules/modules.js +22 -21
- data/app/assets/javascripts/faalis/dashboard/modules/nav.js.erb +0 -19
- data/app/assets/javascripts/faalis/dashboard/modules/permissions.js +1 -20
- data/app/assets/javascripts/faalis/dashboard/objects.js +37 -0
- data/app/assets/stylesheets/faalis/dashboard/dashboard.css.scss +4 -0
- data/app/assets/stylesheets/faalis/dashboard/ltr/application.css +2 -0
- data/app/assets/stylesheets/faalis/dashboard/ltr/buttons.css.scss.erb +7 -0
- data/app/assets/stylesheets/faalis/dashboard/ltr/time.css.scss +58 -0
- data/app/assets/stylesheets/faalis/dashboard/ltr/time.css_flymake.scss +58 -0
- data/app/assets/stylesheets/faalis/dashboard/rtl/application.css +1 -0
- data/app/assets/stylesheets/faalis/dashboard/share/time.css.scss +55 -0
- data/app/assets/stylesheets/faalis/ltr/application.css +1 -1
- data/app/assets/stylesheets/faalis/rtl/buttons.css.scss.erb +5 -0
- data/app/controllers/faalis/api/v1/conversations_controller.rb +55 -27
- data/app/controllers/faalis/api/v1/groups_controller.rb +1 -1
- data/app/controllers/faalis/api/v1/permissions_controller.rb +1 -0
- data/app/views/angularjs_templates/conversations/details.html +3 -2
- data/app/views/angularjs_templates/conversations/index.html +8 -1
- data/app/views/angularjs_templates/conversations/show_details.html +6 -9
- data/app/views/angularjs_templates/fields/boolean/boolean.html +2 -2
- data/app/views/angularjs_templates/fields/control-combo/control-list.html +19 -0
- data/app/views/angularjs_templates/fields/datetime/datetime.html +1 -1
- data/app/views/angularjs_templates/fields/datetime/time.html +25 -0
- data/app/views/angularjs_templates/fields/float/float.html +4 -0
- data/app/views/angularjs_templates/fields/relation/relation.html +4 -3
- data/app/views/angularjs_templates/list-view/index.html +6 -5
- data/app/views/faalis/api/v1/conversations/destroy.json.jbuilder +1 -0
- data/app/views/faalis/api/v1/conversations/reply.json.jbuilder +1 -0
- data/app/views/faalis/api/v1/conversations/show.json.jbuilder +12 -8
- data/app/views/faalis/api/v1/conversations/trash.json.jbuilder +1 -0
- data/config/routes.rb +3 -3
- data/lib/faalis/permissions.rb +1 -1
- data/lib/faalis/version.rb +1 -1
- data/lib/generators/faalis/js_scaffold_generator.rb +10 -0
- data/lib/generators/faalis/templates/angularjs/index.html.erb +1 -1
- data/lib/generators/faalis/templates/angularjs/module.js.erb +14 -2
- data/lib/tasks/faalis_tasks.rake +11 -0
- metadata +255 -250
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/log/development.log +0 -0
- data/spec/dummy/log/test.log +0 -15
- data/spec/dummy/tmp/ember-rails/ember-data.js +0 -10204
- data/spec/dummy/tmp/ember-rails/ember.js +0 -36991
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e393d3c1a760d84edd2080b46616efdc10e19fa1
|
4
|
+
data.tar.gz: 461d47e4c36d3fc1454c31cf3f5d41d6e0bc6d7b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d898bf821ea373e35338187b9315e5ce6e0a446865d1a8fcdf98e1f8b2bdccd2b55de322a6f497b908c4535ba69873d1092ec70b95608b080cf98dc949011701
|
7
|
+
data.tar.gz: bd8f791a75b14f81909e0814f598da84e162f2d779fc3bda5556444b945cfa4f3aff3e90ee2341258067788956b82e8cc625d80ac5671ef59dbaddfff671c296
|
@@ -1,22 +1,3 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2013 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
|
-
|
20
1
|
//= require ./functions
|
21
2
|
//= require_tree ./modules
|
22
3
|
//= require_self
|
@@ -1,25 +1,8 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
|
-
|
20
|
-
|
21
|
-
function can(action, model) {
|
22
|
-
console.log(">>>>>>>>>>>>");
|
1
|
+
function to_boolean(value) {
|
2
|
+
if (value) {
|
3
|
+
return true;
|
4
|
+
}
|
5
|
+
return false;
|
23
6
|
}
|
24
7
|
/*
|
25
8
|
* This function convert snake_type to CamelCase
|
@@ -1,24 +1,5 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2013 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
|
-
|
20
1
|
//= require faalis/dashboard/functions
|
21
|
-
|
2
|
+
//= require faalis/dashboard/objects
|
22
3
|
// Get all the modules syncly
|
23
4
|
$.ajax({method: 'GET', type: 'json', async: false,
|
24
5
|
url: DashboardURL + '/modules.json'})
|
@@ -1,22 +1,3 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2014 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
|
-
|
20
1
|
var Anim = angular.module("Anim", ["ngAnimate"]);
|
21
2
|
|
22
3
|
Anim.animation(".fade_anim", function(){
|
@@ -1,22 +1,3 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2013 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
|
-
|
20
1
|
var API = angular.module("API", []);
|
21
2
|
|
22
3
|
API.provider("API", function(){
|
@@ -1,22 +1,3 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2013 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
|
-
|
20
1
|
var Auth = angular.module("Auth", ["User","Group"]);
|
21
2
|
|
22
3
|
Auth.config(["$routeProvider", function($routeProvider){
|
@@ -28,7 +9,7 @@ Auth.config(["$routeProvider", function($routeProvider){
|
|
28
9
|
|
29
10
|
Auth.controller("AuthMenuController", ["$scope", "gettext", function($scope, gettext){
|
30
11
|
this.menu_items = [
|
31
|
-
{title: gettext("Users"), url: "/auth/users"},
|
32
|
-
{title: gettext("Groups"), url: "/auth/groups"}
|
12
|
+
{title: gettext("Users"), url: "/auth/users", permission: {action: "read", model: "Faalis::User"}},
|
13
|
+
{title: gettext("Groups"), url: "/auth/groups", permission: {action: "read", model: "Faalis::Group"}}
|
33
14
|
];
|
34
15
|
}]);
|
@@ -1,22 +1,3 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2013 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
|
-
|
20
1
|
var Group = angular.module("Group", ["ListView", "Errors"]);
|
21
2
|
|
22
3
|
Group.config(["$routeProvider", function($routeProvider){
|
@@ -1,22 +1,3 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2013 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
|
-
|
20
1
|
var Profile = angular.module("Profile", []);
|
21
2
|
|
22
3
|
Profile.config(["$routeProvider", function($routeProvider){
|
@@ -1,21 +1,3 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2013 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
1
|
var User = angular.module("User", ["ListView", "Errors"]);
|
20
2
|
|
21
3
|
User.config(["$routeProvider", function($routeProvider){
|
@@ -1,21 +1,3 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2013 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
1
|
var Conversation = angular.module("Conversation",["ListView", "Errors"]);
|
20
2
|
|
21
3
|
|
@@ -41,10 +23,10 @@ Conversation.config(["$routeProvider", function($routeProvider){
|
|
41
23
|
|
42
24
|
Conversation.controller("ConversationControllerIndex",["$scope", "Restangular", "gettext", "catch_error", "$routeParams","$location", function($scope, API, gettext, catch_error, $routeParams, $location){
|
43
25
|
if ($routeParams.id){
|
26
|
+
$scope.id = $routeParams.id;
|
44
27
|
$scope.details_template = template("conversations/show_details");
|
45
|
-
console.log($scope.details_templates);
|
46
28
|
API.all("conversations").get($routeParams.id).then(function(data){
|
47
|
-
$scope.conversations = data;
|
29
|
+
$scope.conversations = data.messages;
|
48
30
|
});
|
49
31
|
}else{
|
50
32
|
$scope.details_template = template("conversations/details");
|
@@ -74,6 +56,12 @@ Conversation.controller("ConversationControllerIndex",["$scope", "Restangular",
|
|
74
56
|
classes: "btn tiny green",
|
75
57
|
route: "#conversations/new"
|
76
58
|
},
|
59
|
+
{
|
60
|
+
title: gettext("Inbox"),
|
61
|
+
icon: "fa fa-plus",
|
62
|
+
classes: "btn tiny green",
|
63
|
+
route: "#/conversations/inbox"
|
64
|
+
},
|
77
65
|
{
|
78
66
|
title: gettext("Sent box"),
|
79
67
|
icon: "fa fa-plus",
|
@@ -88,20 +76,19 @@ Conversation.controller("ConversationControllerIndex",["$scope", "Restangular",
|
|
88
76
|
}
|
89
77
|
];
|
90
78
|
|
91
|
-
$scope.
|
92
|
-
|
93
|
-
console.log('fix me : check why multiple run');
|
94
|
-
return conversation.message.subject;
|
79
|
+
$scope.box_type = function(){
|
80
|
+
return type;
|
95
81
|
};
|
96
82
|
|
83
|
+
$scope.message_title = function(conversation){
|
84
|
+
return conversation.subject;
|
85
|
+
};
|
97
86
|
$scope.on_trash = function(conversations){
|
98
|
-
return conversations;
|
99
87
|
var query = [];
|
100
88
|
conversations.forEach(function(conversation){
|
101
89
|
query.push(conversation.id);
|
102
90
|
});
|
103
|
-
|
104
|
-
API.all("conversations",query.join(",")).post()
|
91
|
+
API.all("conversations").all("trash").post({id: query.join(",")})
|
105
92
|
.then(function(data) {
|
106
93
|
|
107
94
|
$scope.conversations = _.filter($scope.Conversations, function(x){
|
@@ -114,12 +101,28 @@ Conversation.controller("ConversationControllerIndex",["$scope", "Restangular",
|
|
114
101
|
};
|
115
102
|
|
116
103
|
$scope.on_untrash = function(conversations){
|
104
|
+
console.log("hereeer");
|
117
105
|
var query = [];
|
118
106
|
conversations.forEach(function(conversation){
|
119
107
|
query.push(conversation.id);
|
120
108
|
});
|
109
|
+
API.all("conversations").all("untrash").post({id: query.join(",")})
|
110
|
+
.then(function(data){
|
111
|
+
|
112
|
+
$scope.conversations = _.filter($scope.Conversations, function(x){
|
113
|
+
return !(query.indexOf(x.id) != -1);
|
114
|
+
});
|
115
|
+
success_message(data.msg);
|
116
|
+
})
|
117
|
+
.catch(catch_error);
|
118
|
+
};
|
121
119
|
|
122
|
-
|
120
|
+
$scope.on_delete = function(conversations){
|
121
|
+
var query = [];
|
122
|
+
conversations.forEach(function(conversation){
|
123
|
+
query.push(conversation.id);
|
124
|
+
});
|
125
|
+
API.all("conversations").customDELETE(query.join(","))
|
123
126
|
.then(function(data) {
|
124
127
|
|
125
128
|
$scope.conversations = _.filter($scope.Conversations, function(x){
|
@@ -128,12 +131,11 @@ Conversation.controller("ConversationControllerIndex",["$scope", "Restangular",
|
|
128
131
|
success_message(data.msg);
|
129
132
|
})
|
130
133
|
.catch(catch_error);
|
131
|
-
};
|
132
134
|
|
135
|
+
};
|
133
136
|
|
134
137
|
}]);
|
135
138
|
|
136
|
-
|
137
139
|
Conversation.controller("ConversationControllerNew", ["$scope", "Restangular", "gettext", "catch_error", "$routeParams", "$location", function($scope, API, gettext, catch_error, $routeParams, $location){
|
138
140
|
$scope.obj_id = null;
|
139
141
|
if("id" in $routeParams){
|
@@ -152,12 +154,11 @@ Conversation.controller("ConversationControllerNew", ["$scope", "Restangular", "
|
|
152
154
|
}
|
153
155
|
|
154
156
|
$scope.save = function() {
|
155
|
-
var conversation = {
|
157
|
+
var conversation = {message:{
|
156
158
|
recipients: $scope.recipients,
|
157
159
|
subject: $scope.subject,
|
158
160
|
body: $scope.body
|
159
161
|
}};
|
160
|
-
console.log(conversation);
|
161
162
|
if ($scope.obj_id){
|
162
163
|
API.all("conversations").one($scope.obj_id).one("reply").customPOST(conversation,"",{}).then(function(){
|
163
164
|
success_message(gettext("Message sent successfully."));
|
@@ -1,26 +1,14 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
1
|
+
// Error Handling Service
|
2
|
+
// ----------------------
|
3
|
+
// This module is responsible for handling errors and show suitable messages to user.
|
4
|
+
// It's neccessary to use this service in your code. Make sure to specify this module
|
5
|
+
// as your module dependency
|
19
6
|
var Errors = angular.module("Errors", []);
|
20
7
|
|
8
|
+
// Error service defination
|
21
9
|
Errors.factory('catch_error', ["gettext", function(gettext) {
|
22
|
-
return function(error) {
|
23
10
|
|
11
|
+
return function(error) {
|
24
12
|
if ("data" in error) {
|
25
13
|
if ((typeof(error.data) == "object") && ("fields" in error.data)) {
|
26
14
|
_.each(error.data.fields, function(value, key) {
|
@@ -42,6 +30,5 @@ Errors.factory('catch_error', ["gettext", function(gettext) {
|
|
42
30
|
}
|
43
31
|
console.log(error);
|
44
32
|
error_message(gettext("Unkown error: please try again or contact to administrator."));
|
45
|
-
|
46
33
|
};
|
47
34
|
}]);
|
@@ -1,22 +1,3 @@
|
|
1
|
-
/* -----------------------------------------------------------------------------
|
2
|
-
Red Base - Basic website skel engine
|
3
|
-
Copyright (C) 2012-2014 Yellowen
|
4
|
-
|
5
|
-
This program is free software; you can redistribute it and/or modify
|
6
|
-
it under the terms of the GNU General Public License as published by
|
7
|
-
the Free Software Foundation; either version 2 of the License, or
|
8
|
-
(at your option) any later version.
|
9
|
-
|
10
|
-
This program is distributed in the hope that it will be useful,
|
11
|
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
-
GNU General Public License for more details.
|
14
|
-
|
15
|
-
You should have received a copy of the GNU General Public License along
|
16
|
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
17
|
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
18
|
-
----------------------------------------------------------------------------- */
|
19
|
-
|
20
1
|
var Boolean_ = angular.module("BooleanField", []);
|
21
2
|
|
22
3
|
/*
|
@@ -24,23 +5,35 @@ var Boolean_ = angular.module("BooleanField", []);
|
|
24
5
|
*/
|
25
6
|
Boolean_.directive('booleanField', ["$filter", "gettext", function($filter, gettext) {
|
26
7
|
|
27
|
-
function link(scope, element, attrs){
|
8
|
+
function link(scope, element, attrs, ngModel){
|
28
9
|
var ltr = is_ltr();
|
29
10
|
scope.element_id = "id_" + scope.field;
|
30
11
|
scope.msg_element_id = "id_" + scope.field + "_msg";
|
12
|
+
|
13
|
+
if (scope.on_change !== undefined) {
|
14
|
+
// Watch event changes
|
15
|
+
scope.$watch("model", function(newv, oldv, $scope) {
|
16
|
+
// TODO: maybe we should pass locals to $eval
|
17
|
+
scope.$parent.$eval(scope.on_change);
|
18
|
+
}, true);
|
19
|
+
}
|
31
20
|
}
|
32
21
|
// Actual object of <boolean-field> directive
|
33
22
|
return {
|
34
23
|
templateUrl: template("fields/boolean/boolean"),
|
35
24
|
replace: true,
|
36
25
|
restrict: "E",
|
26
|
+
//require: "ngModel",
|
37
27
|
scope: {
|
38
28
|
cssClasses: '=cssClass',
|
39
|
-
|
29
|
+
// string to shown as label for control
|
30
|
+
label: "@",
|
40
31
|
// fieldname
|
41
32
|
field: "=fieldName",
|
42
33
|
// Does this field is required
|
43
34
|
required: "=",
|
35
|
+
// A call back to pass to field ng-change directive
|
36
|
+
on_change: "@onChange",
|
44
37
|
// Actual Angularjs ng-model
|
45
38
|
model: '='
|
46
39
|
},
|