faalis 0.7.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 (286) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +339 -0
  3. data/README.md +45 -0
  4. data/Rakefile +42 -0
  5. data/app/assets/fonts/DroidNaskh-Bold.ttf +0 -0
  6. data/app/assets/fonts/DroidNaskh-Regular.ttf +0 -0
  7. data/app/assets/fonts/OpenSans-Bold.ttf +0 -0
  8. data/app/assets/fonts/OpenSans-BoldItalic.ttf +0 -0
  9. data/app/assets/fonts/OpenSans-ExtraBold.ttf +0 -0
  10. data/app/assets/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  11. data/app/assets/fonts/OpenSans-Italic.ttf +0 -0
  12. data/app/assets/fonts/OpenSans-Light.ttf +0 -0
  13. data/app/assets/fonts/OpenSans-LightItalic.ttf +0 -0
  14. data/app/assets/fonts/OpenSans-Regular.ttf +0 -0
  15. data/app/assets/fonts/OpenSans-Semibold.ttf +0 -0
  16. data/app/assets/fonts/OpenSans-SemiboldItalic.ttf +0 -0
  17. data/app/assets/images/faalis/select2-spinner.gif +0 -0
  18. data/app/assets/images/faalis/select2.png +0 -0
  19. data/app/assets/images/faalis/select2x2.png +0 -0
  20. data/app/assets/javascripts/faalis/application.js +20 -0
  21. data/app/assets/javascripts/faalis/dashboard/angular.js +9 -0
  22. data/app/assets/javascripts/faalis/dashboard/app.js +75 -0
  23. data/app/assets/javascripts/faalis/dashboard/application.js.erb +21 -0
  24. data/app/assets/javascripts/faalis/dashboard/functions.js.erb +91 -0
  25. data/app/assets/javascripts/faalis/dashboard/init.js +38 -0
  26. data/app/assets/javascripts/faalis/dashboard/lib/angular-animate.js +1226 -0
  27. data/app/assets/javascripts/faalis/dashboard/lib/angular-gettext.js +202 -0
  28. data/app/assets/javascripts/faalis/dashboard/lib/angular-resource.js +578 -0
  29. data/app/assets/javascripts/faalis/dashboard/lib/angular-route.js +880 -0
  30. data/app/assets/javascripts/faalis/dashboard/lib/angular.js +20031 -0
  31. data/app/assets/javascripts/faalis/dashboard/lib/lodash.underscore.js +4893 -0
  32. data/app/assets/javascripts/faalis/dashboard/lib/ng-grid.js +3260 -0
  33. data/app/assets/javascripts/faalis/dashboard/lib/ng-quick-date.js +297 -0
  34. data/app/assets/javascripts/faalis/dashboard/lib/restangular.js +1066 -0
  35. data/app/assets/javascripts/faalis/dashboard/lib/select2.js +3255 -0
  36. data/app/assets/javascripts/faalis/dashboard/lib/ui.select2.js +217 -0
  37. data/app/assets/javascripts/faalis/dashboard/locale/translations.js +5 -0
  38. data/app/assets/javascripts/faalis/dashboard/modules/anim.js +32 -0
  39. data/app/assets/javascripts/faalis/dashboard/modules/api.js +32 -0
  40. data/app/assets/javascripts/faalis/dashboard/modules/auth/auth.js +34 -0
  41. data/app/assets/javascripts/faalis/dashboard/modules/auth/group.js +174 -0
  42. data/app/assets/javascripts/faalis/dashboard/modules/auth/profile.js +59 -0
  43. data/app/assets/javascripts/faalis/dashboard/modules/auth/user.js +123 -0
  44. data/app/assets/javascripts/faalis/dashboard/modules/errors.js +47 -0
  45. data/app/assets/javascripts/faalis/dashboard/modules/filter.js +44 -0
  46. data/app/assets/javascripts/faalis/dashboard/modules/list-view.js +310 -0
  47. data/app/assets/javascripts/faalis/dashboard/modules/logs.js +41 -0
  48. data/app/assets/javascripts/faalis/dashboard/modules/modules.js +50 -0
  49. data/app/assets/javascripts/faalis/dashboard/modules/nav.js.erb +97 -0
  50. data/app/assets/javascripts/faalis/dashboard/templates/application.handlebars.erb +42 -0
  51. data/app/assets/javascripts/faalis/dashboard/templates/auth/groups/details.handlebars.erb +15 -0
  52. data/app/assets/javascripts/faalis/dashboard/templates/auth/groups/index.handlebars.erb +7 -0
  53. data/app/assets/javascripts/faalis/dashboard/templates/auth/groups/new.handlebars.erb +39 -0
  54. data/app/assets/javascripts/faalis/dashboard/templates/auth/index.handlebars.erb +31 -0
  55. data/app/assets/javascripts/faalis/dashboard/templates/auth/users/details.handlebars.erb +15 -0
  56. data/app/assets/javascripts/faalis/dashboard/templates/auth/users/index.handlebars.erb +11 -0
  57. data/app/assets/javascripts/faalis/dashboard/templates/auth/users/new.handlebars.erb +33 -0
  58. data/app/assets/javascripts/faalis/dashboard/templates/components/list-view.handlebars.erb +59 -0
  59. data/app/assets/javascripts/faalis/dashboard/templates/components/model-form.handlebars.erb +3 -0
  60. data/app/assets/javascripts/faalis/dashboard/templates/modules.handlebars.erb +15 -0
  61. data/app/assets/javascripts/faalis/dashboard/templates/navigation.handlebars.erb +43 -0
  62. data/app/assets/javascripts/faalis/dashboard/templates/widgets.handlebars +23 -0
  63. data/app/assets/javascripts/faalis/dashboard/variables.js.erb +17 -0
  64. data/app/assets/javascripts/faalis/groups.js +2 -0
  65. data/app/assets/javascripts/faalis/home.js +2 -0
  66. data/app/assets/javascripts/faalis/i18n.js +13 -0
  67. data/app/assets/javascripts/faalis/locale/en.json +27 -0
  68. data/app/assets/javascripts/faalis/locale/fa.json +27 -0
  69. data/app/assets/javascripts/faalis/users.js +2 -0
  70. data/app/assets/stylesheets/faalis/base.css.scss +264 -0
  71. data/app/assets/stylesheets/faalis/dashboard/dashboard.css.scss +226 -0
  72. data/app/assets/stylesheets/faalis/dashboard/list_view.css.scss +169 -0
  73. data/app/assets/stylesheets/faalis/dashboard/ltr/application.css +26 -0
  74. data/app/assets/stylesheets/faalis/dashboard/ltr/base.css.scss.erb +28 -0
  75. data/app/assets/stylesheets/faalis/dashboard/ltr/buttons.css.scss.erb +48 -0
  76. data/app/assets/stylesheets/faalis/dashboard/ltr/direction.css.scss +38 -0
  77. data/app/assets/stylesheets/faalis/dashboard/ltr/foundation_and_overrides.css.scss +1014 -0
  78. data/app/assets/stylesheets/faalis/dashboard/ng-grid.css.scss +442 -0
  79. data/app/assets/stylesheets/faalis/dashboard/ng-quick-date-default-theme.css.scss +20 -0
  80. data/app/assets/stylesheets/faalis/dashboard/ng-quick-date.css.scss +19 -0
  81. data/app/assets/stylesheets/faalis/dashboard/rtl/application.css +26 -0
  82. data/app/assets/stylesheets/faalis/dashboard/rtl/base.css.scss.erb +31 -0
  83. data/app/assets/stylesheets/faalis/dashboard/rtl/base.css_flymake.scss +25 -0
  84. data/app/assets/stylesheets/faalis/dashboard/rtl/buttons.css.scss.erb +45 -0
  85. data/app/assets/stylesheets/faalis/dashboard/rtl/direction.css.scss +37 -0
  86. data/app/assets/stylesheets/faalis/dashboard/rtl/foundation_and_overrides.css.scss +1014 -0
  87. data/app/assets/stylesheets/faalis/dashboard/select2.css.scss.erb +618 -0
  88. data/app/assets/stylesheets/faalis/dashboard/sidebar.css.scss +93 -0
  89. data/app/assets/stylesheets/faalis/devise.css.scss +34 -0
  90. data/app/assets/stylesheets/faalis/groups.css +4 -0
  91. data/app/assets/stylesheets/faalis/home.css.scss +14 -0
  92. data/app/assets/stylesheets/faalis/ltr/application.css +20 -0
  93. data/app/assets/stylesheets/faalis/ltr/buttons.css.scss.erb +48 -0
  94. data/app/assets/stylesheets/faalis/ltr/foundation_and_overrides.scss.erb +1012 -0
  95. data/app/assets/stylesheets/faalis/mixins.css.scss +15 -0
  96. data/app/assets/stylesheets/faalis/rtl/application.css +20 -0
  97. data/app/assets/stylesheets/faalis/rtl/buttons.css.scss.erb +48 -0
  98. data/app/assets/stylesheets/faalis/rtl/foundation_and_overrides.scss.erb +1012 -0
  99. data/app/assets/stylesheets/faalis/users.css +4 -0
  100. data/app/assets/stylesheets/faalis/variables.css.scss +102 -0
  101. data/app/controllers/faalis/api/v1/groups_controller.rb +75 -0
  102. data/app/controllers/faalis/api/v1/logs_controller.rb +12 -0
  103. data/app/controllers/faalis/api/v1/permissions_controller.rb +17 -0
  104. data/app/controllers/faalis/api/v1/profiles_controller.rb +42 -0
  105. data/app/controllers/faalis/api/v1/users_controller.rb +75 -0
  106. data/app/controllers/faalis/api_controller.rb +51 -0
  107. data/app/controllers/faalis/application_controller.rb +34 -0
  108. data/app/controllers/faalis/dashboard_controller.rb +44 -0
  109. data/app/controllers/faalis/home_controller.rb +19 -0
  110. data/app/controllers/faalis/omniauth/callbacks_controller.rb +43 -0
  111. data/app/helpers/faalis/application_helper.rb +4 -0
  112. data/app/helpers/faalis/dashboard_helper.rb +5 -0
  113. data/app/helpers/faalis/groups_helper.rb +4 -0
  114. data/app/helpers/faalis/home_helper.rb +4 -0
  115. data/app/helpers/faalis/users_helper.rb +4 -0
  116. data/app/models/ability.rb +42 -0
  117. data/app/models/faalis/group.rb +27 -0
  118. data/app/models/faalis/permission.rb +15 -0
  119. data/app/models/faalis/user.rb +81 -0
  120. data/app/views/angularjs_templates/#index.html# +8 -0
  121. data/app/views/angularjs_templates/auth/groups/details.html +21 -0
  122. data/app/views/angularjs_templates/auth/groups/index.html +5 -0
  123. data/app/views/angularjs_templates/auth/groups/new.html +41 -0
  124. data/app/views/angularjs_templates/auth/index.html +30 -0
  125. data/app/views/angularjs_templates/auth/profile/edit.html +54 -0
  126. data/app/views/angularjs_templates/auth/users/details.html +28 -0
  127. data/app/views/angularjs_templates/auth/users/index.html +6 -0
  128. data/app/views/angularjs_templates/auth/users/new.html +56 -0
  129. data/app/views/angularjs_templates/filter/index.html +15 -0
  130. data/app/views/angularjs_templates/index.html +8 -0
  131. data/app/views/angularjs_templates/list-view/index.html +81 -0
  132. data/app/views/angularjs_templates/locale/fa.po +25 -0
  133. data/app/views/angularjs_templates/locale/templates.pot +24 -0
  134. data/app/views/angularjs_templates/logs/index.html +6 -0
  135. data/app/views/angularjs_templates/modules.html +17 -0
  136. data/app/views/angularjs_templates/nav.html.erb +38 -0
  137. data/app/views/devise/confirmations/new.html.erb +34 -0
  138. data/app/views/devise/mailer/confirmation_instructions.html.erb +5 -0
  139. data/app/views/devise/mailer/reset_password_instructions.html.erb +8 -0
  140. data/app/views/devise/mailer/unlock_instructions.html.erb +7 -0
  141. data/app/views/devise/passwords/edit.html.erb +44 -0
  142. data/app/views/devise/passwords/new.html.erb +32 -0
  143. data/app/views/devise/registrations/edit.html.erb +29 -0
  144. data/app/views/devise/registrations/new.html.erb +91 -0
  145. data/app/views/devise/sessions/new.html.erb +98 -0
  146. data/app/views/devise/shared/_links.erb +25 -0
  147. data/app/views/devise/unlocks/new.html.erb +30 -0
  148. data/app/views/faalis/api/v1/groups/create.json.jbuilder +4 -0
  149. data/app/views/faalis/api/v1/groups/destroy.html.erb +2 -0
  150. data/app/views/faalis/api/v1/groups/destroy.json.jbuilder +1 -0
  151. data/app/views/faalis/api/v1/groups/edit.html.erb +2 -0
  152. data/app/views/faalis/api/v1/groups/index.html.erb +2 -0
  153. data/app/views/faalis/api/v1/groups/index.json.jbuilder +6 -0
  154. data/app/views/faalis/api/v1/groups/new.html.erb +2 -0
  155. data/app/views/faalis/api/v1/groups/show.html.erb +2 -0
  156. data/app/views/faalis/api/v1/groups/show.json.jbuilder +5 -0
  157. data/app/views/faalis/api/v1/groups/update.json.jbuilder +4 -0
  158. data/app/views/faalis/api/v1/logs/index.json.jbuilder +1 -0
  159. data/app/views/faalis/api/v1/permissions/index.json.jbuilder +1 -0
  160. data/app/views/faalis/api/v1/users/create.html.erb +2 -0
  161. data/app/views/faalis/api/v1/users/create.json.jbuilder +1 -0
  162. data/app/views/faalis/api/v1/users/destroy.json.jbuilder +1 -0
  163. data/app/views/faalis/api/v1/users/distroy.html.erb +2 -0
  164. data/app/views/faalis/api/v1/users/edit.html.erb +2 -0
  165. data/app/views/faalis/api/v1/users/index.html.erb +2 -0
  166. data/app/views/faalis/api/v1/users/index.json.jbuilder +4 -0
  167. data/app/views/faalis/api/v1/users/show.html.erb +2 -0
  168. data/app/views/faalis/api/v1/users/show.json.jbuilder +2 -0
  169. data/app/views/faalis/api/v1/users/update.json.jbuilder +1 -0
  170. data/app/views/faalis/dashboard/index.html.erb +37 -0
  171. data/app/views/faalis/dashboard/login_required_page.html.erb +5 -0
  172. data/app/views/faalis/home/index.html.erb +119 -0
  173. data/app/views/layouts/faalis/application.html.erb +90 -0
  174. data/app/views/layouts/faalis/dashboard.html.erb +21 -0
  175. data/config/initializers/devise.rb +28 -0
  176. data/config/locales/devise.en.yml +59 -0
  177. data/config/locales/devise.fa.yml +56 -0
  178. data/config/locales/fa/LC_MESSAGES/faalis.mo +0 -0
  179. data/config/locales/fa/faalis.po +181 -0
  180. data/config/locales/fa/messages.mo +0 -0
  181. data/config/locales/faalis.pot +181 -0
  182. data/config/routes.rb +36 -0
  183. data/db/migrate/20131013091000_devise_create_red_base_users.rb +64 -0
  184. data/db/migrate/20131020124701_create_red_base_groups.rb +9 -0
  185. data/db/migrate/20131021170923_create_red_base_permissions.rb +10 -0
  186. data/db/migrate/20131123120422_add_permissions_groups_table.rb +8 -0
  187. data/db/seeds.rb +15 -0
  188. data/lib/faalis.rb +30 -0
  189. data/lib/faalis/active_record.rb +64 -0
  190. data/lib/faalis/api.rb +61 -0
  191. data/lib/faalis/api/groups_api.rb +41 -0
  192. data/lib/faalis/api/permissions_api.rb +24 -0
  193. data/lib/faalis/api/root.rb +15 -0
  194. data/lib/faalis/api/users_api.rb +20 -0
  195. data/lib/faalis/cucumber.rb +25 -0
  196. data/lib/faalis/cucumber/auth.rb +45 -0
  197. data/lib/faalis/cucumber/exceptions.rb +40 -0
  198. data/lib/faalis/cucumber/interaction.rb +43 -0
  199. data/lib/faalis/cucumber/query.rb +28 -0
  200. data/lib/faalis/cucumber/urls.rb +76 -0
  201. data/lib/faalis/dashboard.rb +60 -0
  202. data/lib/faalis/dashboard/controller.rb +42 -0
  203. data/lib/faalis/dashboard/module.rb +45 -0
  204. data/lib/faalis/engine.rb +128 -0
  205. data/lib/faalis/exceptions.rb +26 -0
  206. data/lib/faalis/i18n.rb +35 -0
  207. data/lib/faalis/initialize.rb +7 -0
  208. data/lib/faalis/omniauth.rb +24 -0
  209. data/lib/faalis/omniauth/callbacks.rb +58 -0
  210. data/lib/faalis/plugins.rb +44 -0
  211. data/lib/faalis/version.rb +22 -0
  212. data/lib/faalis_plugin.rb +476 -0
  213. data/lib/generators/faalis/USAGE +8 -0
  214. data/lib/generators/faalis/angularjs_resource_generator.rb +74 -0
  215. data/lib/generators/faalis/install_all_generator.rb +38 -0
  216. data/lib/generators/faalis/install_generator.rb +42 -0
  217. data/lib/generators/faalis/install_specs_generator.rb +48 -0
  218. data/lib/generators/faalis/js_scaffold_generator.rb +273 -0
  219. data/lib/generators/faalis/templates/README +41 -0
  220. data/lib/generators/faalis/templates/SPECS +13 -0
  221. data/lib/generators/faalis/templates/angularjs/details.html.erb +20 -0
  222. data/lib/generators/faalis/templates/angularjs/index.html.erb +62 -0
  223. data/lib/generators/faalis/templates/angularjs/module.js.erb +309 -0
  224. data/lib/generators/faalis/templates/angularjs/new.html.erb +105 -0
  225. data/lib/generators/faalis/templates/api/controller.rb.erb +56 -0
  226. data/lib/generators/faalis/templates/devise.rb +251 -0
  227. data/lib/generators/faalis/templates/faalis.rb +14 -0
  228. data/lib/generators/faalis/templates/fast_gettext.rb +4 -0
  229. data/lib/generators/faalis/templates/features/api.feature +92 -0
  230. data/lib/generators/faalis/templates/features/api.step.rb +7 -0
  231. data/lib/generators/faalis/templates/features/step_definitions/email_steps.rb +206 -0
  232. data/lib/generators/faalis/templates/features/support/email_spec.rb +1 -0
  233. data/lib/generators/faalis/templates/features/support/env.rb +79 -0
  234. data/lib/generators/faalis/templates/formtastic.rb +76 -0
  235. data/lib/generators/faalis/templates/js_scaffold.README +25 -0
  236. data/lib/generators/faalis/templates/seeds.rb +1 -0
  237. data/lib/generators/faalis/templates/spec/factories/groups.rb +5 -0
  238. data/lib/generators/faalis/templates/spec/factories/users.rb +10 -0
  239. data/lib/generators/faalis/templates/spec/spec_helper.rb +69 -0
  240. data/lib/generators/faalis/templates/spec/support/devise.rb +3 -0
  241. data/lib/generators/faalis/templates/views/create.json.jbuilder.erb +2 -0
  242. data/lib/generators/faalis/templates/views/destroy.json.jbuilder.erb +1 -0
  243. data/lib/generators/faalis/templates/views/index.json.jbuilder.erb +10 -0
  244. data/lib/generators/faalis/templates/views/show.json.jbuilder.erb +7 -0
  245. data/lib/generators/faalis/templates/views/update.json.jbuilder.erb +6 -0
  246. data/lib/generators/faalis/views_generator.rb +41 -0
  247. data/lib/tasks/faalis_tasks.rake +23 -0
  248. data/lib/tasks/grunt/Gruntfile.js +25 -0
  249. data/spec/dummy/README.rdoc +28 -0
  250. data/spec/dummy/Rakefile +6 -0
  251. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  252. data/spec/dummy/app/assets/stylesheets/application.css +13 -0
  253. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  254. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  255. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  256. data/spec/dummy/bin/bundle +3 -0
  257. data/spec/dummy/bin/rails +4 -0
  258. data/spec/dummy/bin/rake +4 -0
  259. data/spec/dummy/config.ru +4 -0
  260. data/spec/dummy/config/application.rb +23 -0
  261. data/spec/dummy/config/boot.rb +5 -0
  262. data/spec/dummy/config/database.yml +25 -0
  263. data/spec/dummy/config/environment.rb +5 -0
  264. data/spec/dummy/config/environments/development.rb +29 -0
  265. data/spec/dummy/config/environments/production.rb +80 -0
  266. data/spec/dummy/config/environments/test.rb +36 -0
  267. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  268. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  269. data/spec/dummy/config/initializers/inflections.rb +16 -0
  270. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  271. data/spec/dummy/config/initializers/secret_token.rb +12 -0
  272. data/spec/dummy/config/initializers/session_store.rb +3 -0
  273. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  274. data/spec/dummy/config/locales/en.yml +23 -0
  275. data/spec/dummy/config/routes.rb +4 -0
  276. data/spec/dummy/db/test.sqlite3 +0 -0
  277. data/spec/dummy/log/development.log +0 -0
  278. data/spec/dummy/log/test.log +15 -0
  279. data/spec/dummy/public/404.html +58 -0
  280. data/spec/dummy/public/422.html +58 -0
  281. data/spec/dummy/public/500.html +57 -0
  282. data/spec/dummy/public/favicon.ico +0 -0
  283. data/spec/dummy/tmp/ember-rails/ember-data.js +10204 -0
  284. data/spec/dummy/tmp/ember-rails/ember.js +36991 -0
  285. data/spec/spec_helper.rb +52 -0
  286. metadata +678 -0
