- content_for :javascript do :javascript $(function() { $('#message_recipient_tokens').tokenInput("#{users_path(:format => :json)}", { crossDomain: false, prePopulate: $('#message_recipient_tokens').data('pre'), hintText: '#{t '.search_user'}', noResultText: '#{t '.no_user_found'}', searchingText: '#{t '.search'}', theme: 'facebook' }); function slideRecipients() { if ($('#message_send_to_all').is(':checked')) { $('#recipients').slideDown(); } else { $('#recipients').slideUp(); } } function updateSlideState() { switch($('input[name="message[send_method]"]:checked').val()) { case 'all': $('#workgroup').slideUp(); $('#ordergroup').slideUp(); $('#messagegroup').slideUp(); $('#order').slideUp(); $('#recipients').slideUp(); break; case 'workgroup': $('#workgroup').slideDown(); $('#ordergroup').slideUp(); $('#messagegroup').slideUp(); $('#order').slideUp(); $('#recipients').slideDown(); break; case 'ordergroup': $('#workgroup').slideUp(); $('#ordergroup').slideDown(); $('#messagegroup').slideUp(); $('#order').slideUp(); $('#recipients').slideDown(); break; case 'messagegroup': $('#workgroup').slideUp(); $('#ordergroup').slideUp(); $('#messagegroup').slideDown(); $('#order').slideUp(); $('#recipients').slideDown(); break; case 'order': $('#workgroup').slideUp(); $('#ordergroup').slideUp(); $('#messagegroup').slideUp(); $('#order').slideDown(); $('#recipients').slideDown(); break; case 'recipients': $('#workgroup').slideUp(); $('#ordergroup').slideUp(); $('#messagegroup').slideUp(); $('#order').slideUp(); $('#recipients').slideDown(); break; } } $('input[name="message[send_method]"]').on('click', updateSlideState); updateSlideState(); }); - title t('.title') = simple_form_for @message do |f| = f.hidden_field :reply_to - if @message.reply_to %p= t('.reply_to', link: link_to(t('.message'), message_path(@message.reply_to))).html_safe - unless FoodsoftConfig[:mailing_list].blank? %b= t('.list.desc', list: mail_to(FoodsoftConfig[:mailing_list])).html_safe %br/ %small{:style => "color:grey"} = t '.list.subscribe_msg' %br/ - if FoodsoftConfig[:mailing_list_subscribe].blank? = t('.list.subscribe', link: link_to(t('.list.wiki'), wiki_page_path('MailingListe'))).html_safe - else = t('.list.mail', email: mail_to(FoodsoftConfig[:mailing_list_subscribe])).html_safe - send_method_collection = [:workgroup, :ordergroup, :messagegroup, :order, :recipients] - send_method_collection.unshift :all if FoodsoftConfig[:mailing_list].blank? = f.input :send_method, :as => :radio_buttons, :collection => send_method_collection, :label => false, :label_method => ->(obj){ t("activerecord.attributes.message.send_method.#{obj}") } #workgroup = f.input :workgroup_id, :as => :select, include_blank: false, :collection => Workgroup.undeleted.order(:name).includes(:memberships).reject { |g| g.memberships.empty? } #ordergroup = f.input :ordergroup_id, :as => :select, include_blank: false, :collection => Ordergroup.undeleted.order(:name).includes(:memberships).reject { |g| g.memberships.empty? } #messagegroup = f.input :messagegroup_id, :as => :select, include_blank: false, :collection => Messagegroup.undeleted.order(:name) #order = f.input :order_id, :as => :select, include_blank: false, :collection => Order.finished_not_closed.order('pickup DESC').includes(:supplier).limit(25), :label_method => ->(obj){ t('.order_item', supplier_name: obj.name, pickup: format_date(obj.pickup)) }, :input_html => {class: 'input-xxlarge'} #recipients = f.input :recipient_tokens, :input_html => { 'data-pre' => User.where(id: @message.recipients_ids).map(&:token_attributes).to_json } = f.input :private, inline_label: t('.hint_private') = f.input :subject, input_html: {class: 'input-xxlarge'} = f.input :body, input_html: {class: 'input-xxlarge', rows: 13} .form-actions = f.submit class: 'btn btn-primary' = link_to t('ui.or_cancel'), :back