faalis 0.7.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/faalis/dashboard/app.js +24 -9
  3. data/app/assets/javascripts/faalis/dashboard/application.js.erb +0 -1
  4. data/app/assets/javascripts/faalis/dashboard/functions.js.erb +4 -0
  5. data/app/assets/javascripts/faalis/dashboard/modules/anim.js +1 -1
  6. data/app/assets/javascripts/faalis/dashboard/modules/conversations.js +180 -0
  7. data/app/assets/javascripts/faalis/dashboard/modules/fields/boolean.js +49 -0
  8. data/app/assets/javascripts/faalis/dashboard/modules/fields/datetime.js +50 -0
  9. data/app/assets/javascripts/faalis/dashboard/modules/fields/fields.js +1 -0
  10. data/app/assets/javascripts/faalis/dashboard/modules/fields/integer.js +50 -0
  11. data/app/assets/javascripts/faalis/dashboard/modules/fields/relation.js +78 -0
  12. data/app/assets/javascripts/faalis/dashboard/modules/fields/string.js +49 -0
  13. data/app/assets/javascripts/faalis/dashboard/modules/fields/text.js +50 -0
  14. data/app/assets/javascripts/faalis/dashboard/modules/list-view.js +14 -1
  15. data/app/assets/javascripts/faalis/dashboard/modules/nav.js.erb +1 -1
  16. data/app/assets/javascripts/faalis/dashboard/modules/permissions.js +71 -0
  17. data/app/assets/javascripts/faalis/dashboard/variables.js.erb +2 -0
  18. data/app/assets/stylesheets/faalis/base.css.scss +28 -0
  19. data/app/controllers/faalis/api/v1/conversations_controller.rb +92 -0
  20. data/app/controllers/faalis/api/v1/permissions_controller.rb +39 -3
  21. data/app/controllers/faalis/dashboard_controller.rb +18 -1
  22. data/app/models/faalis/permissions/auth.rb +3 -0
  23. data/app/models/faalis/user.rb +3 -0
  24. data/app/views/angularjs_templates/auth/groups/new.html +7 -3
  25. data/app/views/angularjs_templates/auth/users/details.html +1 -1
  26. data/app/views/angularjs_templates/auth/users/new.html +4 -3
  27. data/app/views/angularjs_templates/conversations/details.html +18 -0
  28. data/app/views/angularjs_templates/conversations/index.html +6 -0
  29. data/app/views/angularjs_templates/conversations/new.html +39 -0
  30. data/app/views/angularjs_templates/conversations/show.html +6 -0
  31. data/app/views/angularjs_templates/conversations/show_details.html +18 -0
  32. data/app/views/angularjs_templates/fields/boolean/boolean.html +4 -0
  33. data/app/views/angularjs_templates/fields/datetime/datetime.html +4 -0
  34. data/app/views/angularjs_templates/fields/integer/integer.html +4 -0
  35. data/app/views/angularjs_templates/fields/relation/relation.html +28 -0
  36. data/app/views/angularjs_templates/fields/string/string.html +4 -0
  37. data/app/views/angularjs_templates/fields/text/text.html +4 -0
  38. data/app/views/angularjs_templates/list-view/index.html +1 -1
  39. data/app/views/angularjs_templates/modules.html +2 -2
  40. data/app/views/faalis/api/v1/conversations/create.json.jbuilder +1 -0
  41. data/app/views/faalis/api/v1/conversations/index.json.jbuilder +1 -0
  42. data/app/views/faalis/api/v1/conversations/show.json.jbuilder +10 -0
  43. data/app/views/faalis/api/v1/permissions/user_permissions.json.jbuilder +1 -0
  44. data/app/views/layouts/faalis/dashboard.html.erb +1 -1
  45. data/config/routes.rb +13 -2
  46. data/db/migrate/{20131013091000_devise_create_red_base_users.rb → 20131013091000_devise_create_faalis_users.rb} +0 -0
  47. data/db/migrate/{20131020124701_create_red_base_groups.rb → 20131020124701_create_faalis_groups.rb} +0 -0
  48. data/db/migrate/{20131021170923_create_red_base_permissions.rb → 20131021170923_create_faalis_permissions.rb} +0 -0
  49. data/db/seeds.rb +2 -0
  50. data/lib/faalis.rb +1 -0
  51. data/lib/faalis/active_record.rb +1 -56
  52. data/lib/faalis/engine.rb +1 -0
  53. data/lib/faalis/permissions.rb +65 -0
  54. data/lib/faalis/version.rb +1 -1
  55. data/lib/generators/faalis/install_generator.rb +4 -0
  56. data/lib/generators/faalis/js_scaffold_generator.rb +27 -8
  57. data/lib/generators/faalis/templates/angularjs/module.js.erb +11 -7
  58. data/lib/generators/faalis/templates/angularjs/new.html.erb +35 -78
  59. metadata +51 -11
  60. data/app/views/angularjs_templates/#index.html# +0 -8
