#!/usr/bin/perl BEGIN { use lib '/usr/home/cfg' ; require push_inc ; } require cfg ; print "Content-type: text/html\n\n"; &today ; #--------------------------------------------------------------------------------------------------------------------------------------------------------------------- use DBI; use CGI::Carp qw(fatalsToBrowser); use CGI; @ARGV = split(/\\*\&/, $ENV{'QUERY_STRING'}); $action = $ARGV[0] ; $selectfield = $ARGV[1] ; $is_from_analytics_event = "" unless $is_from_analytics_event ; # our $debug = 1 ; our $table = 'customers' ; our ($q) = CGI -> new() ; $iaction = $q -> param('iaction') || $action ; #--------------------------------------------------------------------------------------------------------------------------------------------------------------------- if ($iaction eq 'add'){ &common_min_add_screen; &screen1; } if ($iaction eq 'save'){ &common_min_load_params ; &insert ; &screen2 ; } &common_min_action; exit ; #------------------------------------------------------------------------------------------ sub insert { &add_db_fields ; # $i{last_edited_by} = $userid ; $i{last_updated} = "$now_ccyy_mm_dd $now_hour:$now_min:$now_sec" ; &validate ; $ignore{sel_field} = 1 ; $i{id} = &db_min_get_max($table,'id') ; $i{date_time} = "$now_ccyy_mm_dd $now_hour:$now_min:$now_sec" ; $i{last_updated} = "$now_ccyy_mm_dd $now_hour:$now_min:$now_sec" ; $i{last_edited_by} = $userid ; $i{user_id} = $userid ; # $i{analytics} = 1 ; &db_min_insert($table) ; } #------------------------------------------------------------------------------------------ sub validate { # called from common_min_action my $exists = '' ; $i{name} = &common_fix_str($i{name}) ; &db_min_ro($table,'id,name','','','') ; foreach my $id (keys %{$db{$table}}) { if (lc $db{$table}{$id}{name} eq lc $i{name}) { $exists = 1 ; } } if ($exists) { $alert = &common_min_alert('warning',"'$i{name}' AS A CUSTOMER NAME ALREADY EXISTS!",'warning-sign') ; %col_name = () ; &common_min_add_screen; &screen1; } } #------------------------------------------------------------------------------------------ sub add_screen { $box_header_title = 'Add Analytics Client' ; $hidden_action = 'save' ; $head_col_width = 2 ; # $ignore{user_id} = 1 ; } #------------------------------------------------------------------------------------------ sub add_db_fields { $ignore{iaction} = 1 ; $hidden{id} = 2 ; $hidden{sel_field} = 2 ; $required{name} = 1 ; # $sort_field{1} = 'name' ; $db{$table}{''}{sel_field} = $selectfield if $selectfield ; $db{$table}{''}{analytics} = 1 ; &common_customer_hidden_db_fields ; $hidden{id} = 2 ; # $hidden{user_id} = 2 ; } #------------------------------------------------------------------------------------------ sub thead { &common_min_thead ; } #------------------------------------------------------------------------------- sub screen1 { $trigger_jquery_raw .= qq~ \$('#btn-close-customer').click(function (e) { parent.BootstrapDialog.closeAll() ; });~ ; &common_min_dialog_load_screen ; } #------------------------------------------------------------------------------------------ sub screen2 { $trigger_jquery_raw .= qq~ if ("$i{analytics}" == "1") { parent.\$("#$i{sel_field}").append(""); parent.\$("#$i{sel_field}").trigger("chosen:updated"); } parent.BootstrapDialog.closeAll() ; ~; &common_min_dialog_save_screen ; } #------------------------------------------------------------------------------------------ use today ; use dialog ; use common ; 1;