/home/groups/y/ya/yaacs/svnrepo/yaacs/op.tcl
| Procedure Summary |
::op::addIntType { db newType }Create a new operator |
::op::briefHandler { db_handler uid proj }briefHandler: retrive briefing time and if, for the specific op, this can be paid or not based on payments informations prepared and stored at proj |
::op::check_block { db proj uid start end }## check_block check for broken pause during |
::op::checkLogin { db login }Check if a login could be assigned without breaking the unique constraint on |
::op::cmdAddUser { user pwd }::op::cmdAddUser - produce a shell command to be execute on a remote machine |
::op::cmdDelUser { user }::op::cmdDelUser - produce a shell command to be execute on a remote machine |
::op::cmdNisUp { }::op::cmdNisUp - produce a shell command to be execute on a remote machine (nis |
::op::cmdResetPwd { user } |
::op::cross_project { db proj uid s_start s_end where }## cross_project check for cross project work did by |
::op::cryptPwd { pwd }crypt(3) a clear text password actually crypt(3) man page say that it use DES algorithm, but seems tha it's quite different from the one used by tcllib des |
::op::delIntType { db id } |
::op::delOp { db cod }remove an operator from the |
::op::enqueueSms { db login cell text }Put an 'single' sms to its |
::op::genPwd { plen }generate a random |
::op::getFilteredInfos { db field filter }get all op's 'field' stored on db filtered as you |
::op::getInfos { db field {distinct 0} }get all op's 'field' stored on |
::op::getIntTypes { db }Get operators' available |
::op::getOp { db cod }get operator |
::op::getOpAdvice { db uid }get supervisor advice to the |
::op::getOpBank { db cod }get operator bank account |
::op::getOpById { db id }get operator data using user's |
::op::getOpByLogin { db login }get operator data using user's |
::op::getOpDisp { db cod }get operator availability |
::op::getPicture { db uid picname }get a user's picture to let a supervisor really knows who he/she |
::op::getPjDates { db proj }# getPjDates provide start and end date of a |
::op::getRecruitment { db id }Get a recruitment's |
::op::getSmsTxt { db proj } |
::op::getUsyncNum { db }::op::getUsyncNum - tells you how many users you have to create/delete @parma db - database connection |
::op::hours_conv { db interval form }HOURS_CONV: to convert pgsql datatype 'interval' @parama db db connection; @interval string containing values in 'interval' format |
::op::hours_counter { db_handler myData uid proj } |
::op::linkablePjs { db }Get all linkable |
::op::linkPjs { db user pjs }Set a user's projects on the |
::op::massiveRecruitSms { db id txt }send massive sms for recruitment |
::op::onPayments { db uid lProj ckTech }when an op is paid all record regarding the payments is marked as paid (so 'deactivated' from payable |
::op::proj_calc { db_handler proj }proj_calc return the omnicomprehensive list of lists ::op::op_sum described |
::op::recalc_brief { uid db_handler ckTech brfList briefNum totHoursDec }procedure recalc_brief refresh total minutes counted for breifing and training; and total money |
::op::recalc_proj { op_sum trnArray projMoney briefTime db_handler }## |
::op::recruit { db id type morning afternoon evening smsTxt brief action }wrapper around op::recruit real just to guarantee transaction |
::op::recruitReal { db id type morning afternoon evening smsTxt brief action }Get all operators suitable for the criteria supplied. |
::op::resetPwd { login pwd rhost userto } |
::op::RetriveProjs { db_handler uid all }Get projects where uid had worked |
::op::saveOpData { db name surname address city cap phone1 phone2 cell email { bplace} bdate active notes points alt_addr alt_city alt_cap sex type code salary { bank} bank_addr bank_city bank_abi bank_cab bank_cc bank_owner morning afternoon { evening} availablefrom { login} context {mode 0} }Save operator data on |
::op::setPicture { db uid picpath }set a user's picture to let a supervisor really knows who he/she |
::op::sshRemoteBatch { host login passwd cmd }::op::sshRemoteBatch - execute a cmd on a remote |
::op::sshRemoteResPwd { host login passwd cmd pwdto } |
::op::storePayments { db proj op_sum trnArray }## store op's billing data in paymentslog |
::op::syncUser { db login passwd host }::op::syncUser - create / remove users on a remote |
::op::uid_calc { db_handler uid lProj } |
::op::updateIntType { db id type } |
::op::updateOpNote { db op note {score {}} }update note field for a |
::op::userPjs { db user }Get all user's |
| Procedure Detail |
proc ::op::addIntType { db newType }
db - (op) database connection handler
proc ::op::briefHandler { db_handler uid proj }
db_handler - : db connection
uid - : op's ID
proj - : project's ID
proc ::op::check_block { db proj uid start end }
db - db connection;
proj - project ID;
uid - op's ID;
start - session start;
end - session end;
proc ::op::checkLogin { db login }
db - (op) database connection handler
login - the user name you wanna check
proc ::op::cmdAddUser { user pwd }
user - - the user's login to create
proc ::op::cmdDelUser { user }
user - - the user's login to delete
proc ::op::cmdNisUp { }
proc ::op::cmdResetPwd { user }
proc ::op::cross_project { db proj uid s_start s_end where }
db - db connection;
proj - project ID;
uid - op's ID;
start - period analyzed start;
end - period analyzed end;
proc ::op::cryptPwd { pwd }
pwd - - a clear text string
proc ::op::delIntType { db id }
proc ::op::delOp { db cod }
db - (op) database connection handler
cod - operator's code
proc ::op::enqueueSms { db login cell text }
db - (op) database connection handler
login - receiver's login
cell - receiver's cell phone
text - message's text
proc ::op::genPwd { plen }
plen - - password length
@result - a plen chars long password
proc ::op::getFilteredInfos { db field filter }
db - (op) database connection handler
field - db column name you want to retrive
filter - sql filter to use
proc ::op::getInfos { db field {distinct 0} }
db - (op) database connection handler
field - db column name you want to retrive
distinct - flag to set if you want to have distinct values
proc ::op::getIntTypes { db }
db - (op) database connection handler
proc ::op::getOp { db cod }
db - (op) database connection handler
cod - operator's cod. fisc. (it's a key)
proc ::op::getOpAdvice { db uid }
db - - db conn handler
uid - - user (operator) id
proc ::op::getOpBank { db cod }
db - (op) database connection handler
cod - operator's cod. fisc. (it's a key)
proc ::op::getOpById { db id }
db - (op) database connection handler
id - operator's id
proc ::op::getOpByLogin { db login }
db - (op) database connection handler
login - operator's login
proc ::op::getOpDisp { db cod }
db - (op) database connection handler
cod - operator's cod. fisc. (it's a key)
proc ::op::getPicture { db uid picname }
db - database connection handler
uid - user's uid
picname - the name you want to use
to refer to the image to be created.
proc ::op::getPjDates { db proj }
db - db connection;
proj - project's ID
proc ::op::getRecruitment { db id }
db - database connection handler
id - project's id
proc ::op::getSmsTxt { db proj }
proc ::op::getUsyncNum { db }
proc ::op::hours_conv { db interval form }
proc ::op::hours_counter { db_handler myData uid proj }
db_handler - database connection
myData - date string in 'yyyy-mm-dd' format
uid - operator's id
proj - project id selected
proc ::op::linkablePjs { db }
db - (op) database connection handler
proc ::op::linkPjs { db user pjs }
db - (op) database connection handler
user - user's user
pjs - list of projects to link to the user
proc ::op::massiveRecruitSms { db id txt }
db - database connection handler
id - project's id
txt - sms's text
proc ::op::onPayments { db uid lProj ckTech }
db - db connection
uid - op's ID
lProj - a list containing paid projs ID
ckTech - techincal training flag
proc ::op::proj_calc { db_handler proj }
db_handler - a db connection;
proj - project's ID;
proc ::op::recalc_brief { uid db_handler ckTech brfList briefNum totHoursDec }
uid - op's ID
ckTeck - technical training flag
brfList - briefing flag list
briefNum - number of briefing records
totHoursDec - worked hours in decimal format
proc ::op::recalc_proj { op_sum trnArray projMoney briefTime db_handler }
recalc - briefing time based on ops that have attend it
op_sum - the list returned by ::op::proj_calc
trnArray - the turnsArray array, in list format
projMoney - proj's cost, briefing excluded
briefTime - in decima
proc ::op::recruit { db id type morning afternoon evening smsTxt brief action }
proc ::op::recruitReal { db id type morning afternoon evening smsTxt brief action }
db - - db connection handler
id - project's id
type - operator's type needed
morning - is availability for morning requird?
afternoon - is availability for afternoon required?
evening - is availability for evening required?
smsTxt - sms's text
brief - briefing duration (it's a float number)
action - what do you want to do? (""|create|update)
proc ::op::resetPwd { login pwd rhost userto }
proc ::op::RetriveProjs { db_handler uid all }
db_handler - a db connection
uid - Op's ID
proc ::op::saveOpData { db name surname address city cap phone1 phone2 cell email { bplace} bdate active notes points alt_addr alt_city alt_cap sex type code salary { bank} bank_addr bank_city bank_abi bank_cab bank_cc bank_owner morning afternoon { evening} availablefrom { login} context {mode 0} }
db - (op) database conncetion handler
name - operator's name
surname - operator's surname
address - operator's address
city - operator's city
cap - operator's postal code (zip)
phone1 - operator's phone1
phone2 - operator's phone2
cell - operator's mobile phone
email - operator's email
bplace - operator's birth-place
bdate - operator's bithday
active - active flag
notes - some notes
points - operator's points
alt_addr - alternative address
alt_city - alternative city
alt_cap - alternative postal code (zip)
sex - sex
type - operator's type
code - operator's code (codice fiscale)
salary - hour salary
bank - bank's name
bank_addr -
bank_city -
bank_abi -
bank_cab -
bank_cc -
bank_owner -
morning -
afternoon -
evening -
availablefrom -
login - operator's login
context - operator's voip context
mode - [optional] are you going to insert (1) or update (0) the contact?
default mode is update
proc ::op::setPicture { db uid picpath }
db - database connection handler
uid - user's uid
picpath - picture's file path
proc ::op::sshRemoteBatch { host login passwd cmd }
host - - remote hosts ip address/name
login - - admin account login on the remote server
passwd - - admin account password on the remote server
cmd - - the command to execute on the remote host
proc ::op::sshRemoteResPwd { host login passwd cmd pwdto }
proc ::op::storePayments { db proj op_sum trnArray }
db - database connection handler
proj - project's ID
op_sum - operators hours work data
trnArray - the array displayed in
hours report in listed forms
proc ::op::syncUser { db login passwd host }
db - - database connection hanlder
login - - admin account login on the remote server
passwd - - admin account password on the remote server
host - - the remote server
proc ::op::uid_calc { db_handler uid lProj }
db_handler - a db connection;
uid - op's ID;
lProj - the list of projects to examine;
proc ::op::updateIntType { db id type }
proc ::op::updateOpNote { db op note {score {}} }
db - database connection handler
op - user's id
note - new op's note
proc ::op::userPjs { db user }
db - database connection handler
user - user's id