From 662b54b2e153b24be3802060293cef28928194e9 Mon Sep 17 00:00:00 2001 From: Rohit Yadav Date: Fri, 6 Nov 2015 23:03:45 +0530 Subject: [PATCH] ui/widget: make framework changes to allow for text area input in edit views Signed-off-by: Rohit Yadav --- ui/scripts/ui/widgets/detailView.js | 25 ++++++++++++++++++++++--- ui/scripts/ui/widgets/listView.js | 6 +++++- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/ui/scripts/ui/widgets/detailView.js b/ui/scripts/ui/widgets/detailView.js index a2daa7e0d03..8275690a58c 100644 --- a/ui/scripts/ui/widgets/detailView.js +++ b/ui/scripts/ui/widgets/detailView.js @@ -442,7 +442,7 @@ if ($detailView.find('.button.done').size()) return false; // Convert value TDs - var $inputs = $detailView.find('input, select').filter(function() { + var $inputs = $detailView.find('input, select, textarea').filter(function() { return !$(this).closest('.tagger').size() && !$(this).attr('type') == 'submit'; }); var action = args.actions[args.actionName]; @@ -507,10 +507,17 @@ $input.find('option:selected').html() )); $value.data('detail-view-selected-option', _s($input.find('option:selected').val())); + } else if ($input.is('textarea')) { + $value.html(_s( + $input.val() + )); + $value.data('detail-view-editable-textarea', _s($input.find('option:selected').val())); } }); - $token.html(_s(tags_value)); + if ($token) { + $token.html(_s(tags_value)); + } }; var removeEditForm = function() { @@ -626,7 +633,7 @@ }; $editButton.click(function() { - var $inputs = $detailView.find('input, select').filter(function() { + var $inputs = $detailView.find('input, select, textarea').filter(function() { return !$(this).closest('.tagger').size(); }); var $form = $detailView.find('form').filter(function() { @@ -672,6 +679,7 @@ // Turn into form field var selectData = $value.data('detail-view-editable-select'); var isBoolean = $value.data('detail-view-editable-boolean'); + var textArea = $value.data('detail-view-editable-textarea'); var isTokenInput = $value.data('detail-view-is-token-input'); var data = !isBoolean ? cloudStack.sanitizeReverse($value.html()) : $value.data('detail-view-boolean-value'); var rules = $value.data('validation-rules') ? $value.data('validation-rules') : {}; @@ -760,6 +768,15 @@ $value.append($input); token_value = data; $value.data('value-token').dataProvider(selectArgs); + } else if (textArea) { + // Text area + $value.append( + $('