refinerycms-teams 3.0.0.dev

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 (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: []