示例#1
0
/**
*	Handle registration of search prefs
*
* Handles registration of default values for most form elements based
* on the prefs array (a combination of defaults, saved user prefs, and
* any posted form values we might have).
*
* The elements that are handled are singleton elements and any
* static option lists in the html.  Lists generated from a DB query are
* handled when the list html is created.
*
* @param vB_Template $template The main search display template
* @param array $prefs The array of prefs to process.
*/
function search_intro_register_prefs($template, $prefs)
{
	// now check appropriate boxes, select menus etc...
	$formdata = array();

	if ($prefs)
	{
		foreach ($prefs AS $varname => $value)
		{
			//skip array types.  Assume they are handled when the picklist is generated.
			if (is_array($value))
			{
				continue;
			}

			$formdata["$varname"] = htmlspecialchars_uni($value);
			$formdata[$varname . 'checked'] = array($value => 'checked="checked"');
			$formdata[$varname . 'selected'] = array($value => 'selected="selected"');
		}

		//we should clean up the template so we don't have to register the individual names
		foreach ($formdata as $varname => $value)
		{
			$template->register($varname, $value);
		}
		$template->register('formdata', $formdata);

	}
}