X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=app%2Fcontrollers%2Ffolders_controller.rb;h=73623fa4e5684c30595326060b260cb4e772e16b;hb=9edc3731389bcae0de05ef6045cceb6b7581cc8f;hp=76d017b47639576d16113a750fbfdb2e670a4c18;hpb=ebb950487db886437783df10ffccc48074488f1a;p=pettanr%2Fpettanr.git diff --git a/app/controllers/folders_controller.rb b/app/controllers/folders_controller.rb index 76d017b4..73623fa4 100644 --- a/app/controllers/folders_controller.rb +++ b/app/controllers/folders_controller.rb @@ -1,21 +1,23 @@ class FoldersController < ApplicationController if Manifest.manifest.magic_numbers['run_mode'] == 0 - before_filter :authenticate_admin, :only => [:new, :create, :edit, :update, :destroy] + before_action :authenticate_admin, :only => [:new, :create, :edit, :update, :destroy] else - before_filter :authenticate_reader, :only => [:root, :index, :show, :watch] - before_filter :authenticate_admin, :only => [:new, :create, :edit, :update, :destroy] - end - - def self.model - Folder + before_action :authenticate_reader, :only => [:root, :index, :show, :watch] + before_action :authenticate_admin, :only => [:new, :create, :edit, :update, :destroy] end def root set_model @item = Folder.root - respond_to do |format| - show_html_format format - show_json_format format + if params[:ref] + respond_to do |format| + show_json_format format + end + else + respond_to do |format| + children_html_format format + children_json_format format + end end end @@ -27,34 +29,68 @@ class FoldersController < ApplicationController end def index - filer_list + if params['path'] # secret api + list = Folder.where(['name = ?', params['path']]) + respond_to do |format| + format.json { + res = { + :page_status => {:type => :unlimited}, + :list => list + } + render json: res.to_json + } + end + else + filer_list + end end - def show_html_format format + def children_html_format format format.html { - @filer = Locmare::Filer.new self.class.model.item_name, @item.children, nil, :none, @operators + @filer = Locmare::Filer.new Folder.item_name, @item.children, nil, @operators render :action => :show } end - def show_json_format format + def children_json_format format format.json { @items = @item.children - render json: @items.to_json(self.class.model.list_json_opt) + render json: @items.to_json(Folder.list_json_opt) } end def show set_show - if @item.category_id == 10 - redirect_to @item.remote_name - else + if params[:ref] respond_to do |format| - show_html_format format - show_prof_format format show_json_format format end + else + if params[:format] == 'prof' + respond_to do |format| + show_prof_format format + end + else + if @item.category_id == 10 + redirect_to @item.remote_name + else + respond_to do |format| + children_html_format format + children_json_format format + end + end + end end end + def count + list_count + end + + def destroy + set_model + @item = @my_model_class.edit(params[:id], @operators) + render_destroy '/' + @my_model_class.path_name + end + end