ad_partner_var var { db " " } { force "0" } { cookie " " }What it does:
Caches and returns the value of the specified var for the current partner.Defined in: /web/philip/tcl/ad-partner-defs.tcl
Source code:
if { [empty_string_p $cookie] } { set cookie [ad_partner_from_cookie] } ns_share ad_partner_cache set varname "${cookie}_$var" if { $force || ![info exists ad_partner_cache($varname)] } { # ns_log Notice "GOING TO THE DATBASE FOR $cookie:$var" # var_list is a list of all the variables we want to grab from the database and # cache for the lifetime of the current server process set var_list [ad_partner_list_all_var_names] set sql "select [join $var_list ", "] from ad_partner where partner_cookie='[DoubleApos $cookie]'" if { [empty_string_p $db] } { set db [ns_db gethandle subquery] set sub_selection [ns_db 0or1row $db $sql] if { [empty_string_p $sub_selection] } { ns_db releasehandle $db return "" } set_variables_after_subquery ns_db releasehandle $db } else { set selection [ns_db 0or1row $db $sql] if { [empty_string_p $selection] } { return "" } set_variables_after_query } foreach v $var_list { set ad_partner_cache(${cookie}_$v) "[expr "$$v"]" } # Make sure we got the desired value from the database if { ![info exists ad_partner_cache($varname)] } { ad_return_error "Cannot find $varname" "Missing or mistaken partner variable name" ad_script_abort } } return $ad_partner_cache($varname)