faalis 1.0.0.alpha0 → 1.0.0.alpha1

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 (121) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +44 -22
  3. data/Rakefile +1 -0
  4. data/app/assets/javascripts/faalis/angular-manifest.js +1 -0
  5. data/app/assets/javascripts/faalis/dashboard/app.js +4 -3
  6. data/app/assets/javascripts/faalis/dashboard/application.js.erb +0 -1
  7. data/app/assets/javascripts/faalis/dashboard/functions.js.erb +5 -7
  8. data/app/assets/javascripts/faalis/dashboard/init.js +1 -2
  9. data/app/assets/javascripts/faalis/dashboard/modules/fields/datetime.js +5 -3
  10. data/app/assets/javascripts/faalis/dashboard/modules/fields/image.js +46 -105
  11. data/app/assets/javascripts/faalis/dashboard/modules/services/upload_service.js +17 -0
  12. data/app/assets/javascripts/faalis/dashboard/variables.js.erb +1 -1
  13. data/app/assets/javascripts/faalis/{locale → locales}/en.json +0 -0
  14. data/app/assets/javascripts/faalis/{locale → locales}/fa.json +0 -0
  15. data/app/assets/javascripts/faalis/locales/translations.fa.js +4 -0
  16. data/app/assets/locale/templates.fa.pot +275 -0
  17. data/app/assets/locale/templates.pot +0 -8
  18. data/app/controllers/faalis/#api_controller.rb# +51 -0
  19. data/app/controllers/faalis/#dashboard_controller.rb# +65 -0
  20. data/app/controllers/faalis/application_controller.rb +9 -10
  21. data/app/controllers/faalis/dashboard_controller.rb +2 -2
  22. data/app/models/faalis/user.rb +11 -11
  23. data/app/models/faalis/user/auth_definitions.rb +2 -14
  24. data/app/models/faalis/user/mongoid_fields.rb +0 -1
  25. data/app/views/angularjs_templates/fields/datetime/datetime.html +7 -1
  26. data/app/views/angularjs_templates/fields/image/image.html +1 -1
  27. data/app/views/angularjs_templates/index.html +1 -6
  28. data/app/views/angularjs_templates/modules.html +1 -1
  29. data/app/views/devise/registrations/new.html.erb +5 -1
  30. data/app/views/devise/sessions/new.html.erb +17 -16
  31. data/app/views/devise/shared/_links.erb +8 -6
  32. data/app/views/layouts/faalis/application.html.erb +0 -4
  33. data/app/views/layouts/faalis/dashboard.html.erb +2 -2
  34. data/app/views/layouts/faalis/simple.html.erb +18 -20
  35. data/config/locales/fa/LC_MESSAGES/faalis.mo +0 -0
  36. data/config/locales/fa/faalis.edit.mo +0 -0
  37. data/config/locales/fa/faalis.edit.po +104 -0
  38. data/config/locales/fa/faalis.mo +0 -0
  39. data/config/locales/fa/faalis.po +29 -108
  40. data/{app/controllers/faalis/#1.sh# → config/locales/fa/faalis.po.time_stamp} +0 -0
  41. data/config/locales/faalis.pot +10 -88
  42. data/config/routes.rb +16 -3
  43. data/lib/faalis.rb +1 -0
  44. data/lib/faalis/discovery/permissions.rb +10 -3
  45. data/lib/faalis/engine.rb +21 -0
  46. data/lib/faalis/generators/concerns.rb +2 -0
  47. data/lib/faalis/generators/concerns/allow_query_on.rb +8 -12
  48. data/lib/faalis/generators/concerns/angular.rb +4 -5
  49. data/lib/faalis/generators/concerns/child.rb +31 -0
  50. data/lib/faalis/generators/concerns/fieldset.rb +2 -2
  51. data/lib/faalis/generators/concerns/globalize.rb +14 -0
  52. data/lib/faalis/generators/concerns/hstore.rb +19 -0
  53. data/lib/faalis/generators/concerns/model.rb +3 -3
  54. data/lib/faalis/generators/concerns/parent.rb +4 -6
  55. data/lib/faalis/generators/concerns/required.rb +2 -1
  56. data/lib/faalis/generators/concerns/resource_name.rb +1 -0
  57. data/lib/faalis/generators/concerns/tabs.rb +4 -7
  58. data/lib/faalis/generators/concerns/where.rb +1 -3
  59. data/lib/faalis/generators/dashboard_scaffold.rb +2 -0
  60. data/lib/faalis/generators/fields/#relation.rb# +61 -0
  61. data/lib/faalis/i18n.rb +6 -1
  62. data/lib/faalis/middlewares.rb +1 -0
  63. data/lib/faalis/middlewares/locale.rb +29 -0
  64. data/lib/faalis/route.rb +12 -19
  65. data/lib/faalis/version.rb +1 -1
  66. data/lib/generators/faalis/install_all_generator.rb +5 -3
  67. data/lib/generators/faalis/install_generator.rb +4 -0
  68. data/lib/generators/faalis/js/install_i18n_generator.rb +1 -1
  69. data/lib/generators/faalis/scaffold_generator.rb +72 -25
  70. data/lib/generators/faalis/templates/i18n/Gruntfile.js.erb +2 -2
  71. data/lib/generators/faalis/templates/i18n/fa.js +2 -2
  72. data/lib/generators/faalis/templates/js/list_view/details.html.erb +26 -3
  73. data/lib/generators/faalis/templates/views/create.json.jbuilder.erb +2 -1
  74. data/lib/generators/faalis/templates/views/index.json.jbuilder.erb +4 -2
  75. data/lib/generators/faalis/templates/views/show.json.jbuilder.erb +2 -1
  76. data/lib/generators/faalis/templates/views/update.json.jbuilder.erb +2 -1
  77. data/lib/tasks/faalis_tasks.rake +25 -27
  78. data/lib/tasks/grunt/Gruntfile.js +2 -2
  79. data/lib/tasks/sync.rake +3 -4
  80. metadata +43 -90
  81. data/app/assets/javascripts/faalis/dashboard/modules/list-view.js +0 -341
  82. data/app/assets/javascripts/faalis/dashboard/modules/modules.js +0 -75
  83. data/app/assets/javascripts/faalis/dashboard/modules/nav.js.erb +0 -78
  84. data/app/assets/stylesheets/faalis/base.css.scss +0 -334
  85. data/app/assets/stylesheets/faalis/dashboard/dashboard.css.scss +0 -246
  86. data/app/assets/stylesheets/faalis/dashboard/list_view.css.scss +0 -169
  87. data/app/assets/stylesheets/faalis/dashboard/ltr/application.css +0 -29
  88. data/app/assets/stylesheets/faalis/dashboard/ltr/base.css.scss.erb +0 -33
  89. data/app/assets/stylesheets/faalis/dashboard/ltr/buttons.css.scss.erb +0 -55
  90. data/app/assets/stylesheets/faalis/dashboard/ltr/direction.css.scss +0 -38
  91. data/app/assets/stylesheets/faalis/dashboard/ltr/foundation_and_overrides.css.scss +0 -1261
  92. data/app/assets/stylesheets/faalis/dashboard/ltr/time.css.scss +0 -58
  93. data/app/assets/stylesheets/faalis/dashboard/rtl/application.css +0 -27
  94. data/app/assets/stylesheets/faalis/dashboard/rtl/base.css.scss.erb +0 -35
  95. data/app/assets/stylesheets/faalis/dashboard/rtl/buttons.css.scss.erb +0 -45
  96. data/app/assets/stylesheets/faalis/dashboard/rtl/direction.css.scss +0 -37
  97. data/app/assets/stylesheets/faalis/dashboard/rtl/foundation_and_overrides.css.scss +0 -1264
  98. data/app/assets/stylesheets/faalis/dashboard/share/time.css.scss +0 -57
  99. data/app/assets/stylesheets/faalis/dashboard/sidebar.css.scss +0 -93
  100. data/app/assets/stylesheets/faalis/devise.css.scss +0 -34
  101. data/app/assets/stylesheets/faalis/groups.css +0 -4
  102. data/app/assets/stylesheets/faalis/home.css.scss +0 -14
  103. data/app/assets/stylesheets/faalis/ltr/application.css +0 -20
  104. data/app/assets/stylesheets/faalis/ltr/buttons.css.scss.erb +0 -45
  105. data/app/assets/stylesheets/faalis/ltr/foundation_and_overrides.scss +0 -1258
  106. data/app/assets/stylesheets/faalis/mixins.css.scss +0 -15
  107. data/app/assets/stylesheets/faalis/rtl/application.css +0 -20
  108. data/app/assets/stylesheets/faalis/rtl/buttons.css.scss.erb +0 -50
  109. data/app/assets/stylesheets/faalis/rtl/foundation_and_overrides.css.scss +0 -1264
  110. data/app/assets/stylesheets/faalis/users.css +0 -4
  111. data/app/assets/stylesheets/faalis/variables.css.scss +0 -102
  112. data/app/controllers/faalis/api/v1/workflows_controller.rb +0 -18
  113. data/app/views/angularjs_templates/list-view/index.html +0 -82
  114. data/app/views/faalis/api/v1/workflows/index.json.jbuilder +0 -5
  115. data/app/workflows/faalis/administration_workflow.rb +0 -7
  116. data/spec/dummy/log/development.log +0 -0
  117. data/spec/dummy/log/test.log +0 -15
  118. data/spec/dummy/tmp/ember-rails/ember-data.js +0 -10204
  119. data/spec/dummy/tmp/ember-rails/ember.js +0 -36991
  120. data/spec/factories/faalis_workflows.rb +0 -7
  121. data/spec/models/faalis/workflow_spec.rb +0 -7
@@ -3,7 +3,7 @@ module.exports = function (grunt) {
3
3
  nggettext_extract: {
4
4
  pot: {
5
5
  files: {
6
- 'app/assets/faalis/locale/templates.pot': ['app/views/angularjs_templates/**/*.html',
6
+ 'app/assets/locale/templates.pot': ['app/views/angularjs_templates/**/*.html',
7
7
  'app/views/angularjs_templates/**/*.html.erb',
8
8
  'app/assets/javascripts/**/*.js',
9
9
  'app/assets/javascripts/**/*.js',
@@ -18,7 +18,7 @@ module.exports = function (grunt) {
18
18
  module: "Dashboard"
19
19
  },
20
20
  files: {
21
- 'app/assets/javascripts/faalis/locale/translations.fa.js': ['app/assets/locale/*.fa.pot']
21
+ 'app/assets/javascripts/faalis/locales/translations.fa.js': ['app/assets/locale/*.fa.pot']
22
22
  }
23
23
  }
24
24
  }
@@ -1,10 +1,9 @@
1
1
  namespace :faalis do
2
2
  namespace :sync do
3
3
 
4
- desc "Sync up workflows"
5
- task :workflows => :environment do
6
- Faalis::Workflow.destroy_all
7
- Faalis::Workflows::Discovery.build_table_list
4
+ desc 'Create missing permissions'
5
+ task :permissions => :environment do
6
+ Faalis::Discovery::Permissions.create_all_permissions
8
7
  end
9
8
  end
10
9
  end
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: 1.0.0.alpha0
4
+ version: 1.0.0.alpha1
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-08-25 00:00:00.000000000 Z
12
+ date: 2014-10-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -141,16 +141,16 @@ dependencies:
141
141
  name: foundation-rails
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
- - - ">="
144
+ - - "~>"
145
145
  - !ruby/object:Gem::Version
146
- version: '0'
146
+ version: 5.2.0
147
147
  type: :runtime
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
- - - ">="
151
+ - - "~>"
152
152
  - !ruby/object:Gem::Version
153
- version: '0'
153
+ version: 5.2.0
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: font-awesome-rails
156
156
  requirement: !ruby/object:Gem::Requirement
@@ -319,20 +319,6 @@ dependencies:
319
319
  - - "~>"
320
320
  - !ruby/object:Gem::Version
321
321
  version: 2.4.2
322
- - !ruby/object:Gem::Dependency
323
- name: fast_gettext
324
- requirement: !ruby/object:Gem::Requirement
325
- requirements:
326
- - - ">="
327
- - !ruby/object:Gem::Version
328
- version: '0'
329
- type: :runtime
330
- prerelease: false
331
- version_requirements: !ruby/object:Gem::Requirement
332
- requirements:
333
- - - ">="
334
- - !ruby/object:Gem::Version
335
- version: '0'
336
322
  - !ruby/object:Gem::Dependency
337
323
  name: gettext
338
324
  requirement: !ruby/object:Gem::Requirement
@@ -516,11 +502,9 @@ files:
516
502
  - app/assets/javascripts/faalis/dashboard/modules/fields/text.js
517
503
  - app/assets/javascripts/faalis/dashboard/modules/fields/time.js
518
504
  - app/assets/javascripts/faalis/dashboard/modules/filter.js
519
- - app/assets/javascripts/faalis/dashboard/modules/list-view.js
520
505
  - app/assets/javascripts/faalis/dashboard/modules/logs.js
521
- - app/assets/javascripts/faalis/dashboard/modules/modules.js
522
- - app/assets/javascripts/faalis/dashboard/modules/nav.js.erb
523
506
  - app/assets/javascripts/faalis/dashboard/modules/permissions.js
507
+ - app/assets/javascripts/faalis/dashboard/modules/services/upload_service.js
524
508
  - app/assets/javascripts/faalis/dashboard/objects.js
525
509
  - app/assets/javascripts/faalis/dashboard/templates/application.handlebars.erb
526
510
  - app/assets/javascripts/faalis/dashboard/templates/auth/groups/details.handlebars.erb
@@ -539,46 +523,20 @@ files:
539
523
  - app/assets/javascripts/faalis/groups.js
540
524
  - app/assets/javascripts/faalis/home.js
541
525
  - app/assets/javascripts/faalis/i18n.js
542
- - app/assets/javascripts/faalis/locale/en.json
543
- - app/assets/javascripts/faalis/locale/fa.json
526
+ - app/assets/javascripts/faalis/locales/en.json
527
+ - app/assets/javascripts/faalis/locales/fa.json
528
+ - app/assets/javascripts/faalis/locales/translations.fa.js
544
529
  - app/assets/javascripts/faalis/users.js
530
+ - app/assets/locale/templates.fa.pot
545
531
  - app/assets/locale/templates.pot
546
- - app/assets/stylesheets/faalis/base.css.scss
547
- - app/assets/stylesheets/faalis/dashboard/dashboard.css.scss
548
- - app/assets/stylesheets/faalis/dashboard/list_view.css.scss
549
- - app/assets/stylesheets/faalis/dashboard/ltr/application.css
550
- - app/assets/stylesheets/faalis/dashboard/ltr/base.css.scss.erb
551
- - app/assets/stylesheets/faalis/dashboard/ltr/buttons.css.scss.erb
552
- - app/assets/stylesheets/faalis/dashboard/ltr/direction.css.scss
553
- - app/assets/stylesheets/faalis/dashboard/ltr/foundation_and_overrides.css.scss
554
- - app/assets/stylesheets/faalis/dashboard/ltr/time.css.scss
555
- - app/assets/stylesheets/faalis/dashboard/rtl/application.css
556
- - app/assets/stylesheets/faalis/dashboard/rtl/base.css.scss.erb
557
- - app/assets/stylesheets/faalis/dashboard/rtl/buttons.css.scss.erb
558
- - app/assets/stylesheets/faalis/dashboard/rtl/direction.css.scss
559
- - app/assets/stylesheets/faalis/dashboard/rtl/foundation_and_overrides.css.scss
560
- - app/assets/stylesheets/faalis/dashboard/share/time.css.scss
561
- - app/assets/stylesheets/faalis/dashboard/sidebar.css.scss
562
- - app/assets/stylesheets/faalis/devise.css.scss
563
- - app/assets/stylesheets/faalis/groups.css
564
- - app/assets/stylesheets/faalis/home.css.scss
565
- - app/assets/stylesheets/faalis/ltr/application.css
566
- - app/assets/stylesheets/faalis/ltr/buttons.css.scss.erb
567
- - app/assets/stylesheets/faalis/ltr/foundation_and_overrides.scss
568
- - app/assets/stylesheets/faalis/mixins.css.scss
569
- - app/assets/stylesheets/faalis/rtl/application.css
570
- - app/assets/stylesheets/faalis/rtl/buttons.css.scss.erb
571
- - app/assets/stylesheets/faalis/rtl/foundation_and_overrides.css.scss
572
- - app/assets/stylesheets/faalis/users.css
573
- - app/assets/stylesheets/faalis/variables.css.scss
574
- - app/controllers/faalis/#1.sh#
532
+ - app/controllers/faalis/#api_controller.rb#
533
+ - app/controllers/faalis/#dashboard_controller.rb#
575
534
  - app/controllers/faalis/api/v1/conversations_controller.rb
576
535
  - app/controllers/faalis/api/v1/groups_controller.rb
577
536
  - app/controllers/faalis/api/v1/logs_controller.rb
578
537
  - app/controllers/faalis/api/v1/permissions_controller.rb
579
538
  - app/controllers/faalis/api/v1/profiles_controller.rb
580
539
  - app/controllers/faalis/api/v1/users_controller.rb
581
- - app/controllers/faalis/api/v1/workflows_controller.rb
582
540
  - app/controllers/faalis/api_controller.rb
583
541
  - app/controllers/faalis/application_controller.rb
584
542
  - app/controllers/faalis/dashboard_controller.rb
@@ -624,7 +582,6 @@ files:
624
582
  - app/views/angularjs_templates/fields/text/text.html
625
583
  - app/views/angularjs_templates/filter/index.html
626
584
  - app/views/angularjs_templates/index.html
627
- - app/views/angularjs_templates/list-view/index.html
628
585
  - app/views/angularjs_templates/locale/fa.po
629
586
  - app/views/angularjs_templates/locale/templates.pot
630
587
  - app/views/angularjs_templates/logs/index.html
@@ -670,7 +627,6 @@ files:
670
627
  - app/views/faalis/api/v1/users/show.html.erb
671
628
  - app/views/faalis/api/v1/users/show.json.jbuilder
672
629
  - app/views/faalis/api/v1/users/update.json.jbuilder
673
- - app/views/faalis/api/v1/workflows/index.json.jbuilder
674
630
  - app/views/faalis/dashboard/index.html.erb
675
631
  - app/views/faalis/dashboard/login_required_page.html.erb
676
632
  - app/views/faalis/home/index.html.erb
@@ -678,12 +634,15 @@ files:
678
634
  - app/views/layouts/faalis/application.html.erb
679
635
  - app/views/layouts/faalis/dashboard.html.erb
680
636
  - app/views/layouts/faalis/simple.html.erb
681
- - app/workflows/faalis/administration_workflow.rb
682
637
  - config/initializers/devise.rb
683
638
  - config/locales/devise.en.yml
684
639
  - config/locales/devise.fa.yml
685
640
  - config/locales/fa/LC_MESSAGES/faalis.mo
641
+ - config/locales/fa/faalis.edit.mo
642
+ - config/locales/fa/faalis.edit.po
643
+ - config/locales/fa/faalis.mo
686
644
  - config/locales/fa/faalis.po
645
+ - config/locales/fa/faalis.po.time_stamp
687
646
  - config/locales/fa/messages.mo
688
647
  - config/locales/faalis.pot
689
648
  - config/routes.rb
@@ -723,8 +682,11 @@ files:
723
682
  - lib/faalis/generators/concerns/allow_query_on.rb
724
683
  - lib/faalis/generators/concerns/angular.rb
725
684
  - lib/faalis/generators/concerns/bulk.rb
685
+ - lib/faalis/generators/concerns/child.rb
726
686
  - lib/faalis/generators/concerns/dependency.rb
727
687
  - lib/faalis/generators/concerns/fieldset.rb
688
+ - lib/faalis/generators/concerns/globalize.rb
689
+ - lib/faalis/generators/concerns/hstore.rb
728
690
  - lib/faalis/generators/concerns/json_input.rb
729
691
  - lib/faalis/generators/concerns/menu.rb
730
692
  - lib/faalis/generators/concerns/model.rb
@@ -736,9 +698,12 @@ files:
736
698
  - lib/faalis/generators/concerns/tabs.rb
737
699
  - lib/faalis/generators/concerns/where.rb
738
700
  - lib/faalis/generators/dashboard_scaffold.rb
701
+ - lib/faalis/generators/fields/#relation.rb#
739
702
  - lib/faalis/generators/fields/relation.rb
740
703
  - lib/faalis/i18n.rb
741
704
  - lib/faalis/initialize.rb
705
+ - lib/faalis/middlewares.rb
706
+ - lib/faalis/middlewares/locale.rb
742
707
  - lib/faalis/omniauth.rb
743
708
  - lib/faalis/omniauth/callbacks.rb
744
709
  - lib/faalis/orm.rb
@@ -831,16 +796,10 @@ files:
831
796
  - spec/dummy/config/initializers/wrap_parameters.rb
832
797
  - spec/dummy/config/locales/en.yml
833
798
  - spec/dummy/config/routes.rb
834
- - spec/dummy/log/development.log
835
- - spec/dummy/log/test.log
836
799
  - spec/dummy/public/404.html
837
800
  - spec/dummy/public/422.html
838
801
  - spec/dummy/public/500.html
839
802
  - spec/dummy/public/favicon.ico
840
- - spec/dummy/tmp/ember-rails/ember-data.js
841
- - spec/dummy/tmp/ember-rails/ember.js
842
- - spec/factories/faalis_workflows.rb
843
- - spec/models/faalis/workflow_spec.rb
844
803
  - spec/spec_helper.rb
845
804
  homepage: https://github.com/Yellowen/Faalis
846
805
  licenses:
@@ -869,42 +828,36 @@ summary: Faalis is a ruby on rails engine which provides a very basic web applic
869
828
  to use with other ruby on rails applications.
870
829
  test_files:
871
830
  - spec/spec_helper.rb
872
- - spec/models/faalis/workflow_spec.rb
873
- - spec/factories/faalis_workflows.rb
874
- - spec/dummy/tmp/ember-rails/ember.js
875
- - spec/dummy/tmp/ember-rails/ember-data.js
876
- - spec/dummy/log/development.log
877
- - spec/dummy/log/test.log
878
- - spec/dummy/public/500.html
879
- - spec/dummy/public/404.html
880
- - spec/dummy/public/422.html
881
- - spec/dummy/public/favicon.ico
882
- - spec/dummy/config.ru
883
- - spec/dummy/README.rdoc
831
+ - spec/dummy/app/controllers/application_controller.rb
884
832
  - spec/dummy/app/views/layouts/application.html.erb
833
+ - spec/dummy/app/helpers/application_helper.rb
885
834
  - spec/dummy/app/assets/javascripts/application.js
886
835
  - spec/dummy/app/assets/stylesheets/application.css
887
- - spec/dummy/app/controllers/application_controller.rb
888
- - spec/dummy/app/helpers/application_helper.rb
889
- - spec/dummy/Rakefile
890
- - spec/dummy/bin/rake
891
836
  - spec/dummy/bin/bundle
892
837
  - spec/dummy/bin/rails
838
+ - spec/dummy/bin/rake
839
+ - spec/dummy/public/404.html
840
+ - spec/dummy/public/422.html
841
+ - spec/dummy/public/500.html
842
+ - spec/dummy/public/favicon.ico
843
+ - spec/dummy/config.ru
893
844
  - spec/dummy/config/application.rb
894
- - spec/dummy/config/environments/test.rb
895
845
  - spec/dummy/config/environments/development.rb
846
+ - spec/dummy/config/environments/test.rb
896
847
  - spec/dummy/config/environments/production.rb
897
- - spec/dummy/config/routes.rb
898
- - spec/dummy/config/environment.rb
899
- - spec/dummy/config/database.yml
900
- - spec/dummy/config/locales/en.yml
901
- - spec/dummy/config/boot.rb
902
- - spec/dummy/config/initializers/session_store.rb
903
848
  - spec/dummy/config/initializers/backtrace_silencers.rb
904
- - spec/dummy/config/initializers/wrap_parameters.rb
905
- - spec/dummy/config/initializers/inflections.rb
906
849
  - spec/dummy/config/initializers/filter_parameter_logging.rb
907
- - spec/dummy/config/initializers/mime_types.rb
908
850
  - spec/dummy/config/initializers/secret_token.rb
851
+ - spec/dummy/config/initializers/session_store.rb
852
+ - spec/dummy/config/initializers/wrap_parameters.rb
909
853
  - spec/dummy/config/initializers/faalis.rb
854
+ - spec/dummy/config/initializers/mime_types.rb
855
+ - spec/dummy/config/initializers/inflections.rb
856
+ - spec/dummy/config/environment.rb
857
+ - spec/dummy/config/database.yml
858
+ - spec/dummy/config/locales/en.yml
859
+ - spec/dummy/config/routes.rb
860
+ - spec/dummy/config/boot.rb
861
+ - spec/dummy/README.rdoc
862
+ - spec/dummy/Rakefile
910
863
  has_rdoc:
@@ -1,341 +0,0 @@
1
- var ListView = angular.module("ListView", ['ngGrid', 'Permissions']);
2
-
3
- /*
4
- * <element object-action></element> directive defination
5
- */
6
- ListView.directive("objectAction", function(){
7
-
8
- function link(scope, element, attrs){
9
-
10
- var object = scope.object;
11
- var action = scope.action;
12
-
13
- if ("route" in object){
14
- element.attr("href", object.route);
15
- }
16
- else if ("action" in object) {
17
- element.on("click", object.action);
18
- }
19
- }
20
-
21
- // Actual object
22
- return {
23
- restrict: "A",
24
- scope: {
25
- object: "="
26
- },
27
- link: link
28
- };
29
-
30
- });
31
-
32
-
33
- /*
34
- * <list-view></list-view> directive defination
35
- */
36
-
37
- ListView.directive('listView', ["$filter", "gettext", "UserPermissions", function($filter, gettext, User) {
38
-
39
- function link(scope, element, attrs){
40
- var ltr = is_ltr();
41
- var _item_per_page = parseInt(scope.item_per_page, 10) || 10;
42
- var _current_page = 1;
43
- scope.list_view = true;
44
- scope.grid_view = false;
45
- var use_permissions;
46
-
47
- if (scope.use_permissions === undefined) {
48
- use_permissions = true;
49
- }
50
- else {
51
- use_permissions = false;
52
- }
53
-
54
-
55
- scope.title = function(object, t) {
56
- if (typeof(scope.title_attr) == "function") {
57
- return scope.title_attr(object);
58
- }
59
- return object[scope.title_attr];
60
- };
61
-
62
- var filtered_objects = function(){
63
- var filterby = {};
64
- if (typeof(scope.title_attr) == "function") {
65
- filterby = scope.title_attr;
66
- }
67
- else {
68
- filterby[scope.title_attr] = scope.searchterm;
69
- }
70
- var result = $filter('filter')(scope.objects, filterby, function(expected, actual){
71
- var re = new RegExp(".*" + actual + ".*", "ig");
72
- scope.go_to_first_page();
73
- if( expected.match(re) ){
74
- return true;
75
- }
76
- return false;
77
- });
78
- // TODO: Double check this or condition
79
- return result || [];
80
- };
81
-
82
- scope.grid_options = {
83
- data: 'objects',
84
- headerRowHeight: 30,
85
- rowHeight: 30,
86
- enablePaging: true,
87
- afterSelectionChange: function(rowitem, event){
88
- console.dir(rowitem);
89
- console.dir(event);
90
- },
91
- columnDefs: scope.column_defs
92
- };
93
- var delete_method = scope.on_delete || function(x){
94
- console.log( "undefined on delete method" );
95
- };
96
-
97
- scope.is_ltr = ltr;
98
- scope.handle_icon = ltr ? "fa-angle-right" : "fa-angle-left";
99
- scope.first_page_icon = ltr ? "fa-angle-double-left" : "fa-angle-double-right";
100
- scope.last_page_icon = ltr ? "fa-angle-double-right" : "fa-angle-double-left";
101
- scope.prev_page_icon = ltr ? "fa-angle-left" : "fa-angle-right";
102
- scope.next_page_icon = ltr ? "fa-angle-right" : "fa-angle-left";
103
- scope.hand_icon = ltr ? "fa-hand-o-right" : "fa-hand-o-left";
104
- scope.is_all_selected = false;
105
-
106
- scope.handle_icon_expand = function(object){
107
- if(scope.should_view(object)) {
108
- return ltr ? "fa-rotate-90" : "fa-rotate-270";
109
- }
110
- return "";
111
- };
112
-
113
- // View an item details
114
- scope.toggle_details = function(object){
115
- if ("view_details" in object){
116
- object.view_details = ! object.view_details;
117
- }
118
- else {
119
- object.view_details = true;
120
- }
121
- };
122
-
123
- // Should we open details section
124
- scope.should_view = function(object){
125
- if ("view_details" in object) {
126
- return object.view_details;
127
-
128
- }
129
- return false;
130
- };
131
-
132
- scope.delete_items = function(){
133
-
134
- var len = scope.selected_count();
135
- var objects_to_delete = [];
136
-
137
- if( confirm(gettext("Are sure you want to delete ") + len + gettext(" item(s)?")) ){
138
- var objects_list = filtered_objects();
139
-
140
- for(i = 0 ; i < objects_list.length; i++){
141
-
142
- if (objects_list[i].is_selected === true) {
143
- objects_to_delete.push(objects_list[i]);
144
- }
145
-
146
- }
147
-
148
- delete_method(objects_to_delete);
149
- }
150
-
151
-
152
- };
153
- // Selection related methods -----------------------------------
154
- // Select a row in table
155
- scope.select_item = function(object) {
156
- if ("is_selected" in object) {
157
- object.is_selected = ! object.is_selected;
158
- }
159
- else {
160
- object.is_selected = true;
161
- }
162
-
163
- };
164
-
165
- scope.toggle_select = function (){
166
- var objects_list = filtered_objects();
167
-
168
- for(i = 0 ; i < objects_list.length; i++){
169
- objects_list[i].is_selected = ! objects_list[i].is_selected;
170
- }
171
- };
172
-
173
- scope.toggle_select = function (){
174
- var objects_list = filtered_objects();
175
-
176
- for(i = 0 ; i < objects_list.length; i++){
177
- objects_list[i].is_selected = ! objects_list[i].is_selected;
178
- }
179
- };
180
-
181
- scope.select_all = function (){
182
- var objects_list = filtered_objects();
183
-
184
- for(i = 0 ; i < objects_list.length; i++){
185
- objects_list[i].is_selected = ! scope.is_all_selected;
186
- }
187
-
188
- scope.is_all_selected = ! scope.is_all_selected;
189
-
190
- };
191
-
192
- scope.selected_count = function(){
193
- var myobjects = filtered_objects();
194
- var count = 0;
195
- for(i = 0; i < myobjects.length; i++) {
196
- if("is_selected" in myobjects[i]){
197
- if(myobjects[i].is_selected) {
198
- count++;
199
- }
200
- }
201
-
202
- }
203
- return count;
204
- };
205
- // Pagination methods ---------------------------------
206
-
207
- scope.has_pagination = function(){
208
- return scope.total_pages() > 1 ? true : false;
209
- };
210
-
211
- scope.total_pages = function(){
212
- var len = filtered_objects().length;
213
- var pages = parseInt(len / _item_per_page, 10);
214
-
215
- if (len % _item_per_page > 0 || len < _item_per_page) {
216
- pages++;
217
- }
218
-
219
- return pages;
220
- };
221
-
222
- scope.current_page = function(){
223
- return _current_page;
224
- };
225
-
226
- scope.go_to_next_page = function(){
227
- if (_current_page < scope.total_pages()) {
228
- _current_page++;
229
- }
230
- else {
231
- _current_page = scope.total_pages();
232
- }
233
- };
234
-
235
- scope.go_to_prev_page = function(){
236
- if (_current_page > 1) {
237
- _current_page--;
238
- }
239
- else {
240
- _current_page = 1;
241
- }
242
- };
243
-
244
- scope.go_to_last_page = function(){
245
- _current_page = scope.total_pages();
246
- };
247
-
248
- scope.go_to_first_page = function(){
249
- _current_page = 1;
250
- };
251
-
252
- scope.go_to_page = function($event, value){
253
- if( $event.which == 13 ){
254
-
255
- var page = parseInt(value, 10);
256
-
257
- if (page > 0 && page <= scope.total_pages()) {
258
- _current_page = page;
259
- }
260
- else {
261
- value = _current_page;
262
- }
263
-
264
- }
265
-
266
- };
267
-
268
- scope.get_current_page = function(){
269
- var start = (scope.current_page() * _item_per_page) - _item_per_page;
270
- var end = (scope.current_page() * _item_per_page);
271
-
272
- return filtered_objects().slice(start, end);
273
- };
274
-
275
- scope.objects_count = function(){
276
- return filtered_objects().length;
277
- };
278
-
279
- scope.has_permission = function(button) {
280
- if (use_permissions === true) {
281
- if( "permission" in button ){
282
- if ((!("name" in button.permission)) || (!("model" in button.permission))) {
283
- console.log("Button permission should be an object and has 'name' and 'model' keys");
284
- throw "Button permission should be an object and has 'name' and 'model' keys";
285
- }
286
- return User.can(button.permission.name, button.permission.model);
287
- }
288
- }
289
- return true;
290
- };
291
- scope.can = function(perm, model) {
292
- if (use_permissions === true) {
293
- return User.can(perm, model);
294
- }
295
- return true;
296
- };
297
- }
298
-
299
-
300
- // Actual object of <list-view> directive
301
- return {
302
- templateUrl: template("list-view/index"),
303
- restrict: "E",
304
- transclude: true,
305
- scope: {
306
- // Header section custom buttons
307
- buttons: "=buttons",
308
-
309
- // Objects which should listed
310
- objects: "=",
311
-
312
- // Object attribute which should show as title in main li
313
- title_attr: "=titleAttribute",
314
-
315
- // Template address for details section
316
- details_template: "=detailsTemplate",
317
-
318
- // Number of item per pages
319
- item_per_page: "=itemPerPage",
320
-
321
- // Search input
322
- search: "=",
323
-
324
- // Grid columns
325
- column_defs: "=columnDefs",
326
-
327
- // Permissions
328
- use_permissions: "=usePermissions",
329
-
330
- // Permission model
331
- permission_model: "=model",
332
-
333
- // On delete method
334
- on_delete: "=onDelete",
335
-
336
- // Custom delete title method
337
- delete_title: "=deleteTitle"
338
- },
339
- link: link
340
- };
341
- }]);