OSDN Git Service

fix: views
[pettanr/pettanr.git] / app / controllers / demanders_controller.rb
index a8c08d8..ac54721 100644 (file)
@@ -1,6 +1,5 @@
 class DemandersController < ApplicationController
-  layout 'test' if MagicNumber['test_layout']
-  before_filter :authenticate_demand_user!, :only => [:index, :show, :new, :create, :edit, :update, :destroy, :req]
+  before_action :authenticate_demand_user!, :only => [:index, :show, :new, :create, :edit, :update, :destroy, :req, :licenses_export, :artists_export, :original_pictures_export, :pictures_export, :export]
   
   def index
     @demander = @demand_user.demander
@@ -9,7 +8,8 @@ class DemandersController < ApplicationController
         format.html # index.html.erb
       end
     else
-      redirect_to new_demander_path, notice: 'Demander not found.'
+      flash[:notice] = I18n.t('demanders.flash.notice.not_found')
+      redirect_to new_demander_path
     end
   end
 
@@ -46,7 +46,8 @@ class DemandersController < ApplicationController
 
     respond_to do |format|
       if @demander.store
-        format.html { redirect_to @demander, notice: 'Demander was successfully created.' }
+        flash[:notice] = I18n.t('flash.notice.created', :model => Demander.model_name.human)
+        format.html { redirect_to @demander }
         format.json { render json: @demander.to_json(Demander.show_json_opt), status: :created, location: @demander }
       else
         format.html { render action: "new" }
@@ -61,7 +62,8 @@ class DemandersController < ApplicationController
     @demander.overwrite @demand_user
     respond_to do |format|
       if @demander.store
-        format.html { redirect_to @demander, notice: 'Demander was successfully updated.' }
+        flash[:notice] = I18n.t('flash.notice.updated', :model => Demander.model_name.human)
+        format.html { redirect_to @demander }
         format.json { head :ok }
       else
         format.html { render action: "edit" }
@@ -74,10 +76,12 @@ class DemandersController < ApplicationController
     @demander = @demand_user.demander
     respond_to do |format|
       if @demander.demander_status.request
-        format.html { redirect_to demanders_path, notice: 'Demander was successfully updated.' }
+        flash[:notice] = I18n.t('demanders.flash.notice.requested')
+        format.html { redirect_to demanders_path }
         format.json { head :ok }
       else
-        format.html { redirect_to demanders_path, notice: 'Demander was not successfully updated.' }
+        flash[:notice] = I18n.t('demanders.flash.notice.not_requested')
+        format.html { redirect_to demanders_path }
         format.json { render json: @demander.errors, status: :unprocessable_entity }
       end
     end
@@ -87,13 +91,72 @@ class DemandersController < ApplicationController
     @demander = Demander.edit(params[:id], @demand_user)
     respond_to do |format|
       if @demander.stop
-        format.html { redirect_to demanders_url, notice: 'Demander was successfully stopped.' }
+        flash[:notice] = I18n.t('demanders.flash.notice.stopped')
+        format.html { redirect_to demanders_url }
         format.json { head :ok }
       else
-        format.html { redirect_to demanders_url, notice: 'Demander was not successfully stopped.' }
+        flash[:notice] = I18n.t('demanders.flash.notice.not_stopped')
+        format.html { redirect_to demanders_url }
         format.json { render json: @demander.errors, status: :unprocessable_entity }
       end
     end
   end
 
+  def licenses_export
+    @demander = @demand_user.demander
+    date = ymd_to_time params[:date]
+    @licenses = @demander.licenses_export(date)
+    respond_to do |format|
+      format.html { render :text  }
+      format.json { render :json => @licenses.to_json }
+    end
+  end
+  
+  def artists_export
+    @demander = @demand_user.demander
+    date = ymd_to_time params[:date]
+    @artists = @demander.artists_export(date)
+    respond_to do |format|
+      format.html { render :text  }
+      format.json { render :json => @artists.to_json }
+    end
+  end
+  
+  def original_pictures_export
+    @demander = @demand_user.demander
+    date = ymd_to_time params[:date]
+    @original_pictures = @demander.original_pictures_export(date)
+    respond_to do |format|
+      format.html { render :text  }
+      format.json { render :json => OriginalPicture.list_as_json_text(@original_pictures) }
+    end
+  end
+  
+  def pictures_export
+    @demander = @demand_user.demander
+    date = ymd_to_time params[:date]
+    @pictures = @demander.pictures_export(date)
+    respond_to do |format|
+      format.html { render :text  }
+      format.json { render :json => Picture.list_as_json_text(@pictures) }
+    end
+  end
+  
+  def export
+    @demander = @demand_user.demander
+    date = ymd_to_time params[:date]
+    @exports = @demander.export(date)
+    respond_to do |format|
+      format.html { render :text  }
+      format.json { render :json => 
+        "{" +
+        "\"licenses\":" + @exports[:licenses].to_json + ", " + 
+        "\"artists\":" + @exports[:artists].to_json + ", " + 
+        "\"original_pictures\":" + OriginalPicture.list_as_json_text(@exports[:original_pictures]) + ", " + 
+        "\"pictures\":" + Picture.list_as_json_text(@exports[:pictures]) + 
+        "}" 
+      }
+    end
+  end
+  
 end