@@ -18,5 +18,5 @@
18
18
  # -----------------------------------------------------------------------------
19
19
 
20
20
  module Faalis
21
- VERSION = "0.7.0"
21
+ VERSION = "0.11.0"
22
22
  end
@@ -25,6 +25,10 @@ module Faalis
25
25
  desc "Copy all the necessary files to use Red Base"
26
26
  class_option :orm
27
27
 
28
+ def install_mailboxer
29
+ invoke "mailboxer:install"
30
+ end
31
+
28
32
  def copy_init_files
29
33
  template "devise.rb", "config/initializers/devise.rb"
30
34
  template "faalis.rb", "config/initializers/faalis.rb"
@@ -29,28 +29,41 @@ module Faalis
29
29
  argument :resource_fields, type: :array, default: [], banner: "fields[:types]"
30
30
  class_option :without_specs, :type => :boolean, :default => false, :desc => "Do not install specs"
31
31
  class_option :only_specs, :type => :boolean, :default => false, :desc => "Generate only spec files"
32
+ class_option :only_controller, :type => :boolean, :default => false, :desc => "Generate only controller"
32
33
  class_option :bulk_fields, :type => :string, :default => "", :desc => "Fields to use in in bulk edit, comma separated"
33
34
  class_option :no_bulk, :type => :boolean, :default => false, :desc => "No bulk edit needed"
34
35
  class_option :menu, :type => :string, :default => "", :desc => "Provide menu items which should be in sidebar. format: menu1:url,menu2:url"
35
36
  class_option :title_field, :type => :string, :default => "name", :desc => "Field name to use as title of each object"
36
37
  class_option :required, :type => :string, :default => "", :desc => "Non optional fields, comma separated"
37
38
  class_option :deps, :type => :string, :default => "", :desc => "Dependencies of Angularjs module, comma separated"
39
+ class_option :path, :type => :string, :default => "", :desc => "Path to js_scaffold target inside 'app/assets/javascripts/'"
40
+ class_option :raw_path, :type => :string, :default => "", :desc => "Path to js_scaffold target"
38
41
  class_option :tabs, :type => :string, :default => "", :desc => "Add tabs to 'new' view of scaffold. format: --tabs tab1:'field1;field2',tab2 Note: __all__ field include all fileds."
39
42
  class_option :no_filter, :type => :boolean, :default => false, :desc => "Don't view a filter box"
43
+ class_option :no_new_template, :type => :boolean, :default => false, :desc => "Don't copy the new.html template"
44
+
40
45
 
41
46
  desc "Create a new resource for client side application"
42
47
  def create_module
43
- unless options[:only_specs]
44
- template "angularjs/module.js.erb", "#{angularjs_app_path}modules/#{resource_path}.js"
48
+ unless options[:only_controller]
49
+ unless options[:only_specs]
50
+ template "angularjs/module.js.erb", "#{angularjs_app_path}modules/#{resource_path}.js"
51
+ end
45
52
  end
46
53
  end
47
54
 
48
55
  def create_template
