s2doclients.php /// Art: Online Auftragsverwaltung /// Inhalt: Kunden /// Beschreibung: Alle Funktionen zu Kunden /// Benötigt: Alle, siehe init /// CCML-Parsing: notwendig /// ////////////////////////////////////////////////////////////////////////////////////////// /// /// Letzte Änderungen: /// 07.12.2008 Suchfunktion umgestellt /// 31.07.2010 Anpassung Parameter Suche /// ////////////////////////////////////////////////////////////////////////////////////////// ///<31.07.2010/7.0.1.4/> define('ROOT', './'); define('ASSETS', ROOT.'assets/'); require(ASSETS.'s2diconf.php'); require(CC_INCLUDE_INIT); if (!$session->is_shopadmin()) { $session->unset_client(); redirect(CC_URL_LOGIN, CC_URL_OSCLIENTS.'?'.$_SERVER['QUERY_STRING']); } require(CC_BLOGIC_CONFIG); require(CC_INCLUDE_OSFUNCTIONS); $config = new config('clients'); $config_search = new config('search'); //////////////////////////////////////////////////////////////////////////// // Template vorbereiten $template = new template(CC_TPL_OSCLIENTS, true); $template->ressources(CC_INCLUDE_OSLANG); $template->show('clients'); $template->show('searchmenu'); $template->show('viewmenu'); $template->show('pagination'); myorder($config, array('firstname', 'lastname', 'email', 'client_id')); mydirection($config); // Alles zeigen if (is_get(PARAMETER_VIEW)) { $view = get(PARAMETER_VIEW, CHECK_ALPHA); if (in_array($view, array('all', 'some'))) $config->set('view', $view); } if ($config->view == 'all') $template->show('showall'); myperpage($config, $template); mypage($config); $client = new client(); $count = $client->db_numrows(array('order_id' => 0)); $max_page = max(1, ceil($count / $config->perpage)); // Suche $mode = get(PARAMETER_MODE, CHECK_ALPHA_); $search = rawurldecode(get(PARAMETER_TEXT, CHECK_ALL)); if ($mode && $search) { switch($mode) { case 'name': $where = array("(firstname LIKE '%$search%' OR lastname LIKE '%$search%')"); break; case 'email': $where = array('email' => $seach); break; case 'id': $where = array('client_id' => $search); break; } $searching = true; $config->set('searchmode', $mode); $config->set('searchexpr', $search); $max_page = max(1, ceil($client->db_numrows(array_merge($where, array('order_id' => 0, 'client_id > 0'))) / $config->perpage)); } else { $where = array(); $searching = false; } pagination($config, $template, $max_page); // Kunden einlesen while($c = $client->get(array('*'), $where, array($config->order.' '.$config->direction), $config->page, $config->perpage)) $template->loop('client', array( 'news' => $c->newsletter ? '*' : '', 'first' => $config->order == 'lastname' ? $c->lastname.',' : $c->firstname, 'last' => $config->order == 'lastname' ? $c->firstname : $c->lastname, 'cleancountry' => substr($c->country, 11), ), $c); // Anreden foreach (get_salutations() as $s) $template->loop('salutation', array( 'value' => $s, 'option' => $s, )); // Länder foreach (get_countries() as $c) $template->loop('country', array( 'value' => $c, 'option' => substr($c, 11), )); // Vorlagen $mailtemplate = new abstractdb(TABLE_TEMPLATES); while($t = $mailtemplate->get(array('*'), array('status' => null), array('name asc'))) $template->loop('template', array(), $t); // Template befüllen und fertig if (get(PARAMETER_MODE, CHECK_ALPHA) == 'new') $template->show('new'); if ($searching) $template->show('searching'); $template->assign(array( '_headline1' => $template->vars['clients'], '_clients_selected' => 'selected', '_selected_entry' => $config->selected, '_client_x' => $config->x, '_client_y' => $config->y, '_search_x' => $config_search->x, '_search_y' => $config_search->y, '_max_page' => $max_page, '_firstname' => $config->order == 'lastname' ? CC_RESSOURCE_LASTNAME.',' : CC_RESSOURCE_FIRSTNAME, '_lastname' => $config->order == 'lastname' ? CC_RESSOURCE_FIRSTNAME : CC_RESSOURCE_LASTNAME, '_search_param' => $mode ? PARAMETER_MODE."=$mode&".PARAMETER_TEXT."=$search&" : '', '_search_mode' =>$mode ? $mode : '', '_search_expr' => $search ? $search : '', '_search_expr_value' => $config->searchexpr, '_search_id_checked' => $config->searchmode == 'id' ? 'checked="checked"' : '', '_search_name_checked' => $config->searchmode == 'name' ? 'checked="checked"' : '', '_search_email_checked' => $config->searchmode == 'email' ? 'checked="checked"' : '', '_email_selected' => $config->order == 'email' ? 'selected="selected"' : '', '_cid_selected' => $config->order == 'client_id' ? 'selected="selected"' : '', '_firstname_selected' => $config->order == 'firstname' ? 'selected="selected"' : '', '_lastname_selected' => $config->order == 'lastname' ? 'selected="selected"' : '', '_desc_checked' => $config->direction == 'desc' ? 'checked="checked"' : '', '_showall_checked' => $config->view == 'all' ? 'checked="checked"' : '', )); $template->out(); ?>