diff options
| author | LV-426 <lv-426@taproot.org.il> | 2015-05-18 18:24:15 +0300 |
|---|---|---|
| committer | LV-426 <lv-426@taproot.org.il> | 2015-05-18 18:33:11 +0300 |
| commit | 22dc319d4bb62aa1bb045313b869b8581ac6a916 (patch) | |
| tree | eeaf4aa3065e0017e28ec181b1c5f1962f4e860b /src/client | |
| parent | 16a056303efba94281d82ed963b92fce9c3d9daf (diff) | |
view/toolbar__status: refactoring out view
Diffstat (limited to 'src/client')
| -rw-r--r-- | src/client/rz_core.js | 53 | ||||
| -rw-r--r-- | src/client/view/toolbar__status.js | 45 |
2 files changed, 57 insertions, 41 deletions
diff --git a/src/client/rz_core.js b/src/client/rz_core.js index 2b3458d7..2e5363bd 100644 --- a/src/client/rz_core.js +++ b/src/client/rz_core.js @@ -1,7 +1,7 @@ "use strict" -define(['jquery', 'd3', 'consts', 'rz_bus', 'util', 'model/graph', 'model/core', 'view/item_info', 'rz_observer', 'view/selection', 'rz_mesh', 'model/diff', "view/graph_view", 'view/svg_input', 'view/filter_menu', 'view/activity', 'rz_api_backend'], -function($, d3, consts, rz_bus, util, model_graph, model_core, item_info, rz_observer, selection, rz_mesh, model_diff, graph_view, svg_input, filter_menu, activity, rz_api_backend) { +define(['jquery', 'd3', 'consts', 'rz_bus', 'util', 'model/graph', 'model/core', 'view/item_info', 'rz_observer', 'view/selection', 'rz_mesh', 'model/diff', "view/graph_view", 'view/svg_input', 'view/filter_menu', 'view/activity', 'rz_api_backend', 'view/toolbar__status'], +function($, d3, consts, rz_bus, util, model_graph, model_core, item_info, rz_observer, selection, rz_mesh, model_diff, graph_view, svg_input, filter_menu, activity, rz_api_backend, toolbar__status) { // fix circular module dependency var search; @@ -289,26 +289,11 @@ function rzdoc__create_and_open(rzdoc_name) { }; var on_error = function(xhr, status, err_thrown) { - - var status_bar, - status_bar_body; - // TODO: handle malformed doc name - status_bar_body = $('<div>Cannot create document titled \'' + rzdoc_name + '\', document already exists.</div>'); - - close_btn = $('<div>x</div>'); - close_btn.addClass('toolbar__close_btn'); + var toolbar__status_body; - status_bar = $('#status-bar'); // reset - status_bar.children().remove(); - status_bar.append(close_btn); - status_bar.append(status_bar_body); - - close_btn.click(function() { - status_bar.hide(); - }); - - status_bar.show(); + toolbar__status_body = $('<div>Cannot create document titled \'' + rzdoc_name + '\', document already exists.</div>'); + toolbar__status.display_html_frag(toolbar__status_body); }; // TODO: validate rzdoc name @@ -340,11 +325,9 @@ function rzdoc__open(rzdoc_name) { }; function on_error(xhr, status, err_thrown) { - var close_btn, - create_btn, - status_bar_body, + var create_btn, rzdoc_name, - status_bar; + toolbar__status_body; rzdoc_name = xhr.responseJSON.data.rzdoc_name; @@ -352,28 +335,16 @@ function rzdoc__open(rzdoc_name) { create_btn.text('Create document'); create_btn.addClass('status-bar__btn_rzdoc_create_post_404'); - close_btn = $('<div>x</div>'); - close_btn.addClass('toolbar__close_btn'); - - status_bar_body = $('<div>'); - status_bar_body.text('Rhizi could not find a document titled \'' + rzdoc_name + '\'.'); - status_bar_body.addClass('status-bar__body'); - status_bar_body.append(create_btn); - - status_bar = $('#status-bar'); // reset - status_bar.children().remove(); - status_bar.append(close_btn); - status_bar.append(status_bar_body); + toolbar__status_body = $('<div>'); + toolbar__status_body.text('Rhizi could not find a document titled \'' + rzdoc_name + '\'.'); + toolbar__status_body.append(create_btn); create_btn.click(function() { rzdoc__create_and_open(rzdoc_name); - status_bar.hide(); - }); - close_btn.click(function() { - status_bar.hide(); + toolbar__status.hide(); }); - status_bar.show(); + toolbar__status.display_html_frag(toolbar__status_body); } rz_config.rzdoc_cur__name = rzdoc_name; diff --git a/src/client/view/toolbar__status.js b/src/client/view/toolbar__status.js new file mode 100644 index 00000000..a0c5cef0 --- /dev/null +++ b/src/client/view/toolbar__status.js @@ -0,0 +1,45 @@ +"use strict" + +/** + * Manage backend websocket connection + */ +define(['jquery'], +function($) { + + var close_btn, + toolbar__status; + + function toolbar__status() { + + close_btn = $('<div>x</div>'); + close_btn.addClass('toolbar__close_btn'); + + toolbar__status = $('#status-bar'); + toolbar__status.append(close_btn); + } + + /** + * display given HTML fragment as status line body + */ + function display_html_frag(toolbar__status_body) { + toolbar__status.children().remove(); + + toolbar__status.append(close_btn); + toolbar__status.append(toolbar__status_body); + toolbar__status_body.addClass('status-bar__body'); + + close_btn.click(function() { + toolbar__status.hide(); + }); + + toolbar__status.show(); + } + + toolbar__status(); + + return { + display_html_frag : display_html_frag, + hide: toolbar__status.hide + }; + +}); |
