From edc6cf39a0acf9ac77626bb4c11a60a11878d65d Mon Sep 17 00:00:00 2001 From: Craig Andrews Date: Mon, 26 Apr 2010 15:58:35 -0400 Subject: [PATCH] Only shorten when notice length exceeds max length --- .../ClientSideShortenPlugin.php | 1 + plugins/ClientSideShorten/shorten.js | 26 ++++++++++--------- plugins/ClientSideShorten/shorten.php | 2 +- 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/plugins/ClientSideShorten/ClientSideShortenPlugin.php b/plugins/ClientSideShorten/ClientSideShortenPlugin.php index 21763d5b7e..ba1f7d3a7c 100644 --- a/plugins/ClientSideShorten/ClientSideShortenPlugin.php +++ b/plugins/ClientSideShorten/ClientSideShortenPlugin.php @@ -51,6 +51,7 @@ class ClientSideShortenPlugin extends Plugin } function onEndShowScripts($action){ + $action->inlineScript('var Notice_maxContent = ' . Notice::maxContent()); if (common_logged_in()) { $action->script('plugins/ClientSideShorten/shorten.js'); } diff --git a/plugins/ClientSideShorten/shorten.js b/plugins/ClientSideShorten/shorten.js index 0db78eceaf..856c7f05fd 100644 --- a/plugins/ClientSideShorten/shorten.js +++ b/plugins/ClientSideShorten/shorten.js @@ -34,29 +34,31 @@ function shorten() { $noticeDataText = $('#'+SN.C.S.NoticeDataText); - var original = $noticeDataText.val(); - shortenAjax = $.ajax({ - url: $('address .url')[0].href+'/plugins/ClientSideShorten/shorten', - data: { text: $noticeDataText.val() }, - dataType: 'text', - success: function(data) { - if(original == $noticeDataText.val()) { - $noticeDataText.val(data).keyup(); + if(Notice_maxContent > 0 && $noticeDataText.val().length > Notice_maxContent){ + var original = $noticeDataText.val(); + shortenAjax = $.ajax({ + url: $('address .url')[0].href+'/plugins/ClientSideShorten/shorten', + data: { text: $noticeDataText.val() }, + dataType: 'text', + success: function(data) { + if(original == $noticeDataText.val()) { + $noticeDataText.val(data).keyup(); + } } - } - }); + }); + } } $(document).ready(function(){ $noticeDataText = $('#'+SN.C.S.NoticeDataText); $noticeDataText.smartkeypress(function(e){ - if(typeof(shortenAjax) !== 'undefined') shortenAjax.abort(); + //if(typeof(shortenAjax) !== 'undefined') shortenAjax.abort(); if(e.charCode == '32') { shorten(); } }); $noticeDataText.bind('paste', function() { - if(typeof(shortenAjax) !== 'undefined') shortenAjax.abort(); + //if(typeof(shortenAjax) !== 'undefined') shortenAjax.abort(); setTimeout(shorten,1); }); }); diff --git a/plugins/ClientSideShorten/shorten.php b/plugins/ClientSideShorten/shorten.php index 4905c62c21..07c19e2e7c 100644 --- a/plugins/ClientSideShorten/shorten.php +++ b/plugins/ClientSideShorten/shorten.php @@ -61,7 +61,7 @@ class ShortenAction extends Action { parent::handle($args); header('Content-Type: text/plain'); - $shortened_text = common_shorten_links($this->text, true); + $shortened_text = common_shorten_links($this->text); print $shortened_text; } }