refinerycms-teams 3.0.0.dev

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. checksums.yaml +7 -0
  2. data/app/controllers/refinery/teams/admin/teams_controller.rb +19 -0
  3. data/app/controllers/refinery/teams/teams_controller.rb +34 -0
  4. data/app/models/refinery/teams/team.rb +15 -0
  5. data/app/views/refinery/teams/admin/teams/_actions.html.erb +25 -0
  6. data/app/views/refinery/teams/admin/teams/_form.html.erb +54 -0
  7. data/app/views/refinery/teams/admin/teams/_records.html.erb +16 -0
  8. data/app/views/refinery/teams/admin/teams/_sortable_list.html.erb +5 -0
  9. data/app/views/refinery/teams/admin/teams/_team.html.erb +20 -0
  10. data/app/views/refinery/teams/admin/teams/_teams.html.erb +2 -0
  11. data/app/views/refinery/teams/admin/teams/edit.html.erb +1 -0
  12. data/app/views/refinery/teams/admin/teams/index.html.erb +7 -0
  13. data/app/views/refinery/teams/admin/teams/new.html.erb +1 -0
  14. data/app/views/refinery/teams/teams/index.html.erb +17 -0
  15. data/app/views/refinery/teams/teams/show.html.erb +51 -0
  16. data/config/locales/cs.yml +32 -0
  17. data/config/locales/en.yml +35 -0
  18. data/config/locales/es.yml +33 -0
  19. data/config/locales/fr.yml +35 -0
  20. data/config/locales/it.yml +32 -0
  21. data/config/locales/nb.yml +32 -0
  22. data/config/locales/nl.yml +32 -0
  23. data/config/locales/sk.yml +32 -0
  24. data/config/locales/tr.yml +32 -0
  25. data/config/locales/zh-CN.yml +34 -0
  26. data/config/routes.rb +19 -0
  27. data/db/migrate/1_create_teams_teams.rb +31 -0
  28. data/db/seeds.rb +19 -0
  29. data/lib/generators/refinery/teams/teams_generator.rb +25 -0
  30. data/lib/generators/refinery/teams/templates/config/initializers/refinery/teams.rb.erb +3 -0
  31. data/lib/refinery/teams.rb +22 -0
  32. data/lib/refinery/teams/configuration.rb +9 -0
  33. data/lib/refinery/teams/engine.rb +23 -0
  34. data/lib/refinerycms-teams.rb +1 -0
  35. data/lib/tasks/refinery/teams.rake +13 -0
  36. data/readme.md +10 -0
  37. metadata +133 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: cc60dd70986cd08aecf19835faa8ded5c9e0322f
4
+ data.tar.gz: 0de91715c5ee2d2b87346b8cefb9a89ba73ea1db
5
+ SHA512:
6
+ metadata.gz: 75082057a672b2dcb5a70a80f1f49fff5aed0b2a7dfaac5ffcb480546b5a81e1b728105a8a119f9a3e8d7690a722051df480f03fb020cd3de7cc0717f6bcfd5f
7
+ data.tar.gz: cc2215e607a5f95e0b4bdb0b8a0d28f36bf488953f511cd828daa835b35fe33f70870694a88780167a90d72b3ce26ad0727eb850e5d7dbb97ae572ea746a9a86
@@ -0,0 +1,19 @@
1
+ module Refinery
2
+ module Teams
3
+ module Admin
4
+ class TeamsController < ::Refinery::AdminController
5
+
6
+ crudify :'refinery/teams/team',
7
+ :title_attribute => 'fullname',
8
+ :xhr_paging => true
9
+
10
+ private
11
+ def team_params
12
+ params.require(:team).permit(
13
+ :fullname, :title, :body, :photo_id, :email, :draft
14
+ )
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,34 @@
1
+ module Refinery
2
+ module Teams
3
+ class TeamsController < ::ApplicationController
4
+
5
+ before_filter :find_all_teams
6
+ before_filter :find_page
7
+
8
+ def index
9
+ # you can use meta fields from your model instead (e.g. browser_title)
10
+ # by swapping @page for @team in the line below:
11
+ present(@page)
12
+ end
13
+
14
+ def show
15
+ @team = Team.find(params[:id])
16
+
17
+ # you can use meta fields from your model instead (e.g. browser_title)
18
+ # by swapping @page for @team in the line below:
19
+ present(@page)
20
+ end
21
+
22
+ protected
23
+
24
+ def find_all_teams
25
+ @teams = Team.published.order('position ASC')
26
+ end
27
+
28
+ def find_page
29
+ @page = ::Refinery::Page.where(:link_url => Refinery::Teams.page_url).first
30
+ end
31
+
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,15 @@
1
+ module Refinery
2
+ module Teams
3
+ class Team < Refinery::Core::BaseModel
4
+ self.table_name = 'refinery_teams'
5
+
6
+ validates :fullname, :presence => true, :uniqueness => true
7
+
8
+ belongs_to :photo, :class_name => '::Refinery::Image'
9
+
10
+ acts_as_indexed :fields => [:fullname, :title]
11
+
12
+ scope :published, -> { where :draft => false }
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,25 @@
1
+ <ul>
2
+ <% if ::Refinery::Teams::Admin::TeamsController.searchable? %>
3
+ <li>
4
+ <%= render '/refinery/admin/search', :url => refinery.teams_admin_teams_path %>
5
+ </li>
6
+ <% end %>
7
+ <li>
8
+ <%= link_to t('.create_new'), refinery.new_teams_admin_team_path,
9
+ :class => "add_icon" %>
10
+ </li>
11
+ <% if !searching? && ::Refinery::Teams::Admin::TeamsController.sortable? && ::Refinery::Teams::Team.many? %>
12
+ <li>
13
+ <%= link_to t('.reorder', :what => "Teams"),
14
+ refinery.teams_admin_teams_path,
15
+ :id => "reorder_action",
16
+ :class => "reorder_icon" %>
17
+
18
+ <%= link_to t('.reorder_done', :what => "Teams"),
19
+ refinery.teams_admin_teams_path,
20
+ :id => "reorder_action_done",
21
+ :style => "display: none;",
22
+ :class => "reorder_icon" %>
23
+ </li>
24
+ <% end %>
25
+ </ul>
@@ -0,0 +1,54 @@
1
+ <%= form_for [refinery, :teams_admin, @team] do |f| -%>
2
+ <%= render '/refinery/admin/error_messages',
3
+ :object => @team,
4
+ :include_object_name => true %>
5
+
6
+ <div class='field'>
7
+ <%= f.label :fullname -%>
8
+ <%= f.text_field :fullname, :class => 'larger widest' -%>
9
+ </div>
10
+
11
+ <div class='field'>
12
+ <%= f.label :title -%>
13
+ <%= f.text_field :title, :class => 'larger' -%>
14
+ </div>
15
+
16
+ <div class='field'>
17
+ <%= render '/refinery/admin/wysiwyg',
18
+ :f => f,
19
+ :fields => [:body],
20
+ :object => "teams/team" -%>
21
+ </div>
22
+
23
+ <div class='field'>
24
+ <%= f.label :photo -%>
25
+ <%= render '/refinery/admin/image_picker',
26
+ :f => f,
27
+ :field => :photo_id,
28
+ :image => @team.photo,
29
+ :toggle_image_display => false -%>
30
+ </div>
31
+
32
+ <div class='field'>
33
+ <%= f.label :email -%>
34
+ <%= f.text_field :email, :class => 'larger' -%>
35
+ </div>
36
+
37
+ <div class='field'>
38
+ <%= f.label :draft -%>
39
+ <%= f.check_box :draft -%>
40
+ </div>
41
+
42
+ <%= render '/refinery/admin/form_actions', :f => f,
43
+ :continue_editing => false,
44
+ :delete_title => t('delete', :scope => 'refinery.teams.admin.teams.team'),
45
+ :delete_confirmation => t('message', :scope => 'refinery.admin.delete', :title => @team.fullname) -%>
46
+ <% end -%>
47
+
48
+ <% content_for :javascripts do -%>
49
+ <script>
50
+ $(document).ready(function(){
51
+ page_options.init(false, '', '');
52
+ });
53
+ </script>
54
+ <% end -%>
@@ -0,0 +1,16 @@
1
+ <%= render 'refinery/admin/search_header', :url => refinery.teams_admin_teams_path %>
2
+ <div class='pagination_container'>
3
+ <% if @teams.any? %>
4
+ <%= render 'teams' %>
5
+ <% else %>
6
+ <p>
7
+ <% if searching? %>
8
+ <%= t('no_results', :scope => 'refinery.admin.search') %>
9
+ <% else %>
10
+ <strong>
11
+ <%= t('.no_items_yet') %>
12
+ </strong>
13
+ <% end %>
14
+ </p>
15
+ <% end %>
16
+ </div>
@@ -0,0 +1,5 @@
1
+ <ul id='sortable_list'>
2
+ <%= render :partial => 'team', :collection => @teams %>
3
+ </ul>
4
+ <%= render '/refinery/admin/sortable_list',
5
+ :continue_reordering => (local_assigns.keys.include?(:continue_reordering)) ? continue_reordering : true %>
@@ -0,0 +1,20 @@
1
+ <li class='clearfix record <%= cycle("on", "on-hover") %>' id="<%= dom_id(team) -%>">
2
+ <span class='title'>
3
+ <%= team.fullname %>
4
+ <% if team.draft? %><span class="label notice"><%= t('.draft')%></span><% end %>
5
+ </span>
6
+ <span class='actions'>
7
+
8
+ <%= link_to refinery_icon_tag("application_go.png"), refinery.teams_team_path(team),
9
+ :title => t('.view_live_html'),
10
+ :target => "_blank" %>
11
+
12
+ <%= link_to refinery_icon_tag("application_edit.png"), refinery.edit_teams_admin_team_path(team),
13
+ :title => t('.edit') %>
14
+ <%= link_to refinery_icon_tag("delete.png"), refinery.teams_admin_team_path(team),
15
+ :class => "cancel confirm-delete",
16
+ :title => t('.delete'),
17
+ :data => {:confirm => t('message', :scope => 'refinery.admin.delete', :title => team.fullname)},
18
+ :method => :delete %>
19
+ </span>
20
+ </li>
@@ -0,0 +1,2 @@
1
+ <%= will_paginate @teams if Refinery::Teams::Admin::TeamsController.pageable? %>
2
+ <%= render 'sortable_list' %>
@@ -0,0 +1 @@
1
+ <%= render 'form' %>
@@ -0,0 +1,7 @@
1
+ <section id='records'>
2
+ <%= render 'records' %>
3
+ </section>
4
+ <aside id='actions'>
5
+ <%= render 'actions' %>
6
+ </aside>
7
+ <%= render '/refinery/admin/make_sortable', options: {tree: false} if !searching? and ::Refinery::Teams::Admin::TeamsController.sortable? and ::Refinery::Teams::Team.many? %>
@@ -0,0 +1 @@
1
+ <%= render 'form' %>
@@ -0,0 +1,17 @@
1
+ <% content_for :body do %>
2
+ <% if @teams.any? %>
3
+ <section>
4
+ <ul id="teams">
5
+ <% @teams.each do |team| %>
6
+ <li>
7
+ <%= link_to team.fullname, refinery.teams_team_path(team) %>
8
+ </li>
9
+ <% end %>
10
+ </ul>
11
+ </section>
12
+ <% else %>
13
+ <%= t('.no_items_yet') %>
14
+ <% end %>
15
+ <% end %>
16
+
17
+ <%= render '/refinery/content_page' %>
@@ -0,0 +1,51 @@
1
+ <% content_for :body_content_title do %>
2
+ <%= @team.fullname %>
3
+ <% end %>
4
+
5
+ <% content_for :body do %>
6
+ <section>
7
+ <h1>Fullname</h1>
8
+ <p>
9
+ <%=raw @team.fullname %>
10
+ </p>
11
+ </section>
12
+ <section>
13
+ <h1>Title</h1>
14
+ <p>
15
+ <%=raw @team.title %>
16
+ </p>
17
+ </section>
18
+ <section>
19
+ <h1>Body</h1>
20
+ <p>
21
+ <%=raw @team.body %>
22
+ </p>
23
+ </section>
24
+ <section>
25
+ <h1>Photo</h1>
26
+ <p>
27
+ <%= image_fu @team.photo, nil %>
28
+ </p>
29
+ </section>
30
+ <section>
31
+ <h1>Email</h1>
32
+ <p>
33
+ <%=raw @team.email %>
34
+ </p>
35
+ </section>
36
+ <% end %>
37
+
38
+ <% content_for :side_body do %>
39
+ <aside>
40
+ <h2><%= t('.other') %></h2>
41
+ <ul id="teams">
42
+ <% @teams.each do |team| %>
43
+ <li>
44
+ <%= link_to team.fullname, refinery.teams_team_path(team) %>
45
+ </li>
46
+ <% end %>
47
+ </ul>
48
+ </aside>
49
+ <% end %>
50
+
51
+ <%= render '/refinery/content_page' %>
@@ -0,0 +1,32 @@
1
+ cs:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Teams
6
+ teams:
7
+ admin:
8
+ teams:
9
+ actions:
10
+ create_new: Přidat Team
11
+ reorder: Řadit Teams
12
+ reorder_done: Konec řazení Teams
13
+ records:
14
+ title: Teams
15
+ sorry_no_results: Litujeme, ale nebyly nalezny žádné výsledky.
16
+ no_items_yet: Zatím nebyly vytvořeny žádné Teams. Zvolte "Přidat Team" pro přidání prvního team.
17
+ team:
18
+ view_live_html: Zobrazit náhled team<br/><em>(otevře se v novém okně)</em>
19
+ edit: Upravit team
20
+ delete: Smazat team
21
+ teams:
22
+ show:
23
+ other: Další Teams
24
+ activerecord:
25
+ attributes:
26
+ 'refinery/teams/team':
27
+ fullname: Fullname
28
+ title: Title
29
+ body: Body
30
+ photo: Photo
31
+ email: Email
32
+ draft: Draft
@@ -0,0 +1,35 @@
1
+ en:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Teams
6
+ teams:
7
+ admin:
8
+ teams:
9
+ actions:
10
+ create_new: Add New Team
11
+ reorder: Reorder Teams
12
+ reorder_done: Done Reordering Teams
13
+ records:
14
+ title: Teams
15
+ sorry_no_results: Sorry! There are no results found.
16
+ no_items_yet: There are no Teams yet. Click "Add New Team" to add your first team.
17
+ team:
18
+ view_live_html: View this team live <br/><em>(opens in a new window)</em>
19
+ edit: Edit this team
20
+ delete: Remove this team forever
21
+ draft: draft
22
+ teams:
23
+ index:
24
+ no_items_yet: There are no Teams yet.
25
+ show:
26
+ other: Other Teams
27
+ activerecord:
28
+ attributes:
29
+ 'refinery/teams/team':
30
+ fullname: Fullname
31
+ title: Title
32
+ body: Body
33
+ photo: Photo
34
+ email: Email
35
+ draft: Save as draft
@@ -0,0 +1,33 @@
1
+ es:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Teams
6
+ # article: masculino/femenino
7
+ teams:
8
+ admin:
9
+ teams:
10
+ actions:
11
+ create_new: Crear nuevo team
12
+ reorder: Reordenar teams
13
+ reorder_done: Reordenación de teams completada
14
+ records:
15
+ title: Teams
16
+ sorry_no_results: Lo siento, no hay resultados
17
+ no_items_yet: No hay teams todavía. Pulsa en "Crear nuevo Team" para crear tu primer team.
18
+ team:
19
+ view_live_html: Ver este team como abierto al público <br/><em>(abre en ventana nueva)</em>
20
+ edit: Editar este team
21
+ delete: Borrar este team para siempre
22
+ teams:
23
+ show:
24
+ other: Otros teams
25
+ activerecord:
26
+ attributes:
27
+ 'refinery/teams/team':
28
+ fullname: Fullname
29
+ title: Title
30
+ body: Body
31
+ photo: Photo
32
+ email: Email
33
+ draft: Draft
@@ -0,0 +1,35 @@
1
+ fr:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Équipe
6
+ teams:
7
+ admin:
8
+ teams:
9
+ actions:
10
+ create_new: Créer un(e) nouve(l/lle) équip(ier/ère)
11
+ reorder: Réordonner les équipiers
12
+ reorder_done: Fin de réordonnancement des équipiers
13
+ records:
14
+ title: Équipe
15
+ sorry_no_results: "Désolé ! Aucun résultat."
16
+ no_items_yet: 'Il n''y a actuellement aucun(e) équipier. Cliquer sur "Créer un(e) nouve(l/lle) équip(ier/ère)" pour créer votre premi(er/ère) équip(ier/ère).'
17
+ team:
18
+ view_live_html: Voir ce(t/tte) équip(ier/ère) <br/><em>(Ouvre une nouvelle fenêtre)</em>
19
+ edit: Modifier ce(t/tte) équip(ier/ère)
20
+ delete: Supprimer définitivement ce(t/tte) équip(ier/ère)
21
+ draft: brouillon
22
+ teams:
23
+ index:
24
+ no_items_yet: Il n''y a actuellement aucun(e) équipier.
25
+ show:
26
+ other: Autres équip(ier/ère)
27
+ activerecord:
28
+ attributes:
29
+ 'refinery/teams/team':
30
+ fullname: Nom complet
31
+ title: Titre
32
+ body: Corps
33
+ photo: Photo
34
+ email: Courriel
35
+ draft: Enregistrer comme un brouillon
@@ -0,0 +1,32 @@
1
+ it:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Teams
6
+ teams:
7
+ admin:
8
+ teams:
9
+ actions:
10
+ create_new: Aggiungi Nuovo Team
11
+ reorder: Riordina Teams
12
+ reorder_done: Termina il Riordino di Teams
13
+ records:
14
+ title: Teams
15
+ sorry_no_results: "Spiacenti! Nessun risultato trovato"
16
+ no_items_yet: Non ci sono ancora Teams. Clicca "Aggiungi Nuovo Team" per aggiungere il tuo primo team.
17
+ team:
18
+ view_live_html: Guarda live questo team <br/><em>(apre una nuova finestra)</em>
19
+ edit: Modifica questo team
20
+ delete: Rimuovi per sempre questo team
21
+ teams:
22
+ show:
23
+ other: Altri Teams
24
+ activerecord:
25
+ attributes:
26
+ 'refinery/teams/team':
27
+ fullname: Fullname
28
+ title: Title
29
+ body: Body
30
+ photo: Photo
31
+ email: Email
32
+ draft: Draft
@@ -0,0 +1,32 @@
1
+ nb:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Teams
6
+ teams:
7
+ admin:
8
+ teams:
9
+ actions:
10
+ create_new: Lag en ny Team
11
+ reorder: Endre rekkefølgen på Teams
12
+ reorder_done: Ferdig å endre rekkefølgen Teams
13
+ records:
14
+ title: Teams
15
+ sorry_no_results: Beklager! Vi fant ikke noen resultater.
16
+ no_items_yet: Det er ingen Teams enda. Klikk på "Lag en ny Team" for å legge til din første team.
17
+ team:
18
+ view_live_html: Vis hvordan denne team ser ut offentlig <br/><em>(åpner i et nytt vindu)</em>
19
+ edit: Rediger denne team
20
+ delete: Fjern denne team permanent
21
+ teams:
22
+ show:
23
+ other: Andre Teams
24
+ activerecord:
25
+ attributes:
26
+ 'refinery/teams/team':
27
+ fullname: Fullname
28
+ title: Title
29
+ body: Body
30
+ photo: Photo
31
+ email: Email
32
+ draft: Draft
@@ -0,0 +1,32 @@
1
+ nl:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Teams
6
+ teams:
7
+ admin:
8
+ teams:
9
+ actions:
10
+ create_new: Nieuwe Team toevoegen
11
+ reorder: De volgorde van de Teams wijzigen
12
+ reorder_done: Klaar met het wijzingen van de van de Team-volgorde
13
+ records:
14
+ title: Teams
15
+ sorry_no_results: Helaas! Er zijn geen resultaten gevonden.
16
+ no_items_yet: Er zijn nog geen Teams. Druk op 'Nieuwe Team toevoegen' om de eerste toe te voegen.
17
+ team:
18
+ view_live_html: Deze team op de website bekijken <br/><em>(opent in een nieuw venster)</em>
19
+ edit: Bewerk deze team
20
+ delete: Deze team definitief verwijderen
21
+ teams:
22
+ show:
23
+ other: Andere Teams
24
+ activerecord:
25
+ attributes:
26
+ 'refinery/teams/team':
27
+ fullname: Fullname
28
+ title: Title
29
+ body: Body
30
+ photo: Photo
31
+ email: Email
32
+ draft: Draft
@@ -0,0 +1,32 @@
1
+ sk:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Teams
6
+ teams:
7
+ admin:
8
+ teams:
9
+ actions:
10
+ create_new: Pridať Team
11
+ reorder: Preusporiadať Teams
12
+ reorder_done: Koniec radenia Teams
13
+ records:
14
+ title: Teams
15
+ sorry_no_results: Ľutujeme, ale neboli nájdené žiadne výsledky.
16
+ no_items_yet: Nie sú vytvorené žiadne Teams. Kliknite na "Pridať Team" pre pridanie prvého team.
17
+ team:
18
+ view_live_html: Zobraziť náhľad team<br/><em>(otvorí sa v novom okne)</em>
19
+ edit: Upraviť team
20
+ delete: Zmazať team
21
+ teams:
22
+ show:
23
+ other: Daľšie Teams
24
+ activerecord:
25
+ attributes:
26
+ 'refinery/teams/team':
27
+ fullname: Fullname
28
+ title: Title
29
+ body: Body
30
+ photo: Photo
31
+ email: Email
32
+ draft: Draft
@@ -0,0 +1,32 @@
1
+ tr:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Teams
6
+ teams:
7
+ admin:
8
+ teams:
9
+ actions:
10
+ create_new: Yeni Ekle Team
11
+ reorder: Tekrar sirala Teams
12
+ reorder_done: Tekrar siralama tamamlandiTeams
13
+ records:
14
+ title: Teams
15
+ sorry_no_results: Uzgunum! Herhangi bir sonuc bulunamadi.
16
+ no_items_yet: Herhangi bir Teams yok henuz. Tikla "Yeni Ekle Team" eklemek senin ilk team.
17
+ team:
18
+ view_live_html: Bunu canlu team goruntule <br/><em>(yeni bir pencerede acar)</em>
19
+ edit: Bunu Duzenle team
20
+ delete: Bunu Sil team sonsuza dek
21
+ teams:
22
+ show:
23
+ other: Diger Teams
24
+ activerecord:
25
+ attributes:
26
+ 'refinery/teams/team':
27
+ fullname: Fullname
28
+ title: Title
29
+ body: Body
30
+ photo: Photo
31
+ email: Email
32
+ draft: Draft
@@ -0,0 +1,34 @@
1
+ zh-CN:
2
+ refinery:
3
+ plugins:
4
+ teams:
5
+ title: Teams
6
+ teams:
7
+ admin:
8
+ teams:
9
+ actions:
10
+ create_new: 建立新的 Team
11
+ reorder: 对 Teams 重新排序
12
+ reorder_done: 对 Teams 的重新排序结束
13
+ records:
14
+ title: Teams
15
+ sorry_no_results: 对不起,未找到结果。 #Sorry! There are no results found.
16
+
17
+ # There are no Teams yet. Click "Add New Team" to add your first team.
18
+ no_items_yet: 目前没有 Teams . 点击 "Add New Team" 创建一个team.
19
+ team:
20
+ view_live_html: 查看 team 的最新内容.<br/><em>(新窗口中打开)</em>
21
+ edit: 编辑 team
22
+ delete: 永久删除 team
23
+ teams:
24
+ show:
25
+ other: 其他 Teams
26
+ activerecord:
27
+ attributes:
28
+ 'refinery/teams/team':
29
+ fullname: Fullname
30
+ title: Title
31
+ body: Body
32
+ photo: Photo
33
+ email: Email
34
+ draft: Draft
@@ -0,0 +1,19 @@
1
+ Refinery::Core::Engine.routes.draw do
2
+
3
+ # Frontend routes
4
+ namespace :teams, :path => Refinery::Teams.page_url do
5
+ root :to => "teams#index"
6
+ resources :teams, :path => '', :only => [:index, :show]
7
+ end
8
+
9
+ # Admin routes
10
+ namespace :teams, :path => '' do
11
+ namespace :admin, :path => Refinery::Core.backend_route do
12
+ resources :teams, :except => :show do
13
+ collection do
14
+ post :update_positions
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,31 @@
1
+ class CreateTeamsTeams < ActiveRecord::Migration
2
+
3
+ def up
4
+ create_table :refinery_teams do |t|
5
+ t.string :fullname
6
+ t.string :title
7
+ t.text :body
8
+ t.integer :photo_id
9
+ t.string :email
10
+ t.integer :draft, :default => true
11
+ t.integer :position
12
+
13
+ t.timestamps
14
+ end
15
+
16
+ end
17
+
18
+ def down
19
+ if defined?(::Refinery::UserPlugin)
20
+ ::Refinery::UserPlugin.destroy_all({:name => "refinerycms-teams"})
21
+ end
22
+
23
+ if defined?(::Refinery::Page)
24
+ ::Refinery::Page.delete_all({:link_url => "/teams/teams"})
25
+ end
26
+
27
+ drop_table :refinery_teams
28
+
29
+ end
30
+
31
+ end
@@ -0,0 +1,19 @@
1
+ Refinery::I18n.frontend_locales.each do |lang|
2
+ I18n.locale = lang
3
+
4
+ Refinery::User.find_each do |user|
5
+ user.plugins.where(name: 'refinerycms-teams').first_or_create!(
6
+ position: (user.plugins.maximum(:position) || -1) +1
7
+ )
8
+ end if defined?(Refinery::User)
9
+
10
+ Refinery::Page.where(link_url: (url = "/teams")).first_or_create!(
11
+ title: 'Teams',
12
+ deletable: false,
13
+ menu_match: "^#{url}(\/|\/.+?|)$"
14
+ ) do |page|
15
+ Refinery::Pages.default_parts.each_with_index do |part, index|
16
+ page.parts.build title: part, body: nil, position: index
17
+ end
18
+ end if defined?(Refinery::Page)
19
+ end
@@ -0,0 +1,25 @@
1
+ module Refinery
2
+ class TeamsGenerator < Rails::Generators::Base
3
+
4
+ source_root File.expand_path("../templates", __FILE__)
5
+
6
+ def generate_teams_initializer
7
+ template "config/initializers/refinery/teams.rb.erb", File.join(destination_root, "config", "initializers", "refinery", "teams.rb")
8
+ end
9
+
10
+ def rake_db
11
+ rake "refinery_teams:install:migrations"
12
+ end
13
+
14
+ def append_load_seed_data
15
+ create_file 'db/seeds.rb' unless File.exists?(File.join(destination_root, 'db', 'seeds.rb'))
16
+ append_file 'db/seeds.rb', :verbose => true do
17
+ <<-EOH
18
+
19
+ # Added by Refinery CMS Teams extension
20
+ Refinery::Teams::Engine.load_seed
21
+ EOH
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,3 @@
1
+ Refinery::Teams.configure do |config|
2
+ # config.page_url = <%= Refinery::Teams.page_url.inspect %>
3
+ end
@@ -0,0 +1,22 @@
1
+ require 'refinerycms-core'
2
+
3
+ module Refinery
4
+ autoload :TeamsGenerator, 'generators/refinery/teams/teams_generator'
5
+
6
+ module Teams
7
+ require 'refinery/teams/engine'
8
+ require 'refinery/teams/configuration'
9
+
10
+ class << self
11
+ attr_writer :root
12
+
13
+ def root
14
+ @root ||= Pathname.new(File.expand_path('../../../', __FILE__))
15
+ end
16
+
17
+ def factory_paths
18
+ @factory_paths ||= [ root.join('spec', 'factories').to_s ]
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,9 @@
1
+ module Refinery
2
+ module Teams
3
+ include ActiveSupport::Configurable
4
+
5
+ config_accessor :page_url
6
+
7
+ self.page_url = "/teams"
8
+ end
9
+ end
@@ -0,0 +1,23 @@
1
+ module Refinery
2
+ module Teams
3
+ class Engine < Rails::Engine
4
+ extend Refinery::Engine
5
+ isolate_namespace Refinery::Teams
6
+
7
+ engine_name :refinery_teams
8
+
9
+ before_inclusion do
10
+ Refinery::Plugin.register do |plugin|
11
+ plugin.name = "teams"
12
+ plugin.url = proc { Refinery::Core::Engine.routes.url_helpers.teams_admin_teams_path }
13
+ plugin.pathname = root
14
+
15
+ end
16
+ end
17
+
18
+ config.after_initialize do
19
+ Refinery.register_extension(Refinery::Teams)
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1 @@
1
+ require 'refinery/teams'
@@ -0,0 +1,13 @@
1
+ namespace :refinery do
2
+
3
+ namespace :teams do
4
+
5
+ # call this task by running: rake refinery:teams:my_task
6
+ # desc "Description of my task below"
7
+ # task :my_task => :environment do
8
+ # # add your logic here
9
+ # end
10
+
11
+ end
12
+
13
+ end
@@ -0,0 +1,10 @@
1
+ # Teams extension for Refinery CMS.
2
+
3
+ ## How to build this extension as a gem (not required)
4
+
5
+ cd vendor/extensions/teams
6
+ gem build refinerycms-teams.gemspec
7
+ gem install refinerycms-teams.gem
8
+
9
+ # Sign up for a http://rubygems.org/ account and publish the gem
10
+ gem push refinerycms-teams.gem
metadata ADDED
@@ -0,0 +1,133 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: refinerycms-teams
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.0.0.dev
5
+ platform: ruby
6
+ authors:
7
+ - Brice Sanchez
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-10-06 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: refinerycms-core
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 3.0.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 3.0.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: acts_as_indexed
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.8.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.8.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: route_translator
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 3.2.4
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 3.2.4
55
+ - !ruby/object:Gem::Dependency
56
+ name: refinerycms-testing
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 3.0.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 3.0.0
69
+ description: Ruby on Rails Team extension for Refinery CMS
70
+ email: info@bisscomm.com
71
+ executables: []
72
+ extensions: []
73
+ extra_rdoc_files: []
74
+ files:
75
+ - app/controllers/refinery/teams/admin/teams_controller.rb
76
+ - app/controllers/refinery/teams/teams_controller.rb
77
+ - app/models/refinery/teams/team.rb
78
+ - app/views/refinery/teams/admin/teams/_actions.html.erb
79
+ - app/views/refinery/teams/admin/teams/_form.html.erb
80
+ - app/views/refinery/teams/admin/teams/_records.html.erb
81
+ - app/views/refinery/teams/admin/teams/_sortable_list.html.erb
82
+ - app/views/refinery/teams/admin/teams/_team.html.erb
83
+ - app/views/refinery/teams/admin/teams/_teams.html.erb
84
+ - app/views/refinery/teams/admin/teams/edit.html.erb
85
+ - app/views/refinery/teams/admin/teams/index.html.erb
86
+ - app/views/refinery/teams/admin/teams/new.html.erb
87
+ - app/views/refinery/teams/teams/index.html.erb
88
+ - app/views/refinery/teams/teams/show.html.erb
89
+ - config/locales/cs.yml
90
+ - config/locales/en.yml
91
+ - config/locales/es.yml
92
+ - config/locales/fr.yml
93
+ - config/locales/it.yml
94
+ - config/locales/nb.yml
95
+ - config/locales/nl.yml
96
+ - config/locales/sk.yml
97
+ - config/locales/tr.yml
98
+ - config/locales/zh-CN.yml
99
+ - config/routes.rb
100
+ - db/migrate/1_create_teams_teams.rb
101
+ - db/seeds.rb
102
+ - lib/generators/refinery/teams/teams_generator.rb
103
+ - lib/generators/refinery/teams/templates/config/initializers/refinery/teams.rb.erb
104
+ - lib/refinery/teams.rb
105
+ - lib/refinery/teams/configuration.rb
106
+ - lib/refinery/teams/engine.rb
107
+ - lib/refinerycms-teams.rb
108
+ - lib/tasks/refinery/teams.rake
109
+ - readme.md
110
+ homepage:
111
+ licenses: []
112
+ metadata: {}
113
+ post_install_message:
114
+ rdoc_options: []
115
+ require_paths:
116
+ - lib
117
+ required_ruby_version: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - ">="
120
+ - !ruby/object:Gem::Version
121
+ version: '0'
122
+ required_rubygems_version: !ruby/object:Gem::Requirement
123
+ requirements:
124
+ - - ">"
125
+ - !ruby/object:Gem::Version
126
+ version: 1.3.1
127
+ requirements: []
128
+ rubyforge_project:
129
+ rubygems_version: 2.2.2
130
+ signing_key:
131
+ specification_version: 4
132
+ summary: Team extension for Refinery CMS
133
+ test_files: []