From a2349052f4d8c77bcfac044eea4e1e316594fe36 Mon Sep 17 00:00:00 2001 From: Steffen van Bergerem Date: Tue, 28 Jul 2015 20:12:51 +0200 Subject: [PATCH] Use autosize for mobile publisher --- app/assets/javascripts/mobile/mobile.js | 40 +------------------- app/assets/javascripts/mobile/publisher.js | 43 ++++++++++++++++++++++ 2 files changed, 45 insertions(+), 38 deletions(-) create mode 100644 app/assets/javascripts/mobile/publisher.js diff --git a/app/assets/javascripts/mobile/mobile.js b/app/assets/javascripts/mobile/mobile.js index 9bd5194da04..10e33aab48f 100644 --- a/app/assets/javascripts/mobile/mobile.js +++ b/app/assets/javascripts/mobile/mobile.js @@ -18,7 +18,8 @@ //= require mobile/mobile_file_uploader //= require mobile/profile_aspects //= require mobile/tag_following -//= require mobile/mobile_comments.js +//= require mobile/publisher +//= require mobile/mobile_comments $(document).ready(function(){ @@ -125,42 +126,5 @@ $(document).ready(function(){ } } }); - - $(".service_icon").bind("tap click", function() { - var service = $(this).toggleClass("dim"), - selectedServices = $("#new_status_message .service_icon:not(.dim)"), - provider = service.attr("id"), - hiddenField = $("#new_status_message input[name='services[]'][value='" + provider + "']"), - publisherMaxChars = 40000, - serviceMaxChars; - - - $("#new_status_message .counter").remove(); - - $.each(selectedServices, function() { - serviceMaxChars = parseInt($(this).attr("maxchar")); - if(publisherMaxChars > serviceMaxChars) { - publisherMaxChars = serviceMaxChars; - } - }); - - $('#status_message_text').charCount({allowed: publisherMaxChars, warning: publisherMaxChars/10 }); - - if(hiddenField.length > 0) { hiddenField.remove(); } - else { - $("#new_status_message").append( - $("", { - name: "services[]", - type: "hidden", - value: provider - }) - ); - } - }); - - $("#submit_new_message").bind("tap click", function(evt){ - evt.preventDefault(); - $("#new_status_message").submit(); - }); }); // @license-end diff --git a/app/assets/javascripts/mobile/publisher.js b/app/assets/javascripts/mobile/publisher.js new file mode 100644 index 00000000000..4f6f609ba78 --- /dev/null +++ b/app/assets/javascripts/mobile/publisher.js @@ -0,0 +1,43 @@ +$(document).ready(function(){ + // no publisher available + if($("#new_status_message").length === 0) { return; } + + $(".service_icon").bind("tap click", function() { + var service = $(this).toggleClass("dim"), + selectedServices = $("#new_status_message .service_icon:not(.dim)"), + provider = service.attr("id"), + hiddenField = $("#new_status_message input[name='services[]'][value='" + provider + "']"), + publisherMaxChars = 40000, + serviceMaxChars; + + + $("#new_status_message .counter").remove(); + + $.each(selectedServices, function() { + serviceMaxChars = parseInt($(this).attr("maxchar")); + if(publisherMaxChars > serviceMaxChars) { + publisherMaxChars = serviceMaxChars; + } + }); + + $("#status_message_text").charCount({allowed: publisherMaxChars, warning: publisherMaxChars/10 }); + + if(hiddenField.length > 0) { hiddenField.remove(); } + else { + $("#new_status_message").append( + $("", { + name: "services[]", + type: "hidden", + value: provider + }) + ); + } + }); + + $("#submit_new_message").bind("tap click", function(evt){ + evt.preventDefault(); + $("#new_status_message").submit(); + }); + + autosize($("#status_message_text")); +});