-errorcode {TCL LOOKUP COMMAND ::erice::attempt_db_connect} -code 1 -level 0 -errorstack {INNER {invokeStk1 ::erice::attempt_db_connect} CALL {namespace eval ::rivetweb {
::erice::attempt_db_connect
::rivet::apache_log_error debug "running erice request handler ([pwd])"
# determining if the 'rewrite_par' argument is in the query
# list of arguments and in case set the rewrite_links flag
# and the 'rewrite_code' free form code
set rewrite_par [$::rivetweb::url_composer get_rewrite_par]
set ::rivetweb::rewrite_links [::rivet::var_qs exists $rewrite_par]
if {$::rivetweb::rewrite_links} {
set ::rivetweb::rewrite_code [::rivet::var_qs get $rewrite_par]
} else {
set ::rivetweb::rewrite_code ""
}
# we collect the URL-specified arguments and then we move on determining
# whether this has to be considered the home page of the web site (mostly
# to allow template specific determination)
# The is_homepage determination can be overridden in the site specific
# before script
set argsqs [dict create {*}[::rivet::var_qs all]]
set ::rivetweb::is_homepage [::rivet::lempty [::rivetweb::strip_sticky_args $argsqs]]
# ------ workshop code determination should be taken from ::rivetweb::select_template
# ------ (::rivetweb::select_template) and moved here -------- #
# it's not clear whether determing the template key here
# is useful. It's supposed to be in RWPage but since even
# classes derived from RWWebService may use template_key
# to generate HTML fragments we do determine this
# control variable here
#
set template_key [::rivetweb::select_template]
# we determine the language for this request
# (keep in mind we are running within the ::rivetweb namespace)
if {[::rivet::var exists lang]} {
set language [::rivet::var get lang]
} elseif {[::rivet::var exists language]} {
set language [::rivet::var get language]
} else {
set language $::rivetweb::default_lang
}
# site specific 'before' script (if any) runs here.
# this code is called also from this website's ::rivetweb::select_template
# Replico questa determinazione perché si deve trovare una soluzione
# al problema della determinazione ed pre-elaborazione degli argomenti
# nella URL. E' più corretto che questa determinazione venga fatta qui
#
#::erice set_workshop_code [::rivet::var_qs get conference "ccsem"]
# still have to figure out what to do, but I guess
# the error handler below must be triggered
$::erice::message_printer reset_message_queue
# the DIO object must have special fields for some
# of its columns
set session_table [::SESSION cget -sessionTable]
set dbms [::erice::get_dbhandle]
$dbms registerSpecialField $session_table session_update_time NOW
$dbms registerSpecialField $session_table session_start_time NOW
::SESSION configure -dioObject $dbms
::SESSION activate
set ::rivetweb::is_homepage 0
set ag [::rivetweb::strip_sticky_args $::rivetweb::argsqs]
if {[::rivet::lempty $ag]} {
set ::rivetweb::is_homepage 1
} elseif {[dict size $ag] == 1} {
# this code should be deferred to XMLBase or other
# descendants. TODO
dict with ag {
if {[info exists show] && ($show == "index")} {
set ::rivetweb::is_homepage 1
}
}
}
if {[string is true $::erice::development]} {
set ::erice::cssprogressive [clock seconds]
}
#; --- site specific 'before' script
#
# the central point is exactly here: we determine which page we have to display
#
$::rivetweb::logger log debug "registered handlers: [::rwdatas::UrlHandler::registered_handlers]"
$::rivetweb::logger log debug "argsqs: $argsqs, language: $language"
set ::rivetweb::current_page [::rwdatas::UrlHandler::select_page $argsqs]
$::rivetweb::logger log debug "\[::rwdatas::UrlHandler::select_page $argsqs\] returned $::rivetweb::current_page"
#
# The three stage generation of a page
#
# * page content preparation
# * HTTP header generation and transmission
# * page data transmission
#
set ::rivetweb::page_content $::rivetweb::page_key
set ::rivetweb::current_page [$::rivetweb::current_page prepare_content [::rwdatas::UrlHandler::current_handler] $::rivetweb::language $argsqs]
# sending headers
$::rivetweb::current_page send_headers
# let's proceed with the post processing and data generation
$::rivetweb::current_page send_output $language
}}} -errorinfo invalid\ command\ name\ \"::erice::attempt_db_connect\"\n\ \ \ \ while\ executing\n\"::erice::attempt_db_connect\"\n\ \ \ \ (in\ namespace\ eval\ \"::rivetweb\"\ script\ line\ 2)\n\ \ \ \ invoked\ from\ within\n\"namespace\ eval\ ::rivetweb\ \{\n\ \ \ \ \ \ \ \ \ \ \ \ ::erice::attempt_db_connect\n\ \ \ \ \ \ \ \ \ \ \ \ ::rivet::apache_log_error\ debug\ \"running\ erice\ request\ handler\ (\[pwd\])...\"\n\ \ \ \ (\"::try\"\ body\ line\ 3) -errorline 3
OUTPUT BUFFER:
invalid command name "::erice::attempt_db_connect"