socialforge/app/controllers/no_uses_controller.rb

112 lines
2.8 KiB
Ruby
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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