Module: ReplyControl

Defined in:
app/controls/reply_control.rb

Overview

DrgcmsControls for DcBlog.DcReply form

Instance Method Summary collapse

Instance Method Details

#dc_after_saveObject

Called after succesfull save.



60
61
62
63
64
65
66
67
# File 'app/controls/reply_control.rb', line 60

def dc_after_save()
  replies = DcReply.where(doc_id: @record.doc_id, active: true).count
  parent = @record.doc_class.constantize
  doc = parent.find_by(id: @record.doc_id)
  doc.replies = replies
  doc.updated_by_name = @record.created_by_name
  doc.save
end

#dc_before_saveObject

Called before save. Reloads browser.



51
52
53
54
55
# File 'app/controls/reply_control.rb', line 51

def dc_before_save()
  params[:return_to] = 'parent.reload'
# simple automatic robot trap  
  return false unless params[:_record][:_honey].blank?
end

#dc_new_recordObject

Called when new empty record is created



33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'app/controls/reply_control.rb', line 33

def dc_new_record()
# fill with quote when reply_to is present 
  if params[:reply_to]
    replyto = DcReply.find(params[:reply_to])
    @record.subject = (replyto.subject.match('Re:') ? '' : 'Re: ') + replyto.subject
    @record.body = "<div class='dc-forum-quote'>[#{replyto.created_by_name}]#{replyto.body}</div><p><br></p>"
  elsif params[:p_doc_id]
    model = params[:p_doc_class].classify.constantize
    doc = model.find(params[:p_doc_id])
    @record.subject = "Re: #{doc.subject}"
    
  end
  @record.created_by_name = session[:user_name] if session[:user_name]
end