val: () ->\r
parseInt(super) # humm... \r
\r
+ type: () ->\r
+ 'hidden'\r
+ \r
attr: () ->\r
r = super()\r
r['value'] = @value()\r
change: () ->\r
@field.trigger('change')\r
\r
+ attr: () ->\r
+ r = super()\r
+ sz = @options()['size']\r
+ if sz\r
+ r['size'] = sz\r
+ r\r
+ \r
end
def update
- @my_model_class = self.class.model
+ set_model
@item = @my_model_class.edit(params[:id], @operators)
ot = @item.t
@item.attributes = params[@item.item_name]
set_model
@item = @my_model_class.edit(params[:id], @operators)
@binder = @my_model_class.binder_model.edit(@item.binder_id, @operators) if @item.binder_id
- render_destroy '/home/' + play_comic_path(@item)
+ render_destroy play_comic_path(@binder)
end
end
def destroy
set_model
@item = @my_model_class.edit(params[:id], @operators)
- render_destroy @my_model_class.path_name
+ render_destroy '/' + @my_model_class.path_name
end
end
def destroy
set_model
@item = @my_model_class.edit(params[:id], @operators)
- render_destroy @my_model_class.path_name
+ render_destroy '/' + @my_model_class.path_name
end
end
def destroy
set_model
@item = @my_model_class.edit(params[:id], @operators)
- render_destroy @my_model_class.path_name
+ render_destroy '/' + @my_model_class.path_name
end
end
set_model
@item = @my_model_class.edit(params[:id], @operators)
@binder = @my_model_class.binder_model.edit(@item.binder_id, @operators) if @item.binder_id
- render_destroy '/home/' + play_scroll_path(@item)
+ render_destroy play_scroll_path(@binder)
end
end
form_edit
end
- def create
- @sheet_panel = SheetPanel.new
- @sheet_panel.supply_default
- @sheet_panel.attributes = params[:sheet_panel]
- @sheet_panel.overwrite @operators
- @sheet = Sheet.edit(@sheet_panel.sheet_id, @operators) if @sheet_panel.sheet_id
- @panel = Panel.show(@sheet_panel.panel_id, @operators) if @sheet_panel.panel_id
-
- respond_to do |format|
- if @sheet_panel.store @operators
- flash[:notice] = I18n.t('flash.notice.created', :model => SheetPanel.model_name.human)
- format.html { redirect_to play_sheet_path(@sheet) }
- format.json { render json: @sheet_panel.sheet_panel_as_json(@operators.author) }
- else
- flash[:notice] = I18n.t('flash.notice.not_created', :model => SheetPanel.model_name.human)
- format.html { render action: "new" }
- format.json { render json: @sheet_panel.errors, status: :unprocessable_entity }
- end
- end
- end
-
- def update
- @sheet_panel = SheetPanel.edit(params[:id], @operators)
- ot = @sheet_panel.t
- @sheet_panel.attributes = params[:sheet_panel]
- @sheet_panel.overwrite @operators
- @sheet = Sheet.edit(@sheet_panel.sheet_id, @operators) if @sheet_panel.sheet_id
- respond_to do |format|
- if @sheet_panel.store @operators, ot
- flash[:notice] = I18n.t('flash.notice.updated', :model => SheetPanel.model_name.human)
- format.html { redirect_to play_sheet_path(@sheet) }
- format.json { head :ok }
- else
- flash[:notice] = I18n.t('flash.notice.not_updated', :model => SheetPanel.model_name.human)
- format.html { render action: "edit" }
- format.json { render json: @sheet_panel.errors, status: :unprocessable_entity }
- end
- end
- end
-
- def destroy
- @sheet_panel = SheetPanel.edit(params[:id], @operators)
- @sheet = Sheet.edit(@sheet_panel.sheet_id, @operators) if @sheet_panel.sheet_id
- respond_to do |format|
- if @sheet_panel.destroy_and_shorten
- flash[:notice] = I18n.t('flash.notice.destroyed', :model => SheetPanel.model_name.human)
- format.html { redirect_to play_sheet_path(@sheet) }
- format.json { head :ok }
- else
- flash[:notice] = I18n.t('flash.notice.not_destroyed', :model => SheetPanel.model_name.human)
- format.html { redirect_to sheet_panel_path(@sheet_panel) }
- format.json { render json: @sheet_panel.errors, status: :unprocessable_entity }
- end
- end
- end
end
def destroy
set_model
@item = @my_model_class.edit(params[:id], @operators)
- render_destroy @my_model_class.path_name
+ render_destroy '/' + @my_model_class.path_name
end
end
end
def create
- @my_model_class = self.class.model
+ set_model
@item = @my_model_class.new
@item.supply_default
@item.attributes = params[@item.item_name]
end
def update
- @my_model_class = self.class.model
+ set_model
@item = @my_model_class.edit(params[:id], @operators)
ot = @item.t
@item.attributes = params[@item.item_name]
set_model
@item = @my_model_class.edit(params[:id], @operators)
@binder = @my_model_class.binder_model.edit(@item.binder_id, @operators) if @item.binder_id
- render_destroy '/home/' + play_story_path(@item)
+ render_destroy play_story_path(@binder)
end
end
def destroy
set_model
@item = @my_model_class.edit(params[:id], @operators)
- render_destroy @my_model_class.path_name
+ render_destroy '/' + @my_model_class.path_name
end
end
end
def overwrite operators
- return false unless operators.author
end
def disp_t
r
end
+ # destroy with licenses
+ def destroy
+ res = false
+ self.class.transaction do
+ self.licenses.each do |license|
+ raise ActiveRecord::Rollback unless license.destroy
+ end
+ res = super
+ raise ActiveRecord::Rollback unless res
+ end
+ res
+ end
+
def self.import filename
LicenseGroup.import_file(filename) {|name, attr| LicenseGroup.store(name, attr)}
end
end
end
+ def overwrite
+ end
+
def self.by_author_list_includes
{
:sheet => {
self.t = nil
end
+ def overwrite operators
+ end
+
def self.public_list_where list
'stories.visible > 0'
end
<% end %>
</td>
<td>
- <%= link_to scroll_panel_icon(:object => scroll_panel, :size => 25), scroll_panel_path(scroll_panel) %>
+ <%= scroll_panel_icon(:object => scroll_panel, :size => 25) %>
<%= link_to author_icon(:object => scroll_panel.scroll.author, :size => 17), author_path(scroll_panel.scroll.author) %>
<%= l scroll_panel.updated_at %>
</td>
No.<%= scroll_panel.t %>
<% end %>
</td>
+ <td>
+ <%= link_to tag(:img, {:src => '/images/remove.png', :width => Manifest.manifest.magic_numbers['thumbnail_width'] / 2, :height => Manifest.manifest.magic_numbers['thumbnail_height'] / 2}), scroll_panel, confirm: 'Are you sure?', :method => :delete %>
+ </td>
</tr>
</table>
<% end %>
</td>
<td>
- <%= link_to sheet_panel_icon(:object => sheet_panel, :size => 25), sheet_panel_path(sheet_panel) %>
+ <%= sheet_panel_icon(:object => sheet_panel, :size => 25) %>
<%= link_to author_icon(:object => sheet_panel.panel.author, :size => 17), author_path(sheet_panel.panel.author) %>
</td>
<td>
</div>
<% end %>
<% if @item.own? @operators -%>
- <h3><%= t('sheet_panels.append.new_panels') -%></h3>
- <table>
- <% @new_panel_items.each do |panel| %>
- <%= render 'sheet_panels/append_panel', :sheet => @item, :panel => panel, :operators => @operators %>
- <% end %>
- </table>
<% end %>
res
end
+ # destroy and shorten
def destroy
res = false
self.class.transaction do
+ # renumber t
self.class.update_all('t = t - 1',
[self.binder_key + ' = ? and (t > ?)', self.binder_id, self.t]
)