Skip to content
Extraits de code Groupes Projets
services_controller.rb 1,48 ko
Newer Older
  • Learn to ignore specific revisions
  • danielvincent's avatar
    danielvincent 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 or later.  See
    
    danielvincent's avatar
    danielvincent a validé
    #   the COPYRIGHT file.
    
    
    class ServicesController < ApplicationController
    
      before_filter :authenticate_user!
    
    danielvincent's avatar
    danielvincent a validé
    
    
      def index
        @services = current_user.services
    
    danielvincent's avatar
    danielvincent a validé
      end
    
      def create
        auth = request.env['omniauth.auth']
    
    
    maxwell's avatar
    maxwell a validé
        toke = auth['credentials']['token']
        secret = auth['credentials']['secret']
    
    
        provider = auth['provider']
        user     = auth['user_info']
    
    
        service = "Services::#{provider.camelize}".constantize.new(:nickname => user['nickname'],
                                                                   :access_token => toke, 
                                                                   :access_secret => secret,
                                                                   :provider => provider,
                                                                   :uid => auth['uid'])
        current_user.services << service
    
    MrZYX's avatar
    MrZYX a validé
        flash[:notice] = I18n.t 'services.create.success'
    
        if current_user.getting_started
          redirect_to  getting_started_path(:step => 3)
        else
          redirect_to services_url 
        end
    
        Rails.logger.info  "error in oauth #{params.inspect}"
    
        flash[:error] = t('services.failure.error')
    
      def destroy
        @service = current_user.services.find(params[:id])
        @service.destroy
    
    MrZYX's avatar
    MrZYX a validé
        flash[:notice] = I18n.t 'services.destroy.success'
    
        redirect_to services_url
      end
    
    danielvincent's avatar
    danielvincent a validé
    end