[Kimchi-devel] [PATCH] [Wok 2/3] Implement wok.notification widget
Lucio Correia
luciojhc at linux.vnet.ibm.com
Mon Apr 4 16:33:17 UTC 2016
On 04-04-2016 13:10, Aline Manera wrote:
>
>
> On 03/31/2016 06:02 PM, Lucio Correia wrote:
>> This is an adapted version of wok.message that removes the
>> the notification when user clicks on close button.
>>
>> Signed-off-by: Lucio Correia <luciojhc at linux.vnet.ibm.com>
>> ---
>> ui/js/src/wok.notification.js | 36 ++++++++++++++++++++++++++++++++++++
>> 1 file changed, 36 insertions(+)
>> create mode 100644 ui/js/src/wok.notification.js
>>
>> diff --git a/ui/js/src/wok.notification.js
>> b/ui/js/src/wok.notification.js
>> new file mode 100644
>> index 0000000..b79f5f3
>> --- /dev/null
>> +++ b/ui/js/src/wok.notification.js
>> @@ -0,0 +1,36 @@
>> +/*
>> + * Project Wok
>> + *
>> + * Copyright IBM Corp, 2015-2016
>> + *
>> + * Code derived from Project Kimchi
>> + *
>> + * Licensed under the Apache License, Version 2.0 (the "License");
>> + * you may not use this file except in compliance with the License.
>> + * You may obtain a copy of the License at
>> + *
>> + * http://www.apache.org/licenses/LICENSE-2.0
>> + *
>> + * Unless required by applicable law or agreed to in writing, software
>> + * distributed under the License is distributed on an "AS IS" BASIS,
>> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> + * See the License for the specific language governing permissions and
>> + * limitations under the License.
>> + */
>> +
>
>> +wok.notification = function(msg, node) {
>> + "use strict";
>> + var container = node || $('#alert-fields');
>> + if ($(container).size() < 1) {
>> + container = $('<div
>> id="alert-fields"/>').appendTo($('#alert-container'));
>> + }
>> + var message = '<div role="alert" class="alert alert-warning
>> alert-dismissible fade in" style="display: none;">';
>> + message += '<button type="button" class="close"
>> data-dismiss="alert" aria-label="Close"
>> onclick="wok.removeNotification('' + msg.code + '')"><span
>> aria-hidden="true"><i class="fa fa-times-circle"></i></span></button>';
>> + message += msg.message;
>> + message += '</div>';
>> + var $message = $(message);
>> + $(container).show();
>> + $(container).append($message);
>> + $message.alert();
>> + $message.fadeIn(100);
>> +};
>
> This is very similar to what we have in wok.message.js
> Why not use wok.message to do this work instead of duplicating code?
>
Wok.message would need some adaptations that would make it too complex:
- wok.notification receives msg dict as parameter, not only msg text,
because we need to call wok.removeNotification on the code of msg.
- wok.removeNotification must be called when user clicks on close
button, otherwise the notification will be erased only when wok reboots
That's why I've chosen to create a notification specific widget.
--
Lucio Correia
Software Engineer
IBM LTC Brazil
More information about the Kimchi-devel
mailing list