@@ -0,0 +1,6 @@
1
+ <list-view buttons="buttons" objects="users" title-attribute="'email'" details-template="details_template" item-per-page="10" on_delete="on_delete">
2
+
3
+ <div class="small-6 column text-left clearpadding">
4
+ <h3><i class="fa fa-group"></i> <span translate>Users</span></h3>
5
+ </div>
6
+ </list-view>
@@ -0,0 +1,56 @@
1
+ <div class="newform">
2
+ <fieldset class="form">
3
+
4
+ <legend translate>New User</legend>
5
+
6
+ <div class="row">
7
+ <div class="small-4 columns">
8
+ <label for="first_name" translate>First Name :</label>
9
+ <input id="id_first_name" type="text" name="first_name" required ng-model="first_name" required>
10
+ <small id="id_first_name_msg"></small>
11
+ </div>
12
+
13
+ <div class="small-4 columns float-left small-offset-2">
14
+ <label for="last_name" translate>Last Name :</label>
15
+ <input id="id_last_name" type="text" name="last_name" required ng-model="last_name">
16
+ <small id="id_last_name_msg"></small>
17
+
18
+ </div>
19
+ </div>
20
+ <div class="row">
21
+ <div class="small-4 columns">
22
+ <label for="password" translate>Password :</label>
23
+ <input id="id_password" type="password" name="password" required ng-model="password">
24
+ <small id="id_password_msg"></small>
25
+
26
+ </div>
27
+
28
+ <div class="small-4 columns float-left small-offset-2">
29
+ <label for="email" translate>E-mail :</label>
30
+ <input id="id_email" type="email" name="email" required ng-model="email">
31
+ <small id="id_email_msg"></small>
32
+
33
+ </div>
34
+ </div>
35
+ <div class="row">
36
+ <div class="small-4 columns">
37
+ <label for="group" translate>Group :</label>
38
+ <select id="id_group" name="group" required ng-model="group">
39
+ <option ng-repeat="item in groups" value="{{item.id}}" ng-select="item.id === group">{{item.name}}</option>
40
+ </select>
41
+ <small id="id_group_msg"></small>
42
+
43
+ </div>
44
+
45
+ </div>
46
+
47
+ </fieldset>
48
+
49
+ <div class="row">
50
+ <div class="small-4 columns">
51
+ <button ng-click="save()" class="btn small green" ng-disabled="form.first_name.$pristine || form.first_name.$dirty && form.fist_name.$invalid"><i class="fa fa-check"></i> <span translate>Save</span></button>
52
+ <button ng-click="cancel()" class="btn small red"><i class="fa fa-times"></i> <span translate>Cancel</span></button>
53
+ </div>
54
+ </div>
55
+
56
+ </div>
@@ -0,0 +1,15 @@
1
+ <div class="filter_box">
2
+ <form id="bulk_form">
3
+ <fieldset class="row clearmargin">
4
+ <legend translate>Filter</legend>
5
+
6
+ <div class="row">
7
+ <div class="small-6 columns search-bar">
8
+ <input type="search" class="append " ng-model="searchterm" placeholder="{{ 'Search' | translate}} ..."/>
9
+ <span class="append radius"><i class="fa fa-search"></i></span>
10
+ </div>
11
+ </div>
12
+ </fieldset>
13
+
14
+ </form>
15
+ </div>
@@ -0,0 +1,8 @@
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>
@@ -0,0 +1,81 @@
1
+
2
+ <div class="row clearmargin" data-ng-transclude>
3
+ </div>
4
+
5
+
6
+ <div class="table-list">
7
+ <ul>
8
+ <li class="table-header">
9
+ <div class="small-6 columns text-left buttons-header">
10
+ <span data-ng-repeat="button in buttons" class="{{ button.classes }}"><a object-action object="button"><i class="{{ button.icon }}"></i> {{ button.title | translate }}</a></span>
11
+ </div>
12
+
13
+ <div class="small-2 columns text-right list-type">
14
+ <span ng-click="grid_view = false; list_view = true" ng-class="{active: list_view == true}"><i class="fa fa-th-list"></i></span>
15
+ <span ng-click="grid_view = true; list_view = false" ng-class="{active: grid_view == true}"><i class="fa fa-table"></i></span>
16
+ </div>
17
+ <div class="small-4 columns text-right search-bar" ng-if="search == true">
18
+ <input type="search" class="append " ng-model="searchterm" placeholder="{{ 'Search' | translate}} ..."/>
19
+ <span class="append radius"><i class="fa fa-search"></i></span>
20
+ </div>
21
+
22
+ </li>
23
+
24
+ <!-- List view data list -->
25
+ <li ng-if="(get_current_page().length == 0) && (list_view == true)"><span translate>There is no data!</span></li>
26
+
27
+ <li ng-repeat="object in get_current_page()" ng-if="list_view == true" ng-class="{'selected': object.is_selected}" class="pointer">
28
+ <i ng-click="toggle_details(object)" class="{{ handle_icon }} {{ handle_icon_expand(object) }} handle fa "></i>
29
+
30
+ <div class="title" ng-click="select_item(object)">
31
+ {{ object[title_attr] }}
32
+ </div>
33
+
34
+ <div ng-show="should_view(object)" class="details">
35
+ <div ng-include="details_template">
36
+ </div>
37
+ </div>
38
+
39
+ </li>
40
+
41
+ <!-- Grid view data list -->
42
+ <li ng-if="grid_view == true" class="grid">
43
+ <div class="grid-style" ng-grid="grid_options"></div>
44
+ </li>
45
+
46
+
47
+
48
+ <li class="table-summery">
49
+ <div class="small-6 columns">
50
+ <div class="pagination">
51
+ <span ng-if="has_pagination()">
52
+ <i class="fa {{ first_page_icon }}" ng-click="go_to_first_page()"></i>
53
+ <i class="fa {{ prev_page_icon }}" ng-click="go_to_prev_page()"></i>
54
+
55
+ <input type="text" class="pagination_input" ng-model="targetpage" ng-keypress="go_to_page($event, targetpage)" tabindex="3" value="{{current_page()}}"/>
56
+
57
+ <i class="fa {{ next_page_icon }}" ng-click="go_to_next_page()"></i>
58
+ <i class="fa {{ last_page_icon }}" ng-click="go_to_last_page()"></i>
59
+
60
+ <span class="elabel rounded lightergray" title="{{ 'Current Page' | translate }}"><i class="fa fa-file-o"></i> {{ current_page() }}</span>
61
+ <span class="elabel rounded lightergray" title="{{ 'Total Pages' | translate}}"><i class="fa fa-files-o"></i> {{ total_pages() }}</span>
62
+ </span>
63
+
64
+ <span class="elabel rounded lightergray" title="{{ 'Item(s)' | translate }}"><i class="fa fa-list-ul"></i> {{ objects_count() }}</span>
65
+ <span class="elabel rounded lightergray" title="{{ 'Selected' | translate }}"><i class="fa {{ hand_icon }}"></i> {{ selected_count() }}
66
+ </span>
67
+ </div>
68
+
69
+ </div>
70
+ <div class="small-6 columns text-right">
71
+ <span class="btn yellow tiny" ng-click="toggle_select()" translate>Toggle Select</span>
72
+ <span class="btn blue tiny" ng-if="! is_all_selected" ng-click="select_all()" >Select All</span>
73
+ <span class="btn blue tiny" ng-if="is_all_selected" ng-click="select_all()">Deselect All</span>
74
+ <span class="btn red tiny" ng-click="delete_items()" translate>Delete</span>
75
+ </div>
76
+
77
+ </li>
78
+
79
+
80
+ </ul>
81
+ </div>
@@ -0,0 +1,25 @@
1
+ msgid ""
2
+ msgstr ""
3
+ "Content-Type: text/plain; charset=UTF-8\n"
4
+ "Content-Transfer-Encoding: 8bit\n"
5
+ "Language: fa\n"
6
+
7
+ #: app/assets/templates/nav.html
8
+ msgid "Menu"
9
+ msgstr "منو"
10
+
11
+ #: app/assets/templates/nav.html
12
+ msgid "Languages"
13
+ msgstr "زبان ها"
14
+
15
+ #: app/assets/templates/nav.html
16
+ msgid "Dashboard"
17
+ msgstr "بخش کاربری"
18
+
19
+ #: app/assets/templates/nav.html
20
+ msgid "Change Password"
21
+ msgstr "تغییر کامه عبور"
22
+
23
+ #: app/assets/templates/nav.html
24
+ msgid "Sign Out"
25
+ msgstr "خروج"
@@ -0,0 +1,24 @@
1
+ msgid ""
2
+ msgstr ""
3
+ "Content-Type: text/plain; charset=UTF-8\n"
4
+ "Content-Transfer-Encoding: 8bit\n"
5
+
6
+ #: app/assets/templates/nav.html
7
+ msgid "Menu"
8
+ msgstr ""
9
+
10
+ #: app/assets/templates/nav.html
11
+ msgid "Languages"
12
+ msgstr ""
13
+
14
+ #: app/assets/templates/nav.html
15
+ msgid "Dashboard"
16
+ msgstr ""
17
+
18
+ #: app/assets/templates/nav.html
19
+ msgid "Change Password"
20
+ msgstr ""
21
+
22
+ #: app/assets/templates/nav.html
23
+ msgid "Sign Out"
24
+ msgstr ""
@@ -0,0 +1,6 @@
1
+ <div class="row clearmargin">
2
+ <fieldset class="small-12 columns">
3
+ <legend translate>Logs</legend>
4
+ <div ng-bind-html="logs"></div>
5
+ </fieldset>
6
+ </div>
@@ -0,0 +1,17 @@
1
+ <ul data-ng-controller="ModulesController as controller">
2
+
3
+ <li ng-click="controller.on_click('/')"><p><i class="fa fa-dashboard"></i> <span translate>Dashboard</span></p></li>
4
+
5
+ <li data-ng-repeat="module in controller.modules">
6
+ <p ng-click="controller.view_menu(module)"><i class="{{ module.icon }}"></i> <span translate>{{ module.title }}</span></p>
7
+ <ul class="submenu slide" ng-if="module.show_menu">
8
+ <li ng-repeat="menu_item in module.menu_items" ng-click="controller.on_click(menu_item.url)"><span>{{ menu_item.title }}</span></li>
9
+ </ul>
10
+ </li>
11
+
12
+ </ul>
13
+
14
+ <div class="brand">
15
+ <h1 translate>Site_Title</h1>
16
+ <span translate>Some_Slug</span>
17
+ </div>
@@ -0,0 +1,38 @@
1
+ <div ng-controller="NavigationController as controller">
2
+ <div class="row">
3
+
4
+ <ul class="small-6 columns">
5
+ <li><h1 translate>Dashboard</h1></li>
6
+ <li>
7
+ <div class="search">
8
+ <input type="search" class="" placeholder="Search ..."/>
9
+ </div>
10
+ </li>
11
+
12
+ </ul>
13
+ <nav class="small-6 columns text-right">
14
+ <ul>
15
+ <li class="staticitem">
16
+ <div class="hide loading">
17
+ <i class="fa fa-spin fa-refresh"></i>
18
+ </div>
19
+ </li>
20
+
21
+ <li ng-repeat="menu_item in controller.menu_items" title="{{ menu_item.title }}" ng-class="{selected: menu_item.is_active}" ng-click="controller.on_click(menu_item)" class="float-right"><span><i class="{{ menu_item.icon }}"></i></span></li>
22
+ </ul>
23
+ </nav>
24
+ </div>
25
+ <div class="subnav" id="subnav" ng-if="controller.menu_clicked">
26
+ <ul>
27
+ <li ng-repeat="item in controller.submenu_items">
28
+ <a ng-if="!item.method" ng-href="{{ item.url }}">
29
+ <i class="{{ item.icon }}"></i> {{ item.title }}
30
+ </a>
31
+ <a ng-if="item.method" data-method="{{ item.method }}" ng-href="{{ item.url }}">
32
+ <i class="{{ item.icon }}"></i> {{ item.title }}
33
+ </a>
34
+
35
+ </li>
36
+ </ul>
37
+ </div>
38
+ </div>
@@ -0,0 +1,34 @@
1
+ <div class="wrapper_signin">
2
+ <div class="row">
3
+ <div class="layout_signin">
4
+ <div class="row">
5
+
6
+ <div class="large-7 columns">
7
+
8
+ <h1><%= _("Resend confirmation instructions")%></h1>
9
+
10
+
11
+ <div class="large-5 columns">
12
+
13
+ <div class="form panel radius">
14
+ <h2><%= _("Resend condirmation")%></h2>
15
+
16
+ <%= form_for(resource, :as => resource_name, :url => confirmation_path(resource_name), :html => { :method => :post }) do |f| %>
17
+ <%= devise_error_messages! %>
18
+
19
+ <div class="field"><%= f.label :email %><br />
20
+ <%= f.email_field :email, :autofocus => true %></div>
21
+
22
+ <div class="field"><%= f.submit "Resend confirmation instructions" %></div>
23
+ <% end %>
24
+
25
+ <%= render "devise/shared/links" %>
26
+
27
+ </div>
28
+ </div>
29
+
30
+ </div>
31
+ </div>
32
+ </div>
33
+ </div>
34
+ </div>
@@ -0,0 +1,5 @@
1
+ <p>Welcome <%= @email %>!</p>
2
+
3
+ <p>You can confirm your account email through the link below:</p>
4
+
5
+ <p><%= link_to 'Confirm my account', confirmation_url(@resource, :confirmation_token => @token) %></p>
@@ -0,0 +1,8 @@
1
+ <p>Hello <%= @resource.email %>!</p>
2
+
3
+ <p>Someone has requested a link to change your password. You can do this through the link below.</p>
4
+
5
+ <p><%= link_to 'Change my password', edit_password_url(@resource, :reset_password_token => @token) %></p>
6
+
7
+ <p>If you didn't request this, please ignore this email.</p>
8
+ <p>Your password won't change until you access the link above and create a new one.</p>
@@ -0,0 +1,7 @@
1
+ <p>Hello <%= @resource.email %>!</p>
2
+
3
+ <p>Your account has been locked due to an excessive number of unsuccessful sign in attempts.</p>
4
+
5
+ <p>Click the link below to unlock your account:</p>
6
+
7
+ <p><%= link_to 'Unlock my account', unlock_url(@resource, :unlock_token => @token) %></p>
@@ -0,0 +1,44 @@
1
+ <div class="wrapper_signin">
2
+ <div class="row">
3
+ <div class="layout_signin">
4
+ <div class="row">
5
+
6
+ <div class="large-7 columns">
7
+ <h1><%= _("Change your password")%></h1>
8
+ <% _("For changing your password fill and submit the form.") %?>
9
+
10
+ <div class="large-5 columns">
11
+
12
+ <div class="form panel radius">
13
+ <h2><%= _("Change your password")%></h2>
14
+
15
+ <%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :put }) do |f| %>
16
+ <%= devise_error_messages! %>
17
+ <%= f.hidden_field :reset_password_token %>
18
+
19
+ <div class="field">
20
+ <label>
21
+ <%= f.label :password, <%= _("New Password")%> %>
22
+ </label>
23
+ <%= f.password_field :password, :autofocus => true %></div>
24
+
25
+ <div class="field">
26
+ <label>
27
+ <%= f.label :password_confirmation, <%= _("Confirm passeord")%>%>
28
+ </label>
29
+ <%= f.password_field :password_confirmation %>
30
+
31
+ <div class="submit"><%= f.submit <%= _("Change my password")%></div>
32
+ <br>
33
+ <%= render "devise/shared/links" %>
34
+
35
+ <% end %>
36
+
37
+ </div>
38
+ </div>
39
+ </div>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ </div>
44
+ </div>
@@ -0,0 +1,32 @@
1
+ <div class="wrapper_signin">
2
+ <div class="row">
3
+ <div class="layout_signin">
4
+ <div class="row">
5
+
6
+ <div class="large-7 columns">
7
+ <h1><%= _("Forgot your password?")%></h1>
8
+ <% _("If you forget your password you can fill this page for reseting password") %>
9
+ </div>
10
+ <div class="large-5 columns">
11
+
12
+ <div class="form radius panel">
13
+ <%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post }) do |f| %>
14
+ <%= devise_error_messages! %>
15
+
16
+ <div class="field">
17
+ <label><%= f.label :email %></label>
18
+ <%= f.email_field :email, :autofocus => true %></div>
19
+
20
+ <div class="submit"><%= f.submit _("Send me reset password instructions"), :class=>"button" %>
21
+ <br /><br /><br />
22
+ <%= render "devise/shared/links" %>
23
+ <br />
24
+ </div>
25
+ <% end %>
26
+ </div>
27
+
28
+ </div>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ </div>
@@ -0,0 +1,29 @@
1
+ <h2>Edit <%= resource_name.to_s.humanize %></h2>
2
+
3
+ <%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %>
4
+ <%= devise_error_messages! %>
5
+
6
+ <div><%= f.label :email %><br />
7
+ <%= f.email_field :email, :autofocus => true %></div>
8
+
9
+ <% if devise_mapping.confirmable? && resource.pending_reconfirmation? %>
10
+ <div>Currently waiting confirmation for: <%= resource.unconfirmed_email %></div>
11
+ <% end %>
12
+
13
+ <div><%= f.label :password %> <i>(leave blank if you don't want to change it)</i><br />
14
+ <%= f.password_field :password, :autocomplete => "off" %></div>
15
+
16
+ <div><%= f.label :password_confirmation %><br />
17
+ <%= f.password_field :password_confirmation %></div>
18
+
19
+ <div><%= f.label :current_password %> <i>(we need your current password to confirm your changes)</i><br />
20
+ <%= f.password_field :current_password %></div>
21
+
22
+ <div><%= f.submit "Update" %></div>
23
+ <% end %>
24
+
25
+ <h3>Cancel my account</h3>
26
+
27
+ <p>Unhappy? <%= button_to "Cancel my account", registration_path(resource_name), :data => { :confirm => "Are you sure?" }, :method => :delete %></p>
28
+
29
+ <%= link_to "Back", :back %>