Sha256: 57dbd43adaa3dba4085b97d66aee57f40a391baf751e32dd22884fe799eabf57

Contents?: true

Size: 1.16 KB

Versions: 1

Compression:

Stored size: 1.16 KB

Contents

#
# Mailing list management
#
# This is to add or remove subscribers
#
class SubscriberController < ApplicationController
  def subscribe
    @elt = Elt.find params[:id]

		if session[:person]
			if @elt.subscribers.include?(session[:person])
				Subscription.find_by_person_id_and_elt_id(session[:person].id, @elt.id).destroy
				logger.info yellow { "User #{session[:person].name} unsubscribed from #{@elt.subject}..." }
			elsif @elt.all_recipients.include?(session[:person])
				elt2 = @elt
				elt2 = elt2.parent until elt2.subscribers.include?(session[:person])
				Subscription.find_by_person_id_and_elt_id(session[:person].id, elt2.id).destroy
				logger.info yellow { "User #{session[:person].name} unsubscribed from #{elt2.subject}..." }
			else
				@elt.subscriptions.create :person => session[:person], :filter => filter
				logger.info yellow { "User #{session[:person].name} subscribed to #{@elt.id} with filter #{filter}..." }
			end
		else
			puts "Not logged in!"
			#render :inline => "First you need to login... it's easy, type a pseudo with at least 3 characters. Then OK"
			flash.now[:error] = 'First you need to login!'
		end
		render :partial => 'list'
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
parlement-0.13 app/controllers/subscriber_controller.rb