80 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Ruby
		
	
	
	
| class Desktop::CoAuthorsController < ApplicationController
 | |
|   def index
 | |
|     @co_authors = CoAuthor.where(name_id: current_user.id)
 | |
| 
 | |
|     respond_to do |format|
 | |
|       format.html { render :layout => false}
 | |
|       format.json { render json: @co_authors }
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def show
 | |
|     @co_author = CoAuthor.find(params[:id])
 | |
| 
 | |
|     respond_to do |format|
 | |
|       format.html { redirect_to desktop_co_authors_url, :layout => false }
 | |
|       format.json { render json: @co_author }
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def new
 | |
|     @co_author = CoAuthor.new
 | |
| 
 | |
|     respond_to do |format|
 | |
|       format.html { render :layout => false}
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def edit
 | |
|     @co_author = CoAuthor.find(params[:id])
 | |
|     respond_to do |format|
 | |
|       format.html { render :layout => false}
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def create
 | |
|     @co_author = CoAuthor.new(params[:co_author])
 | |
|     @co_author.name_id= current_user.id
 | |
| 
 | |
|     if @co_author.save
 | |
|       render json: {success:true, msg: "Co-author successfully saved!"}.to_json
 | |
|     else
 | |
|       render json: {success: false, msg: @co_author.errors.full_messages}.to_json
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def update
 | |
|     @co_author = CoAuthor.find(params[:id])
 | |
| 
 | |
|     if @co_author.update_attributes(params[:co_author])
 | |
|       render json: {success:true, msg: "Co-author successfully update!"}.to_json
 | |
|     else
 | |
|       render json: {success: false, msg: @co_author.errors.full_messages}.to_json
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def delete
 | |
|     @co_author = CoAuthor.find(params[:id])
 | |
|     @co_author.destroy
 | |
| 
 | |
|     #respond_to do |format|
 | |
|     #  format.html { redirect_to desktop_co_authors_url, :layout => false }
 | |
|     #  format.json { head :no_content }
 | |
|     #end
 | |
|   end
 | |
| 
 | |
|   def get_co_authors_json
 | |
|     @co_authors = CoAuthor.where(name_id: current_user.id)
 | |
|     data = Array.new
 | |
| 
 | |
|     @co_authors.each do |co_author|
 | |
|       data << {
 | |
|         author: co_author.co_author,
 | |
|         email: co_author.email,
 | |
|         type: co_author.type
 | |
|       }
 | |
|     end
 | |
|     render json: JSON.pretty_generate(data)
 | |
|   end
 | |
| end
 |