|
- class NoUsesController < ApplicationController
-
- before_filter :require_login, :find_no_use, :only => [:create, :delete]
-
- # GET /no_uses
- # GET /no_uses.json
- def index
- @no_uses = NoUse.all
-
- respond_to do |format|
- format.html # index.html.erb
- format.json { render json: @no_uses }
- end
- end
-
- # GET /no_uses/1
- # GET /no_uses/1.json
- def show
- @no_use = NoUse.find(params[:id])
-
- respond_to do |format|
- format.html # show.html.erb
- format.json { render json: @no_use }
- end
- end
-
- # GET /no_uses/new
- # GET /no_uses/new.json
- def new
- @no_use = NoUse.new
-
- respond_to do |format|
- format.html # new.html.erb
- format.json { render json: @no_use }
- end
- end
-
- # GET /no_uses/1/edit
- def edit
- @no_use = NoUse.find(params[:id])
- end
-
- # POST /no_uses
- # POST /no_uses.json
- def create
- set_no_use(@no_use, User.current, true)
-
- # respond_to do |format|
- # if @no_use.save
- # format.html { redirect_to @no_use, notice: 'No use was successfully created.' }
- # format.json { render json: @no_use, status: :created, location: @no_use }
- # else
- # format.html { render action: "new" }
- # format.json { render json: @no_use.errors, status: :unprocessable_entity }
- # end
- # end
- end
- def delete
- set_no_use(@no_use, User.current, false)
- end
-
- # PUT /no_uses/1
- # PUT /no_uses/1.json
- def update
- @no_use = NoUse.find(params[:id])
-
- respond_to do |format|
- if @no_use.update_attributes(params[:no_use])
- format.html { redirect_to @no_use, notice: 'No use was successfully updated.' }
- format.json { head :no_content }
- else
- format.html { render action: "edit" }
- format.json { render json: @no_use.errors, status: :unprocessable_entity }
- end
- end
- end
-
- # DELETE /no_uses/1
- # DELETE /no_uses/1.json
- def destroy
- # @no_use = NoUse.find(params[:id])
- # @no_use.destroy
-
- set_no_use(@no_use, User.current, false)
-
- # respond_to do |format|
- # format.html { redirect_to no_uses_url }
- # format.json { head :no_content }
- # end
- end
- private
-
- def find_no_use
- klass = Object.const_get(params[:object_type].camelcase) rescue nil
- if klass && klass.respond_to?('no_use_for')
- @no_use = klass.find_all_by_id(Array.wrap(params[:object_id]))
- end
- render_404 unless @no_use.present?
- end
-
- #flag标注功能,为1时设置‘没有帮助’,为0时设置取消
- def set_no_use(objects, user, flag)
- objects.each do |object|
- object.set_no_use(user, flag)
- end
- respond_to do |format|
- format.html { redirect_to_referer_or {render :text => (watching ? 'Watcher added.' : 'Watcher removed.'), :layout => true}}
- format.js { render :partial => 'set_no_use', :locals => {:user => user, :objects => objects} }
- end
- end
- end
|