From f648ea296f7220ca9c49ced4cc6cfbc2530dbcf1 Mon Sep 17 00:00:00 2001 From: Romain Neutron Date: Thu, 10 Oct 2013 11:33:44 +0200 Subject: [PATCH] Fix #1488 : Push / Feedback name is now mandatory --- lib/Alchemy/Phrasea/Controller/Prod/Language.php | 1 + lib/Alchemy/Phrasea/Controller/Prod/Push.php | 14 ++------------ www/skins/prod/jquery.Feedback.js | 12 ++++++++++++ 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/lib/Alchemy/Phrasea/Controller/Prod/Language.php b/lib/Alchemy/Phrasea/Controller/Prod/Language.php index 43d1bd9b5b..fa00091a5b 100644 --- a/lib/Alchemy/Phrasea/Controller/Prod/Language.php +++ b/lib/Alchemy/Phrasea/Controller/Prod/Language.php @@ -85,6 +85,7 @@ class Language implements ControllerProviderInterface $out['FeedBackName'] = _('Name'); $out['FeedBackMessage'] = _('Message'); $out['FeedBackDuration'] = _('Time for feedback (days)'); + $out['FeedBackNameMandatory'] = _('Please provide a name for this selection.'); $out['send'] = _('Send'); $out['Recept'] = _('Accuse de reception'); $out['nFieldsChanged'] = _('%d fields have been updated'); diff --git a/lib/Alchemy/Phrasea/Controller/Prod/Push.php b/lib/Alchemy/Phrasea/Controller/Prod/Push.php index d485e2be4a..1bd2d499be 100644 --- a/lib/Alchemy/Phrasea/Controller/Prod/Push.php +++ b/lib/Alchemy/Phrasea/Controller/Prod/Push.php @@ -157,12 +157,7 @@ class Push implements ControllerProviderInterface try { $pusher = new RecordHelper\Push($app, $app['request']); - $push_name = $request->request->get('name'); - - if (trim($push_name) === '') { - $push_name = sprintf(_('Push from %s'), $app['authentication']->getUser()->get_display_name()); - } - + $push_name = $request->request->get('name', sprintf(_('Push from %s'), $app['authentication']->getUser()->get_display_name())); $push_description = $request->request->get('push_description'); $receivers = $request->request->get('participants'); @@ -281,12 +276,7 @@ class Push implements ControllerProviderInterface $repository = $app['EM']->getRepository('\Entities\Basket'); - $validation_name = $request->request->get('name'); - - if (trim($validation_name) === '') { - $validation_name = sprintf(_('Validation from %s'), $app['authentication']->getUser()->get_display_name()); - } - + $validation_name = $request->request->get('name', sprintf(_('Validation from %s'), $app['authentication']->getUser()->get_display_name())); $validation_description = $request->request->get('validation_description'); $participants = $request->request->get('participants'); diff --git a/www/skins/prod/jquery.Feedback.js b/www/skins/prod/jquery.Feedback.js index b19e25bd07..5afe2e301c 100644 --- a/www/skins/prod/jquery.Feedback.js +++ b/www/skins/prod/jquery.Feedback.js @@ -155,6 +155,18 @@ var buttons = {}; buttons[language.send] = function(){ + if ($.trim($('input[name="name"]', $dialog.getDomElement()).val()) === '') { + options = { + size : 'Alert', + closeButton : true, + title : language.warning + }, + $dialog = p4.Dialog.Create(options, 3); + $dialog.setContent(language.FeedBackNameMandatory); + + return false; + } + $dialog.Close(); $('input[name="name"]', $FeedBackForm).val($('input[name="name"]', $dialog.getDomElement()).val());