Commit 2603edadb50b91d87b157ee960f077635f68c65e
Merge branch 'release/ANUBIS_1_14' of ssh://gitlab.calexium.com:33022/calexium/c…
…alexium_lib into release/ANUBIS_1_14
Showing
5 changed files
with
73 additions
and
28 deletions
Show diff stats
database/vtm/view_table_renderer.anubis
| ... | ... | @@ -25,7 +25,8 @@ read calexium_lib/web/CXM_making_a_web_site.anubis |
| 25 | 25 | read calexium_lib/web/CXM_multihost_http_server.anubis |
| 26 | 26 | read calexium_lib/web/jQuery/CXM_jquery_datatable.anubis |
| 27 | 27 | read calexium_lib/web/jQuery/CXM_jquery_datatable_types.anubis |
| 28 | -read calexium_lib/web/jQuery/CXM_jquery_dialog.anubis | |
| 28 | +read calexium_lib/web/jQuery/CXM_jquery_dialog.anubis | |
| 29 | +read calexium_lib/web/jQuery/CXM_jquery_button.anubis | |
| 29 | 30 | read calexium_lib/web/jQuery/ui-addon/datetimepicker.anubis |
| 30 | 31 | read calexium_lib/web/CXM_form.anubis |
| 31 | 32 | read calexium_lib/web/widgets/css_helper.anubis |
| ... | ... | @@ -204,9 +205,14 @@ public define HTML_Partial_Content |
| 204 | 205 | partial_content( |
| 205 | 206 | div( [/*class("tableau")*/], |
| 206 | 207 | sequence( |
| 207 | - [ actioner(same,same, link([class("my_button")],_T("NEW")),"edit_table",[("table_name", rows.table_name)]), | |
| 208 | +<<<<<<< HEAD | |
| 209 | + [ | |
| 210 | + partial(jquery_button(jQuery_button(button, "edit_table_"+rows.table_name, "", _T("NEW"), jQuery_actioner(same, jqlink, "edit_table&table_name="+rows.table_name)))), | |
| 211 | +======= | |
| 212 | + [ partial(jquery_button(jQuery_button(button, "", _T("NEW"), jQuery_actioner(same, jqlink, "table_name"), jq_icon_none, jq_icon_none)))/*actioner(same,same, link([class("my_button")],_T("NEW")),"edit_table",[("table_name", rows.table_name)])*/, | |
| 213 | +>>>>>>> 50b6dd00541faf76383aa5ad807b547c3f882842 | |
| 208 | 214 | //dialog used by datatable entries |
| 209 | - partial(jq_dialog_create(dialog_id("edit_table_dlg_ajax"), ajax("?a=ajax_edit_table&table_name="+rows.table_name))), | |
| 215 | + partial(jq_dialog_create(dialog_id(action_name+"_dlg_ajax"), ajax("?a=ajax_edit_table&table_name="+rows.table_name))), | |
| 210 | 216 | |
| 211 | 217 | table([core_attrs([id("table_view"), class("tableau display compact nowrap")])], |
| 212 | 218 | make_header(_T, rows.header.list, [action_header_cell]), | ... | ... |
web/CXM_jquery.anubis
web/CXM_making_a_web_site.anubis
| ... | ... | @@ -2695,12 +2695,14 @@ public define Start_Web_Sites_Result |
| 2695 | 2695 | with http_server_r = |
| 2696 | 2696 | start_http_server(ip_address,http_port, |
| 2697 | 2697 | map(get_description,web_sites), |
| 2698 | - load_denial_of_service_info), | |
| 2698 | + load_denial_of_service_info, | |
| 2699 | + shutdown_required), | |
| 2699 | 2700 | with https_server_r = |
| 2700 | 2701 | start_https_server(ip_address,https_port, |
| 2701 | 2702 | ssl_certificate_common_name, |
| 2702 | 2703 | map(get_description,web_sites), |
| 2703 | - load_denial_of_service_info), | |
| 2704 | + load_denial_of_service_info, | |
| 2705 | + shutdown_required), | |
| 2704 | 2706 | if http_server_r is ok(http_server) |
| 2705 | 2707 | then |
| 2706 | 2708 | ( | ... | ... |
web/CXM_multihost_http_server.anubis
| ... | ... | @@ -3168,12 +3168,17 @@ define One |
| 3168 | 3168 | BufferedConnection connection, |
| 3169 | 3169 | Bool is_https, |
| 3170 | 3170 | DenialOfService dos, |
| 3171 | - SState s | |
| 3171 | + SState s, | |
| 3172 | + (One) -> Bool shutdown_required | |
| 3172 | 3173 | ) = |
| 3173 | 3174 | //t0 <- (UTime)unow; |
| 3174 | 3175 | with start_time = (Int)now, |
| 3175 | 3176 | s.sttm <- start_time; |
| 3176 | 3177 | //println("Request time: " + format_http_date(start_time)); |
| 3178 | + if shutdown_required(unique) then | |
| 3179 | + println("shutdown required on http_https_handler"); | |
| 3180 | + unique | |
| 3181 | + else | |
| 3177 | 3182 | if dos is denial_of_service(mc_v,rld_v,hd_v,ad_v,ld_v,ra_v) then |
| 3178 | 3183 | if remote_IP_address_and_port(connection.conn) is (ip_addr,port) then |
| 3179 | 3184 | if read_request_line(connection) is |
| ... | ... | @@ -3210,7 +3215,7 @@ define One |
| 3210 | 3215 | ok(body) then |
| 3211 | 3216 | www_url_answer(host_name, desc, connection.conn, ip_addr, rqline2, headers, body, generate_tt); |
| 3212 | 3217 | //it's HTTP 1.1 keep-alive is default |
| 3213 | - http_https_handler(sites, connection, is_https, dos, s) | |
| 3218 | + http_https_handler(sites, connection, is_https, dos, s, shutdown_required) | |
| 3214 | 3219 | } |
| 3215 | 3220 | //MULTIPART_FORM_DATA |
| 3216 | 3221 | multipart_form_data then |
| ... | ... | @@ -3250,7 +3255,7 @@ define One |
| 3250 | 3255 | multipart_form_data_answer(host_name, desc, connection.conn, ip_addr, rqline2, headers, desc.site_directory + tmp_body_file, generate_tt, s); |
| 3251 | 3256 | |
| 3252 | 3257 | //it's HTTP 1.1 keep-alive is default |
| 3253 | - http_https_handler(sites, connection, is_https, dos, s) | |
| 3258 | + http_https_handler(sites, connection, is_https, dos, s, shutdown_required) | |
| 3254 | 3259 | |
| 3255 | 3260 | else |
| 3256 | 3261 | println("Can't copy data from stream to temporary file "), |
| ... | ... | @@ -3264,7 +3269,7 @@ define One |
| 3264 | 3269 | multipart_form_data_answer(host_name, desc, connection.conn, ip_addr, rqline2, headers, desc.site_directory + tmp_body_file, generate_tt, s); |
| 3265 | 3270 | |
| 3266 | 3271 | //it's HTTP 1.1 keep-alive is default |
| 3267 | - http_https_handler(sites, connection, is_https, dos, s) | |
| 3272 | + http_https_handler(sites, connection, is_https, dos, s, shutdown_required) | |
| 3268 | 3273 | |
| 3269 | 3274 | else |
| 3270 | 3275 | println("Can't copy data from stream to temporary file ") |
| ... | ... | @@ -3300,7 +3305,8 @@ define Server -> ((RWStream) -> One) |
| 3300 | 3305 | make_http_handler |
| 3301 | 3306 | ( |
| 3302 | 3307 | List(Web_Site_Description) sites, |
| 3303 | - DenialOfService dos | |
| 3308 | + DenialOfService dos, | |
| 3309 | + (One) -> Bool shutdown_required | |
| 3304 | 3310 | ) = |
| 3305 | 3311 | (Server server) |-> (RWStream conn) |-> |
| 3306 | 3312 | if remote_IP_address_and_port(conn) is (addr,_) then |
| ... | ... | @@ -3308,31 +3314,33 @@ define Server -> ((RWStream) -> One) |
| 3308 | 3314 | then print("Rejecting dubious IP address "+ip_addr_to_string(addr)+"\n") |
| 3309 | 3315 | else |
| 3310 | 3316 | with connection = buffered_connection(tcp(conn), var(constant_byte_array(0, 0)), var(0), var([])), |
| 3311 | - http_https_handler(sites, connection, false, dos, sstate(var(0),var(0))). | |
| 3317 | + http_https_handler(sites, connection, false, dos, sstate(var(0),var(0)), shutdown_required). | |
| 3312 | 3318 | public define One |
| 3313 | 3319 | http_direct_handler |
| 3314 | 3320 | ( |
| 3315 | 3321 | List(Web_Site_Description) sites, |
| 3316 | 3322 | RWStream conn, |
| 3317 | - DenialOfService dos | |
| 3323 | + DenialOfService dos, | |
| 3324 | + (One) -> Bool shutdown_required | |
| 3318 | 3325 | ) = |
| 3319 | 3326 | if remote_IP_address_and_port(conn) is (addr,_) then |
| 3320 | 3327 | if is_dubious_IP(addr,dos) |
| 3321 | 3328 | then print("Rejecting dubious IP address "+ip_addr_to_string(addr)+"\n") |
| 3322 | 3329 | else |
| 3323 | 3330 | with connection = buffered_connection(tcp(conn), var(constant_byte_array(0, 0)), var(0), var([])), |
| 3324 | - http_https_handler(sites, connection, false, dos, sstate(var(0),var(0))). | |
| 3331 | + http_https_handler(sites, connection, false, dos, sstate(var(0),var(0)), shutdown_required). | |
| 3325 | 3332 | |
| 3326 | 3333 | |
| 3327 | 3334 | define Server -> (SSL_Connection -> One) |
| 3328 | 3335 | make_https_handler |
| 3329 | 3336 | ( |
| 3330 | 3337 | List(Web_Site_Description) sites, |
| 3331 | - DenialOfService dos | |
| 3338 | + DenialOfService dos, | |
| 3339 | + (One) -> Bool shutdown_required | |
| 3332 | 3340 | ) = |
| 3333 | 3341 | (Server server) |-> (SSL_Connection conn) |-> |
| 3334 | 3342 | with connection = buffered_connection(ssl(conn), var(constant_byte_array(0, 0)), var(0), var([])), |
| 3335 | - http_https_handler(sites, connection, true, dos, sstate(var(0),var(0))). | |
| 3343 | + http_https_handler(sites, connection, true, dos, sstate(var(0),var(0)), shutdown_required). | |
| 3336 | 3344 | |
| 3337 | 3345 | |
| 3338 | 3346 | |
| ... | ... | @@ -3615,11 +3623,12 @@ public define StartServerResult |
| 3615 | 3623 | Word32 ip_address, |
| 3616 | 3624 | Word32 port, |
| 3617 | 3625 | List(Web_Site_Description) sites, |
| 3618 | - DenialOfService dos | |
| 3626 | + DenialOfService dos, | |
| 3627 | + (One) -> Bool shutdown_required | |
| 3619 | 3628 | ) = |
| 3620 | 3629 | create_directories(sites); |
| 3621 | 3630 | start_http_server(ip_address,port, |
| 3622 | - make_http_handler(sites, dos), | |
| 3631 | + make_http_handler(sites, dos, shutdown_required), | |
| 3623 | 3632 | 0, |
| 3624 | 3633 | dos). |
| 3625 | 3634 | |
| ... | ... | @@ -3663,11 +3672,12 @@ public define StartServerResult |
| 3663 | 3672 | Word32 port, |
| 3664 | 3673 | String certificate_common_name, // of SSL server certificate |
| 3665 | 3674 | List(Web_Site_Description) sites, |
| 3666 | - DenialOfService dos | |
| 3675 | + DenialOfService dos, | |
| 3676 | + (One) -> Bool shutdown_required | |
| 3667 | 3677 | ) = |
| 3668 | 3678 | create_directories(sites); |
| 3669 | 3679 | start_https_server(ip_address,port,certificate_common_name, |
| 3670 | - make_https_handler(sites, dos), | |
| 3680 | + make_https_handler(sites, dos, shutdown_required), | |
| 3671 | 3681 | 0,dos). |
| 3672 | 3682 | |
| 3673 | 3683 | ... | ... |
web/jQuery/ui-addon/datetimepicker.anubis
| ... | ... | @@ -17,9 +17,9 @@ read calexium_lib/web/CXM_jquery.anubis |
| 17 | 17 | css(css_file("/css/jquery/ui/datetimepicker.css")), |
| 18 | 18 | js(js_file("js/jquery/ui/jquery-ui-timepicker-addon.js")), |
| 19 | 19 | js_inline(jquery_ready("// Datepicker\n |
| 20 | - $('.datepicker').datepicker({inline: true}); | |
| 21 | - $('.datetimepicker').datetimepicker({inline: true}); | |
| 22 | - ")) | |
| 20 | + $('.datepicker').datepicker({inline: true}); | |
| 21 | + $('.datetimepicker').datetimepicker({inline: true}); | |
| 22 | + ")) | |
| 23 | 23 | ] |
| 24 | 24 | . |
| 25 | 25 | |
| ... | ... | @@ -28,16 +28,43 @@ read calexium_lib/web/CXM_jquery.anubis |
| 28 | 28 | public define List(HTML_Head_Tag) |
| 29 | 29 | jq_datetimepicker_init |
| 30 | 30 | ( |
| 31 | - String lang | |
| 31 | + String lang, | |
| 32 | + Bool add_icon | |
| 32 | 33 | ) |
| 33 | 34 | = |
| 34 | 35 | [ |
| 35 | 36 | css(css_file("js/jquery/plug-in/datetimepicker/datetimepicker.css")), |
| 36 | 37 | js(js_file("js/jquery/plug-in/datetimepicker/datetimepicker.js")), |
| 37 | 38 | js_inline(jquery_ready("// Datetimepicker\n |
| 38 | - $('.datepicker').datetimepicker({lang:'"+lang+"',timepicker:false,format:'d/m/Y'}); | |
| 39 | - $('.datetimepicker').datetimepicker({lang:'"+lang+"',format:'Y-m-d H:i'}); | |
| 40 | - $('.timepicker').datetimepicker({lang:'"+lang+"',datepicker:false,format:'H:i',step:5}) | |
| 41 | - ")) | |
| 39 | + $('.datepicker').datetimepicker({lang:'"+lang+"',timepicker:false,format:'d/m/Y'}); | |
| 40 | + $('.datetimepicker').datetimepicker({lang:'"+lang+"',format:'Y-m-d H:i'}); | |
| 41 | + $('.timepicker').datetimepicker({lang:'"+lang+"',datepicker:false,format:'H:i',step:5}); | |
| 42 | + " + if add_icon then " | |
| 43 | + var items_add_func = function (index) { | |
| 44 | + var icon_file = 'icon_calendar.gif'; | |
| 45 | + var dt_picker = $(this); | |
| 46 | + | |
| 47 | + if (dt_picker.hasClass('timepicker')) { | |
| 48 | + icon_file = 'icon_clock.gif'; | |
| 49 | + } | |
| 50 | + | |
| 51 | + var icon = $('<img src=\"icons/16x16/'+icon_file+'\"/>'); | |
| 52 | + | |
| 53 | + icon.click(function () { dt_picker.datetimepicker('show'); }); | |
| 54 | + icon.hover(function() { $(this).css('cursor','pointer'); }); | |
| 55 | + dt_picker.after(icon); | |
| 56 | + }; | |
| 57 | + | |
| 58 | + $('.datepicker').each(items_add_func); | |
| 59 | + $('.datetimepicker').each(items_add_func); | |
| 60 | + $('.timepicker').each(items_add_func); | |
| 61 | + " else "")) | |
| 42 | 62 | ] |
| 43 | 63 | . |
| 64 | + | |
| 65 | +public define List(HTML_Head_Tag) | |
| 66 | + jq_datetimepicker_init | |
| 67 | + ( | |
| 68 | + String lang | |
| 69 | + ) | |
| 70 | + = jq_datetimepicker_init(lang, true). | ... | ... |