#!/usr/local/bin/perl
######################################################
# Virtual Employment Agency
# ver 6.0 - se
######################################################
# Copyright (c) 2000 e-Business Solutions.
# All Rights Reserved.
# www.biz-on-line.com # sid@biz-on-line.com
######################################################
require 'jobs.pl';
require 'jobs.cfg';
use CGI;
$query = new CGI;
$this_path = &get_path_info;
$script_ref = $ENV{"HTTP_REFERER"};
if ($script_ref =~ /\/$/) { chop ($script_ref)};
#if ($this_path =~ /\D(\d\d)/) {$state = $1};
if ($query->param('state')){
$state = $query->param('state');
$this_path = '/'.$state;
}
$script_mode = $query->param('mod') if ($query->param('mod'));
$sort_type = $query->param('sort_type') if ($query->param('sort_type'));
if ($query->cookie('mainlogin') eq 'admin') {$user = 2}
elsif ($query->cookie('mainlogin') eq 'manager') {$user = 1}
else {$user = 0};
if ($this_path =~ /login$/) {&login}
elsif ($query->param('action') eq 'send_to_friend') {&friend}
elsif ($this_path =~ m#/search#) {
# NEW #
$this_path =~ s/\/search//;
$this_path =~ s/\D(\d+)$//;
&search_name_htm;
} else {
if ($query->param('komis_ref')) {
$script_reference = $query->param('komis_ref');
} else {
$script_reference = $script_ref;
}
if ($query->param('action') eq 'kom_insert') {
&kom_insert;
} elsif ($query->param('action') eq 'kom_edit') {
&kom_edit;
} elsif ($query->param('action') eq 'send_form') {
&send_form_htm;
} elsif ($this_path =~ /\D(\d\d)\D\d{5}/) {
$this_path = '';
&search_name_htm;
# %tags = &get_bib_info_komis($shop_root.$this_path);
# %params = &get_params(%tags);
# $type = $tags{'Type'};
# @inc_list = &verify_list("$shop_root$this_path",$life_time);
# @sections_list = &get_inc_link_sections($this_path,@inc_list);
# &get_html ();
##||&err_handler("Can't open Html file : $!");
} else {
&search_name_htm;
}
}
#########################################
# Процедуры Employment #
#########################################
sub verify_list {
local($cur_dir,$l_time) = @_;
local($nextname,@inc_list,$level,@tmp,$tmp,$section,%cur_bib_data);
# Чтение текущей директории и BIB.TXT в поддиректориях
opendir(CUR_DIR,$cur_dir)||&err_handler("Can't open dir $cur_dir: $!");
while ($nextname = readdir(CUR_DIR)) {
if ( (-d $cur_dir.'/'.$nextname) && ($nextname =~ /^\d+\d$/)) {
%cur_bib_data = &get_bib_info ($cur_dir.'/'.$nextname);
# проверка объявления на давность
if ((($cur_bib_data{'create time'}+$l_time) < time ) && ($cur_bib_data{'create time'}) &&
($l_time != 0)) {
unlink($cur_dir.'/'.$nextname."/BIB.TXT") || &err_handler("Can't del file");
rmdir($cur_dir.'/'.$nextname) || &err_handler("Can't del dir");
} else {
push(@inc_list, $nextname);
}
}
}
close(CUR_DIR);
return @inc_list;
}
sub get_inc_link_sections {
local($full_path,@inc_list) = @_;
local(%tags,$tmp,@section_list,$nextname);
foreach $nextname (@inc_list) {
%tags = &get_bib_info($full_path.'/'.$nextname);
$tmp = $tags{'Type'};
if ($tmp eq 'Group') {
# $tmp = "";
$tmp = "";
if ($tags{'Картинка'}) {
$tmp .= " \n"
};
$tmp .= "$tags{'name'} \n";
push (@section_list,$tmp);
}
}
return @section_list;
}
###########
# Sorting #
###########
sub sort_by_param {
local($sort_param,%product_list)=@_;
local(@result_list,%param_array,@nill_param_list,$tmp,$tmp2);
if ($sort_param eq 'rate') {
%param_array = %product_prices;
}
elsif ($sort_param eq 'job_type') {
%param_array = %product_types;
}
elsif ($sort_param eq 'refno') {
%param_array = %product_refno;
}
elsif ($sort_param eq 'name') {
%param_array = %product_list;
}
elsif ($sort_param eq 'search_code') {
%param_array = %product_scode;
}
elsif ($sort_param eq 'client') {
%param_array = %product_client;
}
elsif ($sort_param eq 'city') {
%param_array = %product_city;
}
elsif ($sort_param eq 'state') {
%param_array = %product_state;
}
else {
%param_array = %product_sort_par;
}
foreach $tmp (keys(%param_array)) {
unless ($param_array{$tmp}) {
push(@nill_param_list,$tmp);
delete $param_array{$tmp};
}
}
foreach $tmp (sort numeric (values (%param_array))) {
# foreach $tmp (sort (values (%param_array))) {
foreach $tmp2 (keys(%product_list)) {
### TEST
# print "=$tmp2+$param_array{$tmp2}+$tmp";
if ($param_array{$tmp2} eq $tmp) {
delete $param_array{$tmp2};
push(@result_list,$tmp2);
}
}
}
@result_list = reverse(@result_list) if (($sort_param eq 'date')||($sort_param eq ''));
# Real Resalts ONLY!!! #
foreach $tmp (@nill_param_list) {
push (@result_list, $tmp) if $tmp;
}
return @result_list;
}
sub numeric {
if ( ($a =~ /^\d+/) && ($b =~ /^\d+/)) {
if ($a > $b) {return 1}
elsif ($a < $b) {return -1}
else { return 0 }
}
else {
$aa = &translating($a);
$bb = &translating($b);
if ($aa gt $bb) {return 1}
elsif ($aa lt $bb) {return -1}
else { return 0 }
}
}
# *) This SUB are calling from HTML template
# Список Секций (штатов);
sub show_sections {
my($i,$lnk,@temp_list,$tmp);
#@temp_list = keys (%states);
print "
| "; if($i<10){ $lnk = '0'.$i; } else { $lnk = "$i"; } $tmp = $states{$lnk}; print "$tmp \ \ \ \n"; print " | \n","
"; # print "Select State
"; if ($temp_path) { $temp_path =~ s/\/+$//; @inc_temp_list = &verify_list("$shop_root$temp_path",$life_time); @temp_list = &get_inc_link_sections($temp_path,@inc_temp_list); } @temp_list = @sections_list unless (@temp_list); if (@temp_list) { print "\n"; print " \n"; foreach (@temp_list) { print "
\n","\n"," \n"; } print ""; print $_; print " \n","\n"; } return; } sub get_bib_info_komis { local($fullname) = @_; local(%tags,$key,$tmp,$level,$section,@params,$i); open(BIB, $fullname.'/BIB.TXT')||&err_handler("Can not open bib file $fullname : $!"); while ($tmp= ) { if ($tmp =~ /^%(.*)%/) { $key = $1; } else { chomp($tmp); $tmp =~ s/\r//g; #($key eq 'contacts') || || ($key eq 'other_link') if ($tmp) { if (($key eq 'description') || ($key eq 'must_skils') || ($key eq 'nice_skils')) { $tags{$key} .= $tmp."
\n"; } elsif (($key eq 'create time' ) || ($key eq 'rate')) { $tags{'Параметры'} .= $key."###".$tmp."\n"; $tags{$key} .= $tmp; } else { $tags{$key} .= $tmp; } } } }#wile close(BIB); return %tags; } sub get_inc_link_products_komis { local($this_path,$sortparam,$sort_type,@inc_list) = @_; local(%tags,%params,$tmp,$temp,@product_list,$sort_par); if ($sortparam eq 'date') {$sort_par = 'create time'} else {$sort_par = $sortparam} foreach $nextname (@inc_list) { %tags = &get_bib_info_komis($shop_root.$this_path.'/'.$nextname); %product_list = &get_inc_link_products(%tags); } return %product_list; } sub get_inc_link_products { # То же, что и get_inc_link_products_komis, только с готовым %tags local(%tags) = @_; %params = &get_params(%tags); $tmp = $tags{'Type'}; # $temp = $params{'job_type'}; $temp = $tags{'job_type'}; if (($tmp eq 'Unit') && ((!$sort_type) || ($sort_type eq $temp))) { # if ($tmp eq 'Unit'){ $product_sort_par{$nextname} = $params{$sort_par}; $product_dates{$nextname} = $params{'create time'}; $product_prices{$nextname} = $params{'rate'}; # OLD # # $product_types{$nextname} = $tags{'job_type'}; # NEW # $product_types{$nextname} = $job_type{$tags{'job_type'}}; $product_list{$nextname} = $tags{'name'}; $product_scode{$nextname} = $tags{'search_code'}; $product_client{$nextname} = $tags{'client'}; $product_city{$nextname} = $tags{'city'}; } return %product_list; } # Скрипты kom_insert и kom_edit sub kom_edit { local ($action_name) = 'kom_edit'; local ($path_info) = $ENV{"PATH_INFO"}; if (($query->param('step') == 1) && ($query->param('name'))) { &print_headhtml(' '); $full_datadir_path = $datadir_path.$ENV{"PATH_INFO"}; $prod_name = $query->param('name'); chdir($full_datadir_path) || die print_err("Can not open dir",$script_reference); while ($dir_current = <*>) { if (-d $dir_current) { open(BIBL,$dir_current.'/BIB.TXT') || die print_err("Can not open file",$script_reference); while () { chop; if ($_ eq '%name%') { last } } $_= ; chop; if (/^$prod_name/i) { %prod_list= (%prod_list,$dir_current,$_); } close(BIBL); } } } elsif ($query->param('step') == 2){ unless ($user) { print_err("You can not do it!
Press CANCEL!",$base_url); # &login; # LOGIN для Администратора } else { $full_datadir_path = $datadir_path.$ENV{"PATH_INFO"}; chdir($full_datadir_path) || die print_err("Can't open dir $! ",$script_reference); ### TEST #&print_headhtml('Test page'); #print "User aproved"; # # $type = $tags{'Type'}; $type = $query->param('Type'); if ($query->param('mod') ne 'Del') { ### TEST #print "Type $type
"; #print "Path $this_path
"; #print "Local $path_info
"; # # Если редактируем Название города, то одна форма: if ($type eq 'Group') { $action_path .= $path_info; %bib = &get_bib_info ($shop_root.$this_path); &print_headhtml('Edit current Folder'); &print_addform($action_path,$bib{'name'},'form','Edit',$script_reference,'kom_insert'); # Если редактируем Job Position, то другая форма: } else { # %bib = &get_bib_info_komis ($shop_root.$this_path.'/'.$ENV{"PATH_INFO"}); %bib = &get_bib_info_komis ($shop_root.$this_path); chomp($bib{'description'}); &print_headhtml("Edit current Job Position "); print '
'; foreach $key_vol (keys %bib) { $bib{$key_vol} = &convert_bracket($bib{$key_vol},1) } &print_insertform($action_path,$bib{'name'},$bib{'description'}, $bib{'Картинка'},$bib{'user_email'},$bib{'other_link'}, $bib{'rate'},$bib{'password'}, 'form',$script_mode,$script_reference,'kom_insert', $bib{'must_skils'},$bib{'nice_skils'},$bib{'contacts'},$bib{'job_type'},$bib{'create time'}); } # close(BIBL); } else { # Удаление директории -> if ($query->param('mod') eq 'Del') close(BIBL); unlink("BIB.TXT") || die &print_err("Can't del file: $! ",$script_reference); unlink('ID'); chdir("..") || die &print_err("Can't up to dir",$script_reference); @deldirs = split(/\//,$ENV{"PATH_INFO"}); $deldir = pop(@deldirs); rmdir($deldir) || die &print_err("Can't del dir",$script_reference); @script_ref_arr = split(/\?/,$script_reference); $script_ref_arr[0] = substr($script_ref_arr[0],0,rindex($script_ref_arr[0],"/")); $script_reference = join ("?",@script_ref_arr); ## $this_path = join("/",@deldirs); ## &show_komis($this_path); # print $query->redirect($script_reference); print $query->redirect($base_url ); } } # unless ($user) } # IF param('step') == 1 or 2 } sub kom_insert { local ($action_name) = 'kom_insert'; local (@temp1,$erratta,$full_datadir_path); # Проверка Admin password if ($user) { # Данные уже введены? if ($query->param('reference') eq 'form') { # Проверка обязательных полей # unless ($query->param('new_path')) {$erratta .= 'Select Category for new Screen Saver! This is mandatory field!
'}; unless ($query->param('name')) {$erratta .= 'Job Position Title is mandatory field!!!
'}; unless ($query->param('job_type')) {$erratta .= 'Select Job Category! This is mandatory field!!!
'}; unless ($state) {$erratta .= 'Select STATE! This is mandatory field!!!
'}; # unless ($query->param('platforms')) {$erratta .= 'Select Platforms! It is mandatory field!
'}; # unless ($tmp) {$erratta .= 'Incorrect or Unworking Download URL!
'}; if (!$erratta){ $path_info = $ENV{"PATH_INFO"}; $full_datadir_path = $datadir_path.$path_info; $full_datadir_path =~ s#\/\/#\/#; ### TEST #&print_headhtml('TesT'); #print $full_datadir_path; #exit; # chdir($full_datadir_path) || die &print_err("Can't open directory $full_datadir_path: $! ", $script_reference); #================ if ($query->param('reference1') eq 'ins') { # SUB NEW_DIR # $full_datadir_path = "$datadir_path/$state"; chdir ($full_datadir_path) || die &print_err("Can't open directory $full_datadir_path: $! ", $script_reference); &dir_verify($bib_type,$bib_type_name) || die &print_err("Yon couldn't do this $bib_type,$bib_type_name!!!", $script_reference); $dir_new = &get_id; &put_id($dir_new+1); if ($query->param('Type') eq 'Group') { for ($i=length($dir_new); $i < 2; $i++) { $dir_new = "0".$dir_new; } } else { for ($i=length($dir_new); $i < $dir_num; $i++) { $dir_new = "0".$dir_new; } } mkdir($dir_new,0777) || die &print_err("Cannot make dir $dir_new:$! ", $script_reference); chdir($dir_new); #***# open(BIBL,">./BIB.TXT") || die &print_err("Could not create file", $script_reference); if ($query->param('Картинка') eq $image_def_string) {$query->delete('Картинка')}; &save_info_into_bib_file(1); ### TEST #&print_headhtml('TesT'); #print 'Param
'; #foreach $kew ($query->param){print '<'.$kew.'>';} #!! print "Объявление успешно добавлено !!!
"; $query->delete_all(); # @temp1 = split(/\?/,$script_reference); # $script_reference = $temp1[0].'/'.$dir_new; $script_reference = $base_url.'/'.$state.'/'.$dir_new; print $query->redirect($script_reference); } elsif ($query->param('reference1') eq 'Edit') { chdir($full_datadir_path) || die &print_err("Can't open directory $full_datadir_path: $! ", $script_reference); # Обновление редактирования # Проверка, был ли изменен штат => нужно ли переносить в новую директорию $path_info =~ s/^\/(\d\d)(.+)/$1/; if ($state ne $path_info){ $delflag = 1; $script_reference = &change_state($state); } open(BIBL,">./BIB.TXT") || die &print_err("Could not create file", $script_reference); &save_info_into_bib_file(0); #!! print "Изменения сделанные в объявлении были приняты !!!"; if ($delflag) {&del_dir($full_datadir_path)}; # Удаляем старую директорию, если были изменения штата $query->delete_all(); @temp1 = split(/\?/,$script_reference); $script_reference = $temp1[0]."?update=ok"; print $query->redirect($script_reference); } #================ # ADD NEW Name of CITY: # } elsif ($query->param('Type') eq 'Group') { # &print_headhtml('Administration. New Group.'); # &print_addform($action_path,'','form','ins',$script_reference,$action_name); # END if (!$erratta) } else { &print_err("Error!
All bold fields are mandatory!!!
$erratta ", $script_reference); } # Добавляем новое объявление в любую группу } else { &print_headhtml('Administration. New Job Position.'); &print_insertform($action_path,'','',$image_def_string,'','','','', 'form','ins',$script_reference,$action_name); } } # end else if (password) } sub change_state { local($state) = @_; local $dir_new = &new_dir("$shop_root/$state"); $script_reference = $base_url.'/'.$state.'/'.$dir_new; return $script_reference; } sub new_dir { local($datadir_path) = @_; chdir ($datadir_path) || die &print_err("Can't open directory $datadir_path: $! ", $script_reference); &dir_verify($bib_type,$bib_type_name) || die &print_err("Yon couldn't do this $bib_type,$bib_type_name!!!", $script_reference); $dir_new = &get_id; &put_id($dir_new+1); if ($query->param('Type') eq 'Group') { for ($i=length($dir_new); $i < 2; $i++) { $dir_new = "0".$dir_new; } } else { for ($i=length($dir_new); $i < $dir_num; $i++) { $dir_new = "0".$dir_new; } } mkdir($dir_new,0777) || die &print_err("Cannot make dir $dir_new:$! ", $script_reference); chdir($dir_new); return $dir_new; } sub del_dir { local($full_datadir_path) = @_; chdir ($full_datadir_path) || die &print_err("Can't open $full_datadir_path: $! ", $script_reference); unlink("BIB.TXT") || die &print_err("Can't del file: $! ",$script_reference); unlink('ID'); chdir("..") || die &print_err("Can't up to dir",$script_reference); $full_datadir_path =~ s/(.+)\/(\d+)$/$2/; rmdir($full_datadir_path) || die &print_err("Can't del dir $full_datadir_path",$script_reference); } sub save_info_into_bib_file { local($crtime) = @_; local ($path_info) = $ENV{"PATH_INFO"}; if ($path_info =~ /\/$/) { chop ($path_info)}; unless ($type) {$type=$query->param('Type')}; $params{'create time'} = $query->param('create time') unless ($params{'create time'}); if ($type eq 'Unit') { print BIBL "%",$bib_type,"%\n"; # print BIBL $bib_type_tovname,"\n"; print BIBL $type,"\n"; # Обновлять ли параметр "время создания"? if ($crtime == 1) { print BIBL "%",$bib_time,"%\n"; print BIBL time,"\n"; } elsif ($crtime == 0) { print BIBL "%",$bib_time,"%\n"; print BIBL $params{'create time'},"\n"; # print BIBL $query->param('create time'),"\n"; $query->delete('Параметры') } } elsif ($type eq 'Group') { print BIBL "%",$bib_type,"%\n"; # print BIBL $bib_type_name,"\n"; print BIBL $type,"\n"; } else { print BIBL "Wrong DATA!!! \n"; print BIBL "%",$bib_type,"%\n"; print BIBL $bib_type_name,"\n"; } foreach $key ($query->param) { unless ($key =~ /^(repassword|reference|old_pass|komis_ref|action|Type|create time|state)/) { print BIBL "%",$key,"%\n"; print BIBL &convert_bracket($query->param($key),0),"\n"; } } close(BIBL); } sub dir_verify { local($bib_type,$bib_type_name) = @_; open(BIBL,"./BIB.TXT") || die &print_err("Could not open file", $script_reference); while () { chomp; $_ =~ s/%(.*)%/$1/g; if ($_ eq $bib_type) { last } } $_= ; chomp; close(BIBL); ($_ eq $bib_type_name) } sub convert_bracket { local($str,$direct) = @_; unless ($direct) { $str =~ s/\</g; $str =~ s/>/\>/g; } else { $str =~ s/\<//g; $str =~ s/\<//g; } return $str; } # Скрипт Print_html.pl sub print_headhtml { local($html_title) = @_; print $query->header; $html_title = 'Direct Marketing Resources - Focusing exclusively in the Direct Marketing industry - Account Management, Database Marketing, DB Research & Analysis, Creative, Sales and Internet / Interactive Marketing' unless $html_title; print $query->start_html(-title=>$html_title, -style=>{'src'=>$images_path.'/employ.css'}, -meta=>{'keywords'=>$title_keywords, 'Web-Developer'=>'Oleg Sidorenko', 'Reply-to'=>'sid@biz-on-line.com', 'WEB'=>'http://www.biz-on-line.com', 'description'=>"$title_description", 'Copyright'=>'e-Busines Solutions'}, -BGCOLOR=>'#FFFFFF', -topmargin=>0, -leftmargin=>0); # # # print " "; # print &get_dyn_recl('banner1'); # print "
";### /banner } sub print_addform { local($action_path,$bib_name_def,$reference_def,$reference1_def,$reference2_def,$action_name) = @_; print "",$query->startform('POST',$action_path),"\n"; print "Type NEW Name of CITY: "; } sub print_insertform { local($action_path,$product_def,$description_def,$image_url_def, $contact_email_def,$other_contact_def,$rate_def,$password_def, $reference_def,$reference1_def,$reference2_def,$action_name, $must_skils_def,$nice_skils_def,$contacts_def,$job_type_def,$create_time_def) = @_; $industry_def = $bib{'industry'}; $co_type_def = $bib{'co_type'}; $refno_def = $bib{'refno'}; $client_def = $bib{'client'}; $city_def = $bib{'city'}; $search_code_def = $bib{'search_code'}; unless ($state) { $this_path =~ /^\/(\d\d)/; $state = $1; } #foreach (@_) {s/
\n", $query->textfield('name',$bib_name_def,60,60),"\n"; print $query->hidden(-name=>'action', -default=>$action_name, -override=>1); print $query->hidden('reference',$reference_def),$query->hidden('reference1',$reference1_def), $query->hidden('komis_ref',$script_reference); $query->param('Type','Group'); print $query->hidden('Type'); print "
",$query->submit("",' Submit ')," \n"; print "",$query->reset('Erase')," "; print $query->endform; print $query->startform(-action=>''),"\n"; print "",$query->submit("",'Cancel')," \n"; print $query->endform; print ""; print "
If you want to add or edit Job Position
press CANCEL and SELECT CITY first.
//g}; $description_def =~ s#
##g; $contacts_def =~ s#
##g; $other_contact_def =~ s#
##g; $must_skils_def =~ s#
##g; $nice_skils_def =~ s#
##g; #$job_type_def =~ s#
##g; $refno_def =~ s#
##g; $client_def =~ s#
##g; $city_def =~ s#
##g; $search_code_def =~ s#
##g; $industry_def =~ s#
##g; $co_type_def =~ s#
##g; ### TEST ## print "Type ->> ",$type; ## print "
Time - >> ",$create_time_def; ## print "
Type param->> ", $query->param('Type'); ## print "
Action ->> ",$query->param('action'); ### NEW print ' END_JS print <
Enter Job Position
END_TITLE $action_path .= $ENV{"PATH_INFO"}; # print $query->startform('POST',$action_path),"\n"; print " JOB Number Select STATE: \n", $query->textfield('name',$product_def,60,60)," \n"; print " \n"; print $query->textfield('refno',$refno_def,15,15),"\n"; print " \n"; print $query->popup_menu(-name=>'state', -values=>[sort keys (%states)], -labels=>\%states, -default=>$state),"\n"; print "
\n"; # print "Job description:
\n", # $query->textarea('description',$description_def,10,70),"\n"; # print "Ссылка на изображение товара:
\n",$query->textfield( # -name=>'Картинка', # -default=>$image_url_def, # -size=>52),"\n"; # print "
Job type: \n"; # print $query->popup_menu(-name=>'job_type', # -values=>[sort keys (%job_type)], # -labels=>\%job_type, # -default=>$job_type_def); print "\n"; print " \ Industry: \n"; print $query->popup_menu(-name=>'industry', -default=>$industry_def, -values=>[sort keys (%industry)], -labels=>\%industry); print " \ \  Co Type: \n"; print $query->popup_menu(-name=>'co_type', -default=>$co_type_def, -values=>[sort keys (%co_type)], -labels=>\%co_type); # print "Location:
\n",,$query->textarea('other_link',$other_contact_def,5,36),"\n"; # print "Required skills:
\n",,$query->textarea('must_skils',$must_skils_def,5,36),"\n"; # print "Preferred skills:
\n",,$query->textarea('nice_skils',$nice_skils_def,5,36),"\n"; # print "Account Executive:
\n",,$query->textarea('contacts',$contacts_def,5,36),"\n"; # print "
\n"; print " \ \ Target compensation: \n \ ",$query->textfield('rate',$rate_def,15,15),"
\n"; # Account Executive: print " \ AE: \n \ ",,$query->textfield('contacts',$contacts_def,26),"\n"; print $query->popup_menu( -default=>$contacts_def, -values=>[sort keys (%staff)], -onchange=>'javascript:changename(this)'); print " \ \ \ \ \ AE email: \n \ ",$query->textfield('user_email',$contact_email_def,30),"
\n"; # print "Пароль /минимум 5 знаков/:
\n",$query->password_field('password',$password_def,52,20),"\n"; # print "Повторите пароль:
\n",$query->password_field('repassword',$password_def,52,20),"\n"; print $query->hidden(-name=>'action', -default=>$action_name, -override=>1); print $query->hidden('reference',$reference_def),$query->hidden('reference1',$reference1_def), $query->hidden('komis_ref',$reference2_def); $query->param('Type','Unit'); print $query->hidden('Type'); print $query->hidden('create time',$create_time_def); # print $query->hidden('old_pass',$password_def) if ($reference1_def eq 'Edit'); print "
Click here to Add/Edit list of Consultants \n" if($user > 1); print "
"; print " Confidential Information
"; print "Client ",$query->textfield('client',$client_def,60,60),"
\n"; print "City ",$query->textfield('city',$city_def,15,15),"
\n"; print "Search Code ",$query->textfield('search_code',$search_code_def,15,15),"\n"; print ""; print " "; # foreach $name ($query->param) { # print "$name = ",$query->param($name),"
",$query->submit("",' Submit ')," \n"; print "",$query->reset('Erase')," "; print $query->endform; print $query->startform(-action=>$reference2_def),"\n"; print "",$query->submit("",'Cancel')," \n"; print $query->endform; print "
"; # } # print "action_path =",$action_path; print <