49
- unless options[:only_specs]
50
- template "angularjs/index.html.erb", "app/views/angularjs_templates/#{resource.underscore}/index.html"
51
- template "angularjs/new.html.erb", "app/views/angularjs_templates/#{resource.underscore}/new.html"
52
- template "angularjs/details.html.erb", "app/views/angularjs_templates/#{resource.underscore}/details.html"
56
+ unless options[:only_controller]
57
+ unless options[:only_specs]
58
+ template "angularjs/index.html.erb", "app/views/angularjs_templates/#{resource.underscore}/index.html"
59
+ unless options[:no_new_template]
60
+ template "angularjs/new.html.erb", "app/views/angularjs_templates/#{resource.underscore}/new.html"
61
+ end
62
+ template "angularjs/details.html.erb", "app/views/angularjs_templates/#{resource.underscore}/details.html"
63
+ end
64
+ end
53
65
 
66
+ unless options[:only_specs]
54
67
  template "views/index.json.jbuilder.erb", "app/views/api/v1/#{resource.pluralize.underscore}/index.json.jbuilder"
55
68
  template "views/show.json.jbuilder.erb", "app/views/api/v1/#{resource.pluralize.underscore}/show.json.jbuilder"
56
69
  template "views/create.json.jbuilder.erb", "app/views/api/v1/#{resource.pluralize.underscore}/create.json.jbuilder"
@@ -109,8 +122,14 @@ module Faalis
109
122
  end
110
123
 
111
124
  def angularjs_app_path
112
- path = Faalis::Engine.dashboard_js_manifest.split("/")[0..-2].join("/")
113
- "app/assets/javascripts/#{path}/"
125
+ if options[:raw_path] != ""
126
+ options[:raw_path]
127
+ elsif options[:path] != ""
128
+ "app/assets/javascripts/#{options[:path]}/"
129
+ else
130
+ path = Faalis::Engine.dashboard_js_manifest.split("/")[0..-2].join("/")
131
+ "app/assets/javascripts/#{path}/"
132
+ end
114
133
  end
115
134
 
116
135
  # Tabs ------------------------------------
@@ -20,7 +20,7 @@
20
20
 
21
21
  <% end %>
22
22
  // <%= resource.pluralize %> Module
23
- var <%= resource.pluralize %> = angular.module("<%= resource %>", ["ListView", "Filter", "Anim"<% if options[:deps] %><% options[:deps].split(",").each do |dependency| %>, "<%= dependency.camelize %>"<% end %><% end %>]);
23
+ var <%= resource.pluralize %> = angular.module("<%= resource %>", ["ListView", "Filter", "Anim", "Fields",<% if options[:deps] %><% options[:deps].split(",").each do |dependency| %>, "<%= dependency.camelize %>"<% end %><% end %>]);
24
24
 
25
25
  // <%= resource.pluralize %> configuration section ---------------------------
26
26
  <%= resource.pluralize %>.config(["$routeProvider", function($routeProvider){
@@ -222,11 +222,13 @@ var <%= resource.pluralize %> = angular.module("<%= resource %>", ["ListView", "
222
222
  $scope.obj_id = null;
223
223
  var is_copy = false;
224
224
 
225
- <% fields.each do |name, type| %><% if ["belongs_to", "has_many"].include? type %><%= type.get_list %>.then(function(data){
226
- $scope.all_<%= type.resource_name %> = data;
227
- }, function(data){
228
- catch_error(data);
229
- });<% end %><% end %>
225
+ <% fields.each do |name, type| %><% if ["belongs_to", "in", "has_many"].include? type %>
226
+ $scope.<%= name %>_data = {
227
+ type: '<%= type %>',<% if type == "in" %>
228
+ choices: _.sortBy([<% type.to.split(",").each do |choice| %>{name: "<%= choice.underscore %>", title: "<%= choice.humanize %>"},<% end %>]),<% else %>
229
+ to: '<%= type.to %>',<% end %>
230
+ name: '<%= name %>'
231
+ };<% end %><% end %>
230
232
  <% fields.each do |name, type| %><% if type == "in" %>$scope.<%= name %>_choices = _.sortBy([<% type.to.split(",").each do |choice| %>
231
233
  {name: "<%= choice.underscore %>", title: "<%= choice.humanize %>"},<% end %>
232
234
  ], "title");<% end %><% end %>
@@ -248,7 +250,6 @@ var <%= resource.pluralize %> = angular.module("<%= resource %>", ["ListView", "
248
250
 
249
251
  }
250
252
 
251
-
252
253
  $scope.have = function(field, obj_id) {
253
254
  var tmp = _.where($scope[field], {id: obj_id});
254
255
  if (tmp.length > 0) {
@@ -265,6 +266,9 @@ var <%= resource.pluralize %> = angular.module("<%= resource %>", ["ListView", "
265
266
  };
266
267
 
267
268
  $scope.save = function(save_another){
269
+ $("small.error").html("");
270
+ $("small.error").removeClass("error");
271
+
268
272
  var <%= resource.underscore %> = {<%= resource.underscore %>: {<% fields.each do |field_name, field_type| %>
269
273
  <% if ["belongs_to"].include? field_type %><%= field_name %>_id: parseInt($scope.<%= field_name %>),<% else %><%= field_name %>: $scope.<%= field_name %>,<% end %><% end %>
270
274
  __res__: 0
@@ -1,97 +1,54 @@
1
1
  <% if any_tabs? %><section class="tabs"><% tab_count = 1 %>
2
2
  <ul><% tabs.each do |name, fields| %>
3
- <li ng-click="activate_tab(<%= tab_count %>)" ng-class="{active: current_tab == <%= tab_count %>, tab<%= tab_count %>: current_tab == <%= tab_count %>}"><span translate><%= name %></span></li> |<% tab_count += 1 %>
4
- <% end %></ul>
3
+ <li ng-click="activate_tab(<%= tab_count %>)" ng-class="{active: current_tab == <%= tab_count %>, tab<%= tab_count %>: current_tab == <%= tab_count %>}"><span translate><%= name %></span></li> |<% tab_count += 1 %><% end %>
4
+ </ul>
5
5
  </section><% end %>
6
+
6
7
  <% unless any_tabs? %>
7
8
  <form novalidate name="form">
8
9
  <div class="newform">
9
10
  <fieldset class="form">
10
11
 
11
- <legend ng-if="!editing"><span translate>New <%= resource.underscore.pluralize.humanize %></span></legend>
12
- <legend ng-if="editing"><span translate>Edit <%= resource.underscore.pluralize.humanize %></span></legend>
12
+ <legend ng-if="!editing"><span translate>New <%= resource.underscore.pluralize.humanize %></span></legend>
13
+ <legend ng-if="editing"><span translate>Edit <%= resource.underscore.pluralize.humanize %></span></legend>
13
14
 
14
- <% first = true %>
15
- <% fields.each do |field_name, field_type| %>
15
+ <% first = true %><% fields.each do |field_name, field_type| %>
16
16
  <% if first %><div class="row"><% end %>
17
17
  <div class="small-4 columns <% if not first %>float-left small-offset-2<% end %>">
18
- <label><% if required_fields.include? field_name %><i class="inline fa fa-asterisk"></i> <% end %><span translate><%= field_name.to_s.humanize.capitalize %></span> :</label>
19
- <% case field_type
20
- when "belongs_to" %>
21
- <select ui-select2="select2options" id="id_<%= field_name %>" ng-model="<%= field_name %>" name="<%= field_name %>" <% if required_fields.include? field_name %>required<% end %>>
22
- <option ng-repeat="item in all_<%= field_type.resource_name %>" value="{{ item.id }}" title="{{ item.name || item }}" ng-selected="item.id === <%= field_name %>.id">{{ item.name || item }}</option>
23
- </select>
24
- <% when "has_many" %>
25
- <select ui-select2="select2options" ng-model="<%= field_name %>" id="id_<%= field_name %>" name="<%= field_name %>" multiple <% if required_fields.include? field_name %>required<% end %>>
26
- <option ng-repeat="item in all_<%= field_type.resource_name %>" value="{{ item.id }}" title="{{ item.name || item }}" ng-selected="have('<%= field_name %>', item.id)">{{ item.name || item }}</option>
27
- </select>
28
- <% when "in" %>
29
- <select id="id_<%= field_name %>" ui-select2="select2options" ng-model="<%= field_name %>" name="<%= field_name %>" <% if required_fields.include? field_name %>required<% end %>>
30
- <option ng-repeat="item in <%= field_name %>_choices" value="{{ item.name }}" title="{{ item.title }}" ng-selected="<%= field_name %> === item.name">{{ item.title }}</option>
31
- </select>
32
- <% when "text" %>
33
- <textarea id="id_<%= field_name %>" class="rounded" ng-model="<%= field_name %>" name="<%= field_name %>" <% if required_fields.include? field_name %>required<% end %>></textarea>
34
- <% when "boolean" %>
35
- <input id="id_<%= field_name %>" ng-model="<%= field_name %>" type="checkbox" name="<%= field_name %>" class="rounded <%= field_type %>_field" <% if required_fields.include? field_name %>required<% end %> />
36
- <% when "datetime" %>
37
- <datepicker id="id_<%= field_name %>" ng-model="<%= field_name %>" class="datetime_field" name="<%= field_name %>" placeholder="{{ 'Click to pick a date' | translate }}" <% if required_fields.include? field_name %>required<% end %> />
38
- <% when "string", nil %>
39
- <input id="id_<%= field_name %>" ng-model="<%= field_name %>" name="<%= field_name %>" type="text" class="rounded <%= field_type %>_field" <% if required_fields.include? field_name %>required<% end %> />
18
+ <label><% if required_fields.include? field_name %><i class="inline fa fa-asterisk"></i> <% end %><span translate><%= field_name.to_s.humanize.capitalize %></span> :</label><% case field_type
19
+ when "belongs_to", "has_many", "in" %>
20
+ <relation-field select2-options="select2options" <% if required_fields.include? field_name %>required="true"<% end %> title-field="'name'" model="<%= field_name %>" field-data="<%= field_name %>_data">
21
+ </relation-field>
22
+ <% when nil %>
23
+ <string-field model="<%= field_name %>" field-name="'<%= field_name %>'" css-class="'rounded <%= field_type %>_field'" <% if required_fields.include? field_name %>required<% end %>></string-field>
40
24
  <% else %>
41
- <input id="id_<%= field_name %>" ng-model="<%= field_name %>" type="<%= field_type %>" name="<%= field_name %>" class="rounded <%= field_type %>_field" <% if required_fields.include? field_name %>required<% end %> />
42
- <% end %>
43
- <small id="id_<%= field_name %>_msg"></small>
44
- </div>
45
- <% if not first %></div><% end %>
46
- <% first = !first %>
47
- <% end %>
25
+ <<%= field_type%>-field model="<%= field_name %>" field-name="'<%= field_name %>'" css-class="'rounded <%= field_type %>_field'" <% if required_fields.include? field_name %>required="true"<% end %>></<%= field_type%>-field><% end %>
26
+ </div>
27
+ <% if not first %></div><% end %><% first = !first %><% end %>
48
28
  </fieldset>
49
29
  </form>
50
30
 
31
+ <% else %><form novalidate name="form"><% tab_count = 1 %><% tabs.each do |name, field_names| %>
32
+ <div class="newform">
33
+ <fieldset class="form" ng-show="current_tab == <%= tab_count %>">
34
+ <legend ng-if="!editing"><span translate>New <%= name %></span></legend>
35
+ <legend ng-if="editing"><span translate>Edit <%= name %></span></legend><% first = true %>
36
+ <% fields.each do |field_name, field_type| %><% if tabs[name].include? field_name or tabs[name].include? "__all__" %>
51
37
 
52
-
53
- <% else %><% tab_count = 1 %><% tabs.each do |name, field_names| %>
54
- <form novalidate name="form">
55
- <div class="newform">
56
- <fieldset class="form" ng-if="current_tab == <%= tab_count %>">
57
- <legend ng-if="!editing"><span translate>New <%= name %></span></legend>
58
- <legend ng-if="editing"><span translate>Edit <%= name %></span></legend><% first = true %>
59
- <% fields.each do |field_name, field_type| %><% if tabs[name].include? field_name or tabs[name].include? "__all__" %>
60
- <% if first %><div class="row"><% end %>
61
- <div class="small-4 columns <% if not first %>float-left small-offset-2<% end %>">
62
- <label><% if required_fields.include? field_name %><i class="inline fa fa-asterisk"></i> <% end %><span translate><%= field_name.to_s.humanize.capitalize %></span> :</label>
63
- <% case field_type
64
- when "belongs_to" %>
65
- <select ui-select2="select2options" id="id_<%= field_name %>" ng-model="<%= field_name %>" name="<%= field_name %>" <% if required_fields.include? field_name %>required<% end %>>
66
- <option ng-repeat="item in all_<%= field_type.resource_name %>" value="{{ item.id }}" title="{{ item.name || item }}" ng-selected="item.id === <%= field_name %>.id">{{ item.name || item }}</option>
67
- </select>
68
- <% when "has_many" %>
69
- <select ui-select2="select2options" ng-model="<%= field_name %>" id="id_<%= field_name %>" name="<%= field_name %>" multiple <% if required_fields.include? field_name %>required<% end %>>
70
- <option ng-repeat="item in all_<%= field_type.resource_name %>" value="{{ item.id }}" title="{{ item.name || item }}" ng-selected="have('<%= field_name %>', item.id)">{{ item.name || item }}</option>
71
- </select>
72
- <% when "in" %>
73
- <select ui-select2="select2options" id="id_<%= field_name %>" ng-model="<%= field_name %>" name="<%= field_name %>" <% if required_fields.include? field_name %>required<% end %>>
74
- <option ng-repeat="item in <%= field_name %>_choices" value="{{ item.name }}" title="{{ item.title }}" ng-selected="<%= field_name %> === item.name">{{ item.title }}</option>
75
- </select>
76
- <% when "text" %>
77
- <textarea id="id_<%= field_name %>" ng-model="<%= field_name %>" class="rounded" name="<%= field_name %>" <% if required_fields.include? field_name %>required<% end %>></textarea>
78
- <% when "boolean" %>
79
- <input id="id_<%= field_name %>" ng-model="<%= field_name %>" type="checkbox" name="<%= field_name %>" class="rounded <%= field_type %>_field" <% if required_fields.include? field_name %>required<% end %> />
80
- <% when "datetime" %>
81
- <datepicker id="id_<%= field_name %>" ng-model="<%= field_name %>" class="datetime_field" name="<%= field_name %>" placeholder="{{ 'Click to pick a date' | translate }}" <% if required_fields.include? field_name %>required<% end %> />
82
- <% when "string", nil %>
83
- <input id="id_<%= field_name %>" ng-model="<%= field_name %>" name="<%= field_name %>" type="text" class="rounded <%= field_type %>_field" <% if required_fields.include? field_name %>required<% end %> />
84
- <% else %>
85
- <input id="id_<%= field_name %>" ng-model="<%= field_name %>" type="<%= field_type %>" name="<%= field_name %>" class="rounded <%= field_type %>_field" <% if required_fields.include? field_name %>required<% end %> />
86
- <% end %>
87
- <small id="id_<%= field_name %>_msg"></small>
88
- </div>
89
- <% if not first %></div><% end %>
90
- <% first = !first %>
91
- <% end %>
92
- <% end %>
93
- </fieldset><% tab_count += 1 %>
94
- <% end %>
38
+ <% if first %><div class="row"><% end %>
39
+ <div class="small-4 columns <% if not first %>float-left small-offset-2<% end %>">
40
+ <label><% if required_fields.include? field_name %><i class="inline fa fa-asterisk"></i> <% end %><span translate><%= field_name.to_s.humanize.capitalize %></span> :</label><% case field_type
41
+ when "belongs_to", "has_many", "in" %>
42
+ <relation-field select2-options="select2options" <% if required_fields.include? field_name %>required="true"<% end %> title-field="'name'" model="<%= field_name %>" field-data="<%= field_name %>_data">
43
+ </relation-field>
44
+ <% when nil %>
45
+ <string-field model="<%= field_name %>" field-name="'<%= field_name %>'" css-class="'rounded <%= field_type %>_field'" <% if required_fields.include? field_name %>required<% end %>></string-field>
46
+ <% else %>
47
+ <<%= field_type%>-field model="<%= field_name %>" field-name="'<%= field_name %>'" css-class="'rounded <%= field_type %>_field'" <% if required_fields.include? field_name %>required="true"<% end %>></<%= field_type%>-field><% end %>
48
+ </div>
49
+ <% if not first %></div><% end %><% first = !first %><% end %><% end %>
50
+ </fieldset>
51
+ </div><% tab_count += 1 %><% end %>
95
52
  </form>
96
53
  <% end %>
97
54
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faalis
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sameer Rahmani
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-01-09 00:00:00.000000000 Z
12
+ date: 2014-01-29 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -67,6 +67,20 @@ dependencies:
67
67
  - - '>='
68
68
  - !ruby/object:Gem::Version
69
69
  version: '0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: mailboxer
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - '>='
82
+ - !ruby/object:Gem::Version
83
+ version: '0'
70
84
  - !ruby/object:Gem::Dependency
71
85
  name: jbuilder
72
86
  requirement: !ruby/object:Gem::Requirement
@@ -222,19 +236,19 @@ dependencies:
222
236
  - !ruby/object:Gem::Version
223
237
  version: '0'
224
238
  - !ruby/object:Gem::Dependency
225
- name: formtastic
239
+ name: model_discovery
226
240
  requirement: !ruby/object:Gem::Requirement
227
241
  requirements:
228
- - - '>='
242
+ - - ~>
229
243
  - !ruby/object:Gem::Version
230
- version: '0'
244
+ version: 0.2.0
231
245
  type: :runtime
232
246
  prerelease: false
233
247
  version_requirements: !ruby/object:Gem::Requirement
234
248
  requirements:
235
- - - '>='
249
+ - - ~>
236
250
  - !ruby/object:Gem::Version
237
- version: '0'
251
+ version: 0.2.0
238
252
  - !ruby/object:Gem::Dependency
239
253
  name: sqlite3
240
254
  requirement: !ruby/object:Gem::Requirement
@@ -332,6 +346,7 @@ files:
332
346
  - app/models/faalis/group.rb
333
347
  - app/models/faalis/user.rb
334
348
  - app/models/faalis/permission.rb
349
+ - app/models/faalis/permissions/auth.rb
335
350
  - app/views/devise/unlocks/new.html.erb
336
351
  - app/views/devise/sessions/new.html.erb
337
352
  - app/views/devise/confirmations/new.html.erb
@@ -346,7 +361,6 @@ files:
346
361
  - app/views/angularjs_templates/list-view/index.html
347
362
  - app/views/angularjs_templates/filter/index.html
348
363
  - app/views/angularjs_templates/modules.html
349
- - app/views/angularjs_templates/#index.html#
350
364
  - app/views/angularjs_templates/auth/users/new.html
351
365
  - app/views/angularjs_templates/auth/users/index.html
352
366
  - app/views/angularjs_templates/auth/users/details.html
@@ -355,17 +369,32 @@ files:
355
369
  - app/views/angularjs_templates/auth/groups/index.html
356
370
  - app/views/angularjs_templates/auth/groups/details.html
357
371
  - app/views/angularjs_templates/auth/profile/edit.html
372
+ - app/views/angularjs_templates/conversations/new.html
373
+ - app/views/angularjs_templates/conversations/show_details.html
374
+ - app/views/angularjs_templates/conversations/index.html
375
+ - app/views/angularjs_templates/conversations/show.html
376
+ - app/views/angularjs_templates/conversations/details.html
358
377
  - app/views/angularjs_templates/index.html
359
378
  - app/views/angularjs_templates/locale/fa.po
360
379
  - app/views/angularjs_templates/locale/templates.pot
361
380
  - app/views/angularjs_templates/logs/index.html
381
+ - app/views/angularjs_templates/fields/boolean/boolean.html
382
+ - app/views/angularjs_templates/fields/string/string.html
383
+ - app/views/angularjs_templates/fields/integer/integer.html
384
+ - app/views/angularjs_templates/fields/text/text.html
385
+ - app/views/angularjs_templates/fields/relation/relation.html
386
+ - app/views/angularjs_templates/fields/datetime/datetime.html
362
387
  - app/views/angularjs_templates/nav.html.erb
363
388
  - app/views/layouts/faalis/application.html.erb
364
389
  - app/views/layouts/faalis/dashboard.html.erb
365
390
  - app/views/faalis/home/index.html.erb
366
391
  - app/views/faalis/dashboard/index.html.erb
367
392
  - app/views/faalis/dashboard/login_required_page.html.erb
393
+ - app/views/faalis/api/v1/permissions/user_permissions.json.jbuilder
368
394
  - app/views/faalis/api/v1/permissions/index.json.jbuilder
395
+ - app/views/faalis/api/v1/conversations/show.json.jbuilder
396
+ - app/views/faalis/api/v1/conversations/create.json.jbuilder
397
+ - app/views/faalis/api/v1/conversations/index.json.jbuilder
369
398
  - app/views/faalis/api/v1/users/show.json.jbuilder
370
399
  - app/views/faalis/api/v1/users/show.html.erb
371
400
  - app/views/faalis/api/v1/users/edit.html.erb
@@ -424,8 +453,17 @@ files:
424
453
  - app/assets/javascripts/faalis/dashboard/modules/auth/user.js
425
454
  - app/assets/javascripts/faalis/dashboard/modules/api.js
426
455
  - app/assets/javascripts/faalis/dashboard/modules/modules.js
456
+ - app/assets/javascripts/faalis/dashboard/modules/conversations.js
427
457
  - app/assets/javascripts/faalis/dashboard/modules/filter.js
428
458
  - app/assets/javascripts/faalis/dashboard/modules/logs.js
459
+ - app/assets/javascripts/faalis/dashboard/modules/permissions.js
460
+ - app/assets/javascripts/faalis/dashboard/modules/fields/relation.js
461
+ - app/assets/javascripts/faalis/dashboard/modules/fields/datetime.js
462
+ - app/assets/javascripts/faalis/dashboard/modules/fields/string.js
463
+ - app/assets/javascripts/faalis/dashboard/modules/fields/boolean.js
464
+ - app/assets/javascripts/faalis/dashboard/modules/fields/fields.js
465
+ - app/assets/javascripts/faalis/dashboard/modules/fields/integer.js
466
+ - app/assets/javascripts/faalis/dashboard/modules/fields/text.js
429
467
  - app/assets/javascripts/faalis/dashboard/modules/errors.js
430
468
  - app/assets/javascripts/faalis/dashboard/functions.js.erb
431
469
  - app/assets/javascripts/faalis/dashboard/application.js.erb
@@ -491,6 +529,7 @@ files:
491
529
  - app/controllers/faalis/api/v1/users_controller.rb
492
530
  - app/controllers/faalis/api/v1/logs_controller.rb
493
531
  - app/controllers/faalis/api/v1/permissions_controller.rb
532
+ - app/controllers/faalis/api/v1/conversations_controller.rb
494
533
  - app/controllers/faalis/api/v1/groups_controller.rb
495
534
  - app/controllers/faalis/api/v1/profiles_controller.rb
496
535
  - app/helpers/faalis/users_helper.rb
@@ -506,10 +545,10 @@ files:
506
545
  - config/locales/devise.en.yml
507
546
  - config/locales/faalis.pot
508
547
  - config/initializers/devise.rb
509
- - db/migrate/20131021170923_create_red_base_permissions.rb
548
+ - db/migrate/20131020124701_create_faalis_groups.rb
549
+ - db/migrate/20131021170923_create_faalis_permissions.rb
510
550
  - db/migrate/20131123120422_add_permissions_groups_table.rb
511
- - db/migrate/20131020124701_create_red_base_groups.rb
512
- - db/migrate/20131013091000_devise_create_red_base_users.rb
551
+ - db/migrate/20131013091000_devise_create_faalis_users.rb
513
552
  - db/seeds.rb
514
553
  - lib/faalis_plugin.rb
515
554
  - lib/tasks/faalis_tasks.rake
@@ -550,6 +589,7 @@ files:
550
589
  - lib/generators/faalis/install_specs_generator.rb
551
590
  - lib/faalis/initialize.rb
552
591
  - lib/faalis/i18n.rb
592
+ - lib/faalis/permissions.rb
553
593
  - lib/faalis/plugins.rb
554
594
  - lib/faalis/dashboard.rb
555
595
  - lib/faalis/active_record.rb
@@ -1,8 +0,0 @@
1
- <div class="row">
2
- <div class="small-2 columns widget whitewidget text-center">
3
- <h3>34 <i class="fa fa-user"></i></h3>
4
- </div>
5
- <div class="small-2 columns widget greenwidget">
6
- sdfsdf
7
- </div>
8
- </div>