Show More
Commit Description:
allow ta to set model submission
Commit Description:
allow ta to set model submission
References:
File last commit:
Show/Diff file:
Action:
app/controllers/messages_controller.rb | 88 lines | 2.1 KiB | text/x-ruby | RubyLexer |
jittat
[web] added message feature...
r102 class MessagesController < ApplicationController
update message console
r766 before_action :check_valid_login
jittat
[web] added message feature...
r102
update message console
r766 before_action :set_message, only: ['show', 'reply']
jittat
[web] added message feature...
r102
update message console
r766 before_action :admin_authorization, :only => ['console','show',
Sarun Intaralawan
Implement list_all action for message console
r357 'reply','hide','list_all']
jittat
[web] added message feature...
r102
update message console
r766 def index
@messages = Message.find_all_sent_by_user(@current_user)
jittat
[web] added message feature...
r102 end
add jquery to manage problem, now we can select a range of problem
r456
jittat
[web] added message feature...
r102 def console
@messages = Message.find_all_system_unreplied_messages
end
def show
end
Sarun Intaralawan
Implement list_all action for message console
r357 def list_all
@messages = Message.where(receiver_id: nil).order(:created_at)
end
jittat
[web] added message feature...
r102 def create
update message console
r766 @message = Message.new(message_params)
@message.sender = @current_user
Waitaya Krongapiradee
Prevented empty messages from being sent and fixed a typo
r377 if @message.body == '' or !@message.save
flash[:notice] = 'An error occurred'
jittat
[web] added message feature...
r102 else
flash[:notice] = 'New message posted'
end
update message console
r766 redirect_to action: 'index'
jittat
[web] added message feature...
r102 end
def reply
update message console
r766 @r_message = Message.new(message_params)
@r_message.receiver = @message.sender
@r_message.sender = @current_user
Waitaya Krongapiradee
Prevented empty messages from being sent and fixed a typo
r377 if @message.body == '' or !@message.save
flash[:notice] = 'An error occurred'
redirect_to :action => 'show', :id => @message.replying_message_id
jittat
[web] added message feature...
r102 else
flash[:notice] = 'Message replied'
update message console
r766 @message.replied = true
@message.replying_message = @r_message
@message.save
jittat
[web] added message feature...
r102 redirect_to :action => 'console'
end
end
jittat
added message hiding for admin in msg console...
r173 def hide
message = Message.find(params[:id])
message.replied = true
message.save
Waitaya Krongapiradee
Prevented empty messages from being sent and fixed a typo
r377 flash[:notice] = 'Message hidden (just marked replied)'
jittat
added message hiding for admin in msg console...
r173 redirect_to :action => 'console'
end
jittat
[web] added message feature...
r102 protected
update message console
r766 def build_replying_message_hierarchy(user)
@all_messages = {}
jittat
[web] added message feature...
r102
update message console
r766 # manually build replies hierarchy (to improve efficiency)
[@messages, @replied_messages].each do |collection|
collection.each do |m|
@all_messages[m.id] = {:msg => m, :replies => []}
end
end
@all_messages.each do |m|
rep_id = m.replying_message_id
if @all_messages[rep_id]!=nil
@all_messages[rep_id][:replies] << m
end
jittat
[web] added message feature...
r102 end
end
update message console
r766 def set_message
@message = Message.find(params[:id])
jittat
[web] added message feature...
r102 end
update message console
r766
def message_params
params.require(:message).permit(:body)
end
jittat
[web] added message feature...
r102
end