OSDN Git Service

fix owner
authoryasushiito <yas@pen-chan.jp>
Thu, 5 Jun 2014 23:17:40 +0000 (08:17 +0900)
committeryasushiito <yas@pen-chan.jp>
Thu, 5 Jun 2014 23:17:40 +0000 (08:17 +0900)
15 files changed:
app/assets/javascripts/manifest/work/items.js.coffee.erb
app/controllers/application_controller.rb
app/controllers/artists_controller.rb
app/controllers/authors_controller.rb
app/helpers/application_helper.rb
app/models/artist.rb
app/models/author.rb
app/models/comic_story.rb
app/models/license_group.rb
app/models/scroll_panel.rb
app/models/story_sheet.rb
app/models/writing_format.rb
app/views/artists/show.html.erb
app/views/authors/show.html.erb
app/views/panels/index.html.erb

index 074015b..9058711 100644 (file)
     },\r
   },\r
   author: {\r
+    type: 'owner',\r
   },\r
   artist: {\r
+    type: 'owner',\r
   },\r
   system_picture: {\r
     type: 'system_resource',\r
index 8169f6f..20457eb 100644 (file)
@@ -213,10 +213,10 @@ class ApplicationController < ActionController::Base
     render_form
   end
   
-  def created_html_format format
+  def created_html_format format, redirect_url = nil
     format.html {
       flash[:notice] = I18n.t('flash.notice.created', :model => @my_model_class.model_name.human)
-      redirect_to @item
+      redirect_to (redirect_url ? redirect_url : @item)
     }
   end
   
@@ -239,10 +239,10 @@ class ApplicationController < ActionController::Base
     }
   end
   
-  def render_create
+  def render_create redirect_url = nil
     if @item.save
       respond_to do |format|
-        created_html_format format
+        created_html_format format, redirect_url
         created_json_format format
       end
     else
@@ -281,10 +281,10 @@ class ApplicationController < ActionController::Base
     end
   end
   
-  def updated_html_format format
+  def updated_html_format format, redirect_url = nil
     format.html {
       flash[:notice] = I18n.t('flash.notice.updated', :model => @my_model_class.model_name.human)
-      redirect_to @item
+      redirect_to (redirect_url ? redirect_url : @item)
     }
   end
   
@@ -307,10 +307,10 @@ class ApplicationController < ActionController::Base
     }
   end
   
-  def render_update
+  def render_update redirect_url = nil
     if @item.save
       respond_to do |format|
-        updated_html_format format
+        updated_html_format format, redirect_url = nil
         updated_json_format format
       end
     else
index f840f78..3f641b4 100644 (file)
@@ -18,7 +18,6 @@ class ArtistsController < ApplicationController
   
   def show_html_format format
     format.html {
-      @artist = @item
     }
   end
   
@@ -44,45 +43,25 @@ class ArtistsController < ApplicationController
   end
   
   def create
-    @artist = Artist.new()
-    @artist.supply_default 
-    @artist.attributes = params[:artist]
-    @artist.overwrite @operators
-    respond_to do |format|
-      if @artist.save
-        flash[:notice] = I18n.t('flash.notice.created', :model => Artist.model_name.human)
-        format.html { redirect_to root_path }
-        format.json { render json: @artist.to_json(Artist.show_json_opt), status: :created, location: @artist }
-      else
-        flash[:notice] = I18n.t('flash.notice.not_created', :model => Artist.model_name.human)
-        format.html { render action: "new" }
-        format.json { render json: @artist.errors, status: :unprocessable_entity }
-      end
-    end
+    set_model
+    @item = @my_model_class.new
+    @item.supply_default 
+    @item.attributes = params[@my_model_class.item_name]
+    @item.overwrite @operators
+    render_create root_path
   end
-
+  
   def update
-    @artist = Artist.edit(params[:id], @operators)
-    @artist.attributes = params[:artist]
-    @artist.overwrite @operators
-
-    respond_to do |format|
-      if @artist.save
-        flash[:notice] = I18n.t('flash.notice.updated', :model => Artist.model_name.human)
-        format.html { redirect_to '/home/configure' }
-        format.json { head :ok }
-      else
-        flash[:notice] = I18n.t('flash.notice.not_updated', :model => Artist.model_name.human)
-        format.html { render action: "edit" }
-        format.json { render json: @artist.errors, status: :unprocessable_entity }
-      end
-    end
+    set_edit
+    @item.attributes = params[@my_model_class.item_name]
+    @item.overwrite @operators
+    render_update '/home/configure'
   end
-
+  
   def destroy
     @artist = Artist.edit(params[:id], @operators)
     @artist.destroy
-
+    
     respond_to do |format|
       format.html { redirect_to artists_url }
       format.json { head :ok }
index 5cc0314..f45feb6 100644 (file)
@@ -18,7 +18,6 @@ class AuthorsController < ApplicationController
   
   def show_html_format format
     format.html {
-      @author = @item
     }
   end
   
@@ -44,38 +43,18 @@ class AuthorsController < ApplicationController
   end
   
   def create
-    @author = Author.new()
-    @author.supply_default 
-    @author.attributes = params[:author]
-    @author.overwrite @operators
-    respond_to do |format|
-      if @author.save
-        flash[:notice] = I18n.t('flash.notice.created', :model => Author.model_name.human)
-        format.html { redirect_to root_path }
-        format.json { render json: @author.to_json(Author.show_json_opt), status: :created }
-      else
-        flash[:notice] = I18n.t('flash.notice.not_created', :model => Author.model_name.human)
-        format.html { render action: "new" }
-        format.json { render json: @au.errors, status: :unprocessable_entity }
-      end
-    end
+    set_model
+    @item = @my_model_class.new
+    @item.supply_default 
+    @item.attributes = params[@my_model_class.item_name]
+    @item.overwrite @operators
+    render_create root_path
   end
-
+  
   def update
-    @author = Author.edit(params[:id], @operators)
-    @author.attributes = params[:author]
-    @author.overwrite @operators
-
-    respond_to do |format|
-      if @author.save
-        flash[:notice] = I18n.t('flash.notice.updated', :model => Author.model_name.human)
-        format.html { redirect_to '/home/configure' }
-        format.json { head :ok }
-      else
-        flash[:notice] = I18n.t('flash.notice.not_updated', :model => Author.model_name.human)
-        format.html { render action: "edit" }
-        format.json { render json: @author.errors, status: :unprocessable_entity }
-      end
-    end
+    set_edit
+    @item.attributes = params[@my_model_class.item_name]
+    @item.overwrite @operators
+    render_update '/home/configure'
   end
 end
index aa514c7..d83d256 100644 (file)
@@ -81,7 +81,7 @@ module ApplicationHelper
   def panel_editor_javascript_include_tags
     WritingFormat.enable_list().map {|wf|
 #      javascript_include_tag wf.engine_name
-      javascript_include_tag wf.engine_name + "/application"
+      javascript_include_tag wf.my_engine_name + "/application"
     }.join("\n") + 
     SpeechBalloonTemplate.enable_list().map {|sbt|
       stylesheet_link_tag sbt.my_engine_name + "/application"
index 3f39903..467b647 100644 (file)
@@ -21,18 +21,6 @@ class Artist < Peta::Owner
     'artists.provider_id is null'
   end
   
-  def self.list_order
-    'artists.created_at desc'
-  end
-  
-  def self.list_opt
-    {:user => {:author => {}} }
-  end
-  
-  def self.list_json_opt
-    {:include => {:user => {:author => {}}} }
-  end
-  
   def self.show_opt
     {:include => {:user => {:author => {}}} }
   end
index 8560076..b8c236b 100644 (file)
@@ -19,22 +19,6 @@ class Author < Peta::Owner
     self.working_panel_id and self.working_panel
   end
   
-  def self.list_where
-    ''
-  end
-  
-  def self.list_order
-    'authors.created_at desc'
-  end
-  
-  def self.list_opt
-    {:user => {:artist => {}} }
-  end
-  
-  def self.list_json_opt
-    {:include => {:user => {:artist => {}}} }
-  end
-  
   def self.show_opt
     {:include => {:user => {:artist => {}}} }
   end
@@ -43,214 +27,4 @@ class Author < Peta::Owner
     {:include => {:user => {:artist => {}}} }
   end
   
-  def self.default_scroll_page_size
-    25
-  end
-  
-  def self.scroll_max_page_size
-    100
-  end
-  
-  def self.scroll_page_size prm = self.default_scroll_page_size
-    page_size = prm.to_i
-    page_size = self.scroll_max_page_size if page_size > self.scroll_max_page_size
-    page_size = self.default_scroll_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_scroll_panel_page_size
-    25
-  end
-  
-  def self.scroll_panel_max_page_size
-    100
-  end
-  
-  def self.scroll_panel_page_size prm = self.default_scroll_panel_page_size
-    page_size = prm.to_i
-    page_size = self.scroll_panel_max_page_size if page_size > self.scroll_panel_max_page_size
-    page_size = self.default_scroll_panel_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_comic_page_size
-    25
-  end
-  
-  def self.comic_max_page_size
-    100
-  end
-  
-  def self.comic_page_size prm = self.default_comic_page_size
-    page_size = prm.to_i
-    page_size = self.comic_max_page_size if page_size > self.comic_max_page_size
-    page_size = self.default_comic_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_story_page_size
-    25
-  end
-  
-  def self.story_max_page_size
-    100
-  end
-  
-  def self.story_page_size prm = self.default_story_page_size
-    page_size = prm.to_i
-    page_size = self.story_max_page_size if page_size > self.story_max_page_size
-    page_size = self.default_story_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_story_sheet_page_size
-    25
-  end
-  
-  def self.story_sheet_max_page_size
-    100
-  end
-  
-  def self.story_sheet_page_size prm = self.default_story_sheet_page_size
-    page_size = prm.to_i
-    page_size = self.story_sheet_max_page_size if page_size > self.story_sheet_max_page_size
-    page_size = self.default_story_sheet_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_sheet_page_size
-    25
-  end
-  
-  def self.sheet_max_page_size
-    100
-  end
-  
-  def self.sheet_page_size prm = self.default_sheet_page_size
-    page_size = prm.to_i
-    page_size = self.sheet_max_page_size if page_size > self.sheet_max_page_size
-    page_size = self.default_sheet_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_sheet_panel_page_size
-    25
-  end
-  
-  def self.sheet_panel_max_page_size
-    100
-  end
-  
-  def self.sheet_panel_page_size prm = self.default_sheet_panel_page_size
-    page_size = prm.to_i
-    page_size = self.sheet_panel_max_page_size if page_size > self.sheet_panel_max_page_size
-    page_size = self.default_sheet_panel_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_panel_page_size
-    25
-  end
-  
-  def self.panel_max_page_size
-    100
-  end
-  
-  def self.panel_page_size prm = self.default_panel_page_size
-    page_size = prm.to_i
-    page_size = self.panel_max_page_size if page_size > self.panel_max_page_size
-    page_size = self.default_panel_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_panel_picture_page_size
-    25
-  end
-  
-  def self.panel_picture_max_page_size
-    100
-  end
-  
-  def self.panel_picture_page_size prm = self.default_panel_picture_page_size
-    page_size = prm.to_i
-    page_size = self.panel_picture_max_page_size if page_size > self.panel_picture_max_page_size
-    page_size = self.default_panel_picture_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_speech_balloon_page_size
-    25
-  end
-  
-  def self.speech_balloon_max_page_size
-    100
-  end
-  
-  def self.speech_balloon_page_size prm = self.default_speech_balloon_page_size
-    page_size = prm.to_i
-    page_size = self.speech_balloon_max_page_size if page_size > self.speech_balloon_max_page_size
-    page_size = self.default_speech_balloon_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_ground_picture_page_size
-    25
-  end
-  
-  def self.ground_picture_max_page_size
-    100
-  end
-  
-  def self.ground_picture_page_size prm = self.default_ground_picture_page_size
-    page_size = prm.to_i
-    page_size = self.ground_picture_max_page_size if page_size > self.ground_picture_max_page_size
-    page_size = self.default_ground_picture_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_ground_color_page_size
-    25
-  end
-  
-  def self.ground_color_max_page_size
-    100
-  end
-  
-  def self.ground_color_page_size prm = self.default_ground_color_page_size
-    page_size = prm.to_i
-    page_size = self.ground_color_max_page_size if page_size > self.ground_color_max_page_size
-    page_size = self.default_ground_color_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_panel_color_page_size
-    25
-  end
-  
-  def self.panel_color_max_page_size
-    100
-  end
-  
-  def self.panel_color_page_size prm = self.default_panel_color_page_size
-    page_size = prm.to_i
-    page_size = self.panel_color_max_page_size if page_size > self.panel_color_max_page_size
-    page_size = self.default_panel_color_page_size if page_size < 1
-    page_size
-  end
-  
-  def self.default_resource_picture_page_size
-    25
-  end
-  
-  def self.resource_picture_max_page_size
-    100
-  end
-  
-  def self.resource_picture_page_size prm = self.default_resource_picture_page_size
-    page_size = prm.to_i
-    page_size = self.resource_picture_max_page_size if page_size > self.resource_picture_max_page_size
-    page_size = self.default_resource_picture_page_size if page_size < 1
-    page_size
-  end
-  
 end
index b109c99..77d4003 100644 (file)
@@ -36,22 +36,14 @@ class ComicStory < Peta::Leaf
     'comics.visible > 0'
   end
   
-  def self.list_opt
+  def self.by_author_list_includes
     {
       :comic => {
-        :author => {}
+        :author => {}
       }
     }
   end
   
-  def self.list_json_opt
-    {:include => {
-      :comic => {
-        :author => {}, 
-      }
-    }}
-  end
-  
   def self.show_opt
     {:include => {
       :comic => {
index fb9f8fc..d9455c7 100644 (file)
@@ -14,22 +14,10 @@ class LicenseGroup < Peta::Template
   def overwrite
   end
   
-  def self.list_where
-    ''
-  end
-  
   def self.list_order
     'license_groups.name asc'
   end
   
-  def self.list_opt
-    {:include => {:licenses => {}}}
-  end
-  
-  def self.list_json_opt
-    {:include => {:licenses => {}}}
-  end
-  
   def self.show_opt
     {:include => {:licenses => {}}}
   end
index 9ce35bb..1970550 100644 (file)
@@ -28,6 +28,14 @@ class ScrollPanel < Peta::Leaf
     'scrolls.visible > 0'
   end
   
+  def self.by_author_list_includes
+    {
+      :scroll => {
+        :author => {}
+      }
+    }
+  end
+  
   def self.show_opt
     {:include => {
       :author => {}, 
index f517d74..f49d6b0 100644 (file)
@@ -24,25 +24,14 @@ class StorySheet < Peta::Leaf
     'stories.visible > 0'
   end
   
-  def self.list_opt
+  def self.by_author_list_includes
     {
-      :author => {}, 
       :story => {
-      }, 
-      :sheet => {
-        :author => {},
+        :author => {}
       }
     }
   end
   
-  def self.list_json_opt
-    {:include => {
-      :author => {}, 
-      :story => {} ,
-      :sheet => {:include => {:author => {}}} 
-    }}
-  end
-  
   def self.show_opt
     {:include => {
       :author => {}, 
index 071e93f..cd5afdd 100644 (file)
@@ -21,10 +21,6 @@ class WritingFormat < Peta::Template
     self.system_picture.tmb_opt_img_tag
   end
   
-  def self.list_where
-    ''
-  end
-  
   def self.list_order
     'writing_formats.t asc'
   end
@@ -61,28 +57,8 @@ end
     @parsed_settings ||= JSON.parse(self.settings)
   end
   
-  def my_engine_resource
-    Manifest.manifest.system_resources.engine_resources['writing_formats']
-  end
-  
-  def engine_name
-    self.my_engine_resource.resource_items[self.classname]
-  end
-  
-  def enable?
-    self.my_engine_resource.resource_items.include? self.classname
-  end
-  
-  def engine_module_name
-    self.engine_name.camelize
-  end
-  
-  def engine
-    Object.const_get self.engine_module_name
-  end
-  
-  def engine_model
-    engine.const_get 'Renderer'
+ def engine_model
+    my_engine.const_get 'Renderer'
   end
   
   def self.import filename
index 7535d6f..9292d6c 100644 (file)
@@ -1,22 +1,23 @@
-<% @page_title = t('.title') + ':' + @artist.name %>
-<h1><%= t '.title' -%></h1>
-<p id="notice"><%= notice %></p>
-
-<p>
-  <b><%= t_m 'Artist.name' -%>:</b>
-  <%= h @artist.name %>
-</p>
+<% @page_title = t('.title') + ':' + @item.name %>
+<h1>
+  <%= link_to icon_tag('Artist'), artist_path(@item) %>
+  <%= link_to h(@item.name), artist_path(@item) %>
+  <%= link_to icon_tag('Prof'), artist_path(@item, :format => :prof) %>
+</h1>
 
 <p>
   <b><%= t_m 'Artist.created_at' -%>:</b>
-  <%= l @artist.created_at %>
+  <%= l @item.created_at %>
 </p>
 
 <p>
   <b><%= t_m 'Artist.updated_at' -%>:</b>
-  <%= l @artist.updated_at %>
+  <%= l @item.updated_at %>
 </p>
 
-<% if @artist.own?(@artist) %>
-  <%= link_to t('link.edit'), edit_artist_path(@artist) %>
+<% if @item.own?(@item) %>
+  <h3><%= t('editor') -%></h3>
+  <p id="notice"><%= notice %></p>
+  
+  <%= link_to t('link.edit'), edit_artist_path(@item) %>
 <% end %>
index 5006a50..529975a 100644 (file)
@@ -1,22 +1,23 @@
-<% @page_title = t('.title') + ':' + @author.name %>
-<h1><%= t '.title' -%></h1>
-<p id="notice"><%= notice %></p>
-
-<p>
-  <b><%= t_m 'Author.name' -%>:</b>
-  <%= h @author.name %>
-</p>
+<% @page_title = t('.title') + ':' + @item.name %>
+<h1>
+  <%= link_to icon_tag('Author'), author_path(@item) %>
+  <%= link_to h(@item.name), author_path(@item) %>
+  <%= link_to icon_tag('Prof'), author_path(@item, :format => :prof) %>
+</h1>
 
 <p>
   <b><%= t_m 'Author.created_at' -%>:</b>
-  <%= l @author.created_at %>
+  <%= l @item.created_at %>
 </p>
 
 <p>
   <b><%= t_m 'Author.updated_at' -%>:</b>
-  <%= l @author.updated_at %>
+  <%= l @item.updated_at %>
 </p>
 
-<% if @author.own?(@author) %>
-  <%= link_to t('link.edit'), edit_author_path(@author) %>
+<% if @item.own?(@item) %>
+  <h3><%= t('editor') -%></h3>
+  <p id="notice"><%= notice %></p>
+  
+  <%= link_to t('link.edit'), edit_author_path(@item) %>
 <% end %>
index a90b013..8cd2db6 100644 (file)
@@ -7,6 +7,6 @@
     <%= render 'body', :panel => panel, :operators => @operators, :spot => nil %>
     <%= render 'panels/footer', :panel => panel, :operators => @operators %>
   <% end %>
-  <%= render 'scroll_panels/licensed_pictures', :licensed_pictures => Panel.licensed_pictures(@items) %>
+  <%= render 'panels/licensed_pictures', :licensed_pictures => Panel.licensed_pictures(@items) %>
   <%= paginate(@pager) %>
 <% end %>