Skip to content
Extraits de code Groupes Projets
aspects_controller.rb 3,02 ko
Newer Older
Raphael's avatar
Raphael a validé
#   Copyright (c) 2010, Diaspora Inc.  This file is
Raphael's avatar
Raphael a validé
#   licensed under the Affero General Public License version 3.  See
#   the COPYRIGHT file.
Raphael's avatar
Raphael a validé
class AspectsController < ApplicationController
  before_filter :authenticate_user!

  respond_to :html
  respond_to :json, :only => :show

    @posts = current_user.visible_posts(:by_members_of => :all).paginate :page => params[:page], :per_page => 15, :order => 'created_at DESC'
Raphael's avatar
Raphael a validé
    @aspect = :all
Stephen Caudill's avatar
Stephen Caudill a validé
    @aspect = current_user.aspect(params[:aspect])
    if @aspect.valid?
      flash[:notice] = I18n.t('aspects.create.success')
    else
      flash[:error] = I18n.t('aspects.create.failure')
Stephen Caudill's avatar
Stephen Caudill a validé
    end
    respond_with :location => aspects_manage_path
Raphael's avatar
Raphael a validé
    @aspect = Aspect.new
    @aspect = current_user.aspect_by_id params[:id]
danielvincent's avatar
danielvincent a validé

    begin
      current_user.drop_aspect @aspect
      flash[:notice] = i18n.t 'aspects.destroy.success',:name => @aspect.name
    rescue RuntimeError => e
danielvincent's avatar
danielvincent a validé
      flash[:error] = e.message
    end

    respond_with :location => aspects_manage_path
    @aspect  = current_user.aspect_by_id params[:id]
Raphael's avatar
Raphael a validé
    @friends = @aspect.people
    @posts   = current_user.visible_posts( :by_members_of => @aspect ).paginate :per_page => 15, :order => 'created_at DESC'
Raphael's avatar
Raphael a validé
    respond_with @aspect
   # @fb_access_url = MiniFB.oauth_url(FB_APP_ID, APP_CONFIG[:pod_url] + "services/create",
    #                                  :scope=>MiniFB.scopes.join(","))
danielvincent's avatar
danielvincent a validé
    @posts = current_user.visible_posts(:person_id => current_user.person.id, :public => true).paginate :page => params[:page], :per_page => 15, :order => 'created_at DESC'

    respond_with @aspect
  end
  
maxwell's avatar
maxwell a validé
    @remote_requests = Request.for_user(current_user).all
    @aspect = current_user.aspect_by_id(params[:id])

    data = clean_hash(params[:aspect])
    @aspect.update_attributes( data )
    flash[:notice] = i18n.t 'aspects.update.success',:name => @aspect.name
    respond_with @aspect
Raphael's avatar
Raphael a validé
  def move_friends
    params[:moves].each{ |move|
      move = move[1]
      unless current_user.move_friend(move)
        flash[:error] = i18n.t 'aspects.move_friends.failure', :real_name => Person.find_by_id( move[:friend_id] ).real_name
        redirect_to aspects_manage_path
Raphael's avatar
Raphael a validé
        return
      end
    }

    flash[:notice] = i18n.t 'aspects.move_friends.success'
    redirect_to aspects_manage_path
maxwell's avatar
maxwell a validé
  end
Jamie Wilkinson's avatar
Jamie Wilkinson a validé
    unless current_user.move_friend( :friend_id => params[:friend_id], :from => params[:from], :to => params[:to][:to])
      flash[:error] = I18n.t 'aspects.move_friend.error',:inspect => params.inspect
    if aspect = current_user.aspect_by_id(params[:to][:to])
Raphael's avatar
Raphael a validé
      flash[:notice] = I18n.t 'aspects.move_friend.success'
      render :nothing => true
Raphael's avatar
Raphael a validé
      flash[:notice] = I18n.t 'aspects.move_friend.failure'
      render aspects_manage_path

  private
  def clean_hash(params)
    return {
      :name => params[:name]
    }
  end