$search =& cw_session_register('search'); if (isset($_GET['doc_type'])) { $search['placed_docs']['doc_type'] = $doc_type; } if (isset($_GET['fromdate'])) { if (empty($fromdate)) { $search['placed_docs']['basic']['creation_date_start'] = 0; } else { $search['placed_docs']['basic']['creation_date_start'] = cw_core_strtotime($fromdate); } } if (isset($_GET['todate'])) { if (empty($fromdate)) { $search['placed_docs']['basic']['creation_date_end'] = 0; } else { $search['placed_docs']['basic']['creation_date_end'] = cw_core_strtotime($todate) + 86399; } } $search['placed_docs']['basic']['customer_id'] = $user; $_tmp_cond = $search_data['orders']; if ($search['placed_docs']['doc_type']) { $docs_type = $search['placed_docs']['doc_type']; } else { $docs_type = 'O'; } $search_data['orders'][$docs_type] = $search['placed_docs']; $mode = 'search'; include $app_main_dir . '/include/orders/orders.php'; $mode = 'docs'; $search['placed_docs'] = $search_data['orders'][$docs_type]; $search_data['orders'] = $_tmp_cond;
function dod_modify_bonuses($generator_id) { global $tables, $bonus_names; global $dod_bonuses, $dod_bonus; if (empty($generator_id)) { $GLOBALS['_dod_bonuses'] =& $dod_bonuses; cw_session_register('_dod_bonuses'); $GLOBALS['_dod_bonus'] =& $dod_bonus; cw_session_register('_dod_bonus'); return array(true, null); //return array(false, 'generator Id was not provided'); } db_query("DELETE FROM {$tables['dod_bonuses']} WHERE generator_id = '{$generator_id}'"); db_query("DELETE FROM {$tables['dod_bonus_details']} WHERE generator_id = '{$generator_id}'"); $available_fields = array('bonus_id' => 'int', 'generator_id' => 'int', 'type' => 'string', 'apply' => 'int', 'coupon' => 'string', 'discount' => 'float', 'disctype' => 'int'); $excl_from_base_list = array('bonus_id'); foreach ($excl_from_base_list as $field) { if (isset($available_fields[$field])) { unset($available_fields[$field]); } } $optional_fields = array('discount', 'disctype'); $date_fields = array(); $skip_striptags_fields = array(); if (empty($dod_bonuses[DOD_DISCOUNT])) { $dod_bonuses[DOD_DISCOUNT] = 1; $unused_dod_discount_bonus = 1; } else { $unused_dod_discount_bonus = 0; } if (empty($dod_bonuses) || !is_array($dod_bonuses)) { return array(true, null); } $available_btypes = array(DOD_DISCOUNT, DOD_FREE_PRODS, DOD_FREE_SHIP, DOD_COUPON); $bonuses = array(); foreach ($dod_bonuses as $bonus_type => $trash) { if (!isset($dod_bonus[$bonus_type]) || empty($dod_bonus[$bonus_type]) || !in_array($bonus_type, $available_btypes)) { unset($dod_bonuses[$bonus_type]); } else { $bonuses[$bonus_type] = $dod_bonus[$bonus_type]; } } unset($dod_bonus); if (empty($dod_bonuses) || empty($bonuses)) { return array(true, null); } $GLOBALS['_dod_bonuses'] =& $dod_bonuses; cw_session_register('_dod_bonuses'); $errors = array(); $tmp_optional_fields = $optional_fields; foreach ($bonuses as $bonus_type => $input_data) { $optional_fields = $tmp_optional_fields; $additional_lang_data = array(); $pids = $cids = array(); $input_data['generator_id'] = $generator_id; $input_data['type'] = $bonus_type; if ($bonus_type != DOD_COUPON) { $input_data['coupon'] = 1; if ($input_data['apply'] == DOD_APPLY_PRODS || $bonus_type == DOD_FREE_PRODS || $bonus_type == DOD_DISCOUNT) { if (!isset($input_data['products']) && !isset($input_data['cats']) && !isset($input_data['mans']) && !isset($input_data['attr']) || empty($input_data['products']) && empty($input_data['cats']) && empty($input_data['mans']) && empty($input_data['attr'])) { $additional_lang_data = array('bonus' => cw_get_langvar_by_name($bonus_names[$bonus_type])); $errors[] = cw_get_langvar_by_name('msg_dod_bonus_incorrect', $additional_lang_data); continue; } if (isset($input_data['products']) && !empty($input_data['products'])) { $products_data = array(); foreach ($input_data['products'] as $product_data) { $product_data['id'] = trim($product_data['id']); $products_data[$product_data['id']] = $product_data['quantity']; } $pids = array_keys($products_data); $pids = cw_query_column("SELECT product_id as id FROM {$tables['products']} WHERE product_id IN ('" . implode("','", $pids) . "')"); } if (isset($input_data['cats']) && !empty($input_data['cats'])) { $cats_data = array(); foreach ($input_data['cats'] as $cat_data) { $cat_data['id'] = trim($cat_data['id']); $cats_data[$cat_data['id']] = $cat_data['quantity']; } $cids = array_keys($cats_data); $cids = cw_query_column("SELECT category_id as id FROM {$tables['categories']} WHERE category_id IN ('" . implode("','", $cids) . "')"); } if (isset($input_data['mans']) && !empty($input_data['mans'])) { $mids = array_values($input_data['mans']); } if (isset($input_data['attr'])) { // Prepare attributes data if (isset($input_data['attr']) && !empty($input_data['attr'])) { $attr_data = array(); foreach ($input_data['attr'] as $a_data) { $attr_data[trim($a_data['attribute_id'])] = array('quantity' => $a_data['quantity'], 'value' => current($a_data['value']), 'operation' => $a_data['operation']); } $attrids = array_keys($attr_data); $attrids = cw_query_column("SELECT attribute_id as id FROM {$tables['attributes']} WHERE attribute_id IN ('" . implode("','", $attrids) . "')"); } } if (empty($pids) && empty($cids) && empty($mids) && empty($attrids)) { $additional_lang_data = array('bonus' => cw_get_langvar_by_name($bonus_names[$bonus_type])); $errors[] = cw_get_langvar_by_name('msg_dod_bonus_incorrect', $additional_lang_data); continue; } } } if ($bonus_type != DOD_DISCOUNT && $bonus_type != DOD_FREE_SHIP) { $input_data['discount'] = $input_data['disctype'] = null; } elseif ($bonus_type == DOD_FREE_SHIP) { $input_data['disctype'] = null; } else { $optional_fields = array(); } if (in_array($bonus_type, array(DOD_FREE_PRODS, DOD_COUPON))) { $optional_fields[] = 'apply'; } $data = array(); foreach ($date_fields as $field) { if (isset($input_data[$field]) && !empty($input_data[$field])) { $input_data[$field] = cw_core_strtotime($input_data[$field]); } } $error = null; foreach ($available_fields as $field => $field_type) { if (isset($input_data[$field])) { $result = settype($input_data[$field], $field_type); if ($result === false) { $error = 'msg_dod_incorrect_field_type'; $additional_lang_data = array('field_name' => $field); break; } if (empty($input_data[$field]) && !($bonus_type == DOD_DISCOUNT && $unused_dod_discount_bonus)) { if (in_array($field, $optional_fields)) { $data[$field] = null; } else { $additional_lang_data = array('bonus' => cw_get_langvar_by_name($bonus_names[$bonus_type])); $error = 'msg_dod_bonus_incorrect'; break; } } else { if ($field_type == 'string' && !in_array($field, $skip_striptags_fields)) { $input_data[$field] = cw_strip_tags($input_data[$field]); } $data[$field] =& $input_data[$field]; } } else { if ($field_type == 'bool') { $data[$field] = 0; } else { if (in_array($field, $optional_fields)) { $data[$field] = null; } else { $additional_lang_data = array('bonus' => cw_get_langvar_by_name($bonus_names[$bonus_type])); $error = 'msg_dod_bonus_incorrect'; break; } } } } if (!empty($error)) { $errors[] = cw_get_langvar_by_name($error, $additional_lang_data); continue; } if (empty($data)) { continue; } if ($data['type'] == DOD_DISCOUNT) { $data['unused'] = $unused_dod_discount_bonus; } $bonus_id = cw_array2insert($tables['dod_bonuses'], cw_addslashes($data)); if ($bonus_type == DOD_FREE_SHIP) { foreach ($input_data['methods'] as $trash => $shipping_id) { $data = array('generator_id' => $generator_id, 'bonus_id' => $bonus_id, 'object_id' => $shipping_id, 'object_type' => DOD_OBJ_TYPE_SHIPPING); cw_array2insert($tables['dod_bonus_details'], cw_addslashes($data)); } } if ($bonus_type != DOD_COUPON) { if ($input_data['apply'] == DOD_APPLY_PRODS || $bonus_type == DOD_FREE_PRODS || $bonus_type == DOD_DISCOUNT) { if (!empty($pids)) { $data = array(); $data['generator_id'] = $generator_id; $data['bonus_id'] = $bonus_id; foreach ($pids as $pid) { $data['object_id'] = $pid; $data['object_type'] = DOD_OBJ_TYPE_PRODS; $data['quantity'] = $products_data[$pid]; if (empty($data['quantity'])) { $data['quantity'] = 1; } cw_array2insert($tables['dod_bonus_details'], cw_addslashes($data)); } } if (!empty($cids)) { $data = array(); $data['generator_id'] = $generator_id; $data['bonus_id'] = $bonus_id; foreach ($cids as $cid) { $data['object_id'] = $cid; $data['object_type'] = DOD_OBJ_TYPE_CATS; $data['quantity'] = $cats_data[$cid]; if (empty($data['quantity'])) { $data['quantity'] = 1; } cw_array2insert($tables['dod_bonus_details'], cw_addslashes($data)); } } if (!empty($mids)) { $data = array(); $data['generator_id'] = $generator_id; $data['bonus_id'] = $bonus_id; $data['quantity'] = 1; foreach ($mids as $mid) { $data['object_id'] = $mid; $data['object_type'] = DOD_OBJ_TYPE_MANS; cw_array2insert($tables['dod_bonus_details'], cw_addslashes($data)); } } // Save attributes to condition details if (!empty($attrids)) { $data = array(); $data['generator_id'] = $generator_id; $data['bonus_id'] = $bonus_id; $data['quantity'] = 1; foreach ($attrids as $aid) { $data['object_id'] = $aid; $data['object_type'] = DOD_OBJ_TYPE_ATTR; $data['param1'] = $attr_data[$aid]['value']; $data['param2'] = $attr_data[$aid]['operation']; cw_array2insert($tables['dod_bonus_details'], cw_addslashes($data)); } } } } unset($bonuses[$bonus_type]); } if (!empty($bonuses)) { $GLOBALS['_dod_bonus'] =& $bonuses; cw_session_register('_dod_bonus'); } if (!empty($errors)) { $error = implode("<br />\n", $errors); return array(false, $error); } return array(true, null); }
<?php include $app_main_dir . '/include/security.php'; $search =& cw_session_register('search', array()); if (isset($_GET['substring'])) { $search['products_orders']['substring'] = $substring; } if (isset($_GET['fromdate'])) { $search['products_orders']['fromdate'] = cw_core_strtotime($fromdate); } if (isset($_GET['dateto'])) { $search['products_orders']['todate'] = cw_core_strtotime($todate) + 86399; } if (isset($_GET['doc_type'])) { $search['products_orders']['doc_type'] = $doc_type; } if ($mode == 'search_orders') { $conditions = ''; $data = $search['products_orders']; if ($data['substring']) { $conditions .= " and (di.product like '%{$data['substring']}%' or di.productcode like '%{$data['substring']}%')"; } if ($data['fromdate']) { $conditions .= " and date >= '{$data['fromdate']}'"; } if ($data['todate']) { $conditions .= " and date <= '{$data['todate']}'"; } $query = "from {$tables['docs']} as d, {$tables['docs_items']} as di, {$tables['docs_info']} as dim where di.doc_id=d.doc_id and d.type='{$data['doc_type']}' and dim.doc_info_id=d.doc_info_id and di.product_id='{$product_id}' " . $conditions . " group by d.doc_id"; $_res = db_query("select count(*) {$query}"); $total_items = db_num_rows($_res);
$data['filename'] = basename($_FILES['userfile']['name']); $data['descr'] = $descr; if ($data['file_path']) { cw_file_area_save('customers_generated_docs', $user, $data); } cw_header_location("index.php?target={$target}&mode={$mode}&user={$user}"); } $search =& cw_session_register('search'); if (isset($_GET['substring'])) { $search['generated_docs']['substring'] = $substring; } if (isset($_GET['fromdate'])) { $search['generated_docs']['fromdate'] = cw_core_strtotime($fromdate); } if (isset($_GET['dateto'])) { $search['generated_docs']['todate'] = cw_core_strtotime($todate) + 86399; } $conditions = ''; $data = $search['generated_docs']; if ($data['substring']) { $conditions .= " and filename like '%{$data['substring']}%'"; } if ($data['fromdate']) { $conditions .= " and date >= '{$data['fromdate']}'"; } if ($data['todate']) { $conditions .= " and date <= '{$data['todate']}'"; } $smarty->assign('generated_docs', cw_user_get_generated_docs($user, $conditions)); $smarty->assign('main', 'generated_docs'); $smarty->assign('user', $user);
$data['file_path'] = cw_move_uploaded_file('userfile'); $data['filename'] = basename($_FILES['userfile']['name']); if ($data['file_path']) { cw_file_area_save('customers_letters', $user, $data); } cw_header_location("index.php?target={$target}&mode={$mode}&user={$user}"); } $search =& cw_session_register('search'); if (isset($_GET['substring'])) { $search['letters']['substring'] = $substring; } if (isset($_GET['fromdate'])) { $search['letters']['fromdate'] = cw_core_strtotime($fromdate); } if (isset($_GET['dateto'])) { $search['letters']['todate'] = cw_core_strtotime($todate) + 86399; } $conditions = ''; $data = $search['letters']; if ($data['substring']) { $conditions .= " and filename like '%{$data['substring']}%'"; } if ($data['fromdate']) { $conditions .= " and date >= '{$data['fromdate']}'"; } if ($data['todate']) { $conditions .= " and date <= '{$data['todate']}'"; } $smarty->assign('letters', cw_user_get_letters($user, $conditions)); $smarty->assign('main', 'letters'); $smarty->assign('user', $user);
if ($action == 'update_transation') { $record_data['customer_id'] = $user; $rules = array('accounting_category_id' => '', 'date_ref' => '', 'customer_id' => ''); if (!$record_id || !$record['reference']) { $rules['total'] = ''; } $fillerror = cw_error_check($record_data, $rules); if ($fillerror) { $record_saved_data = $record_data; $top_message = array('content' => $fillerror, 'type' => 'E'); cw_header_location("index.php?target={$target}&mode={$mode}&user={$user}&record_id={$record_id}"); } if (!$record_id) { $record_id = cw_array2insert('accounting_records', array('date' => cw_core_get_time())); } $to_update = array('customer_id' => $record_data['customer_id'], 'accounting_category_id' => $record_data['accounting_category_id'], 'descr' => $record_data['descr'], 'date_ref' => cw_core_strtotime($record_data['date_ref']), 'bank_code' => $record_data['bank_code'], 'payment_code' => $record_data['payment_code'], 'status' => $record_data['status']); if (!$record['reference']) { $to_update['total'] = $record_data['total']; } cw_array2update('accounting_records', $to_update, "accounting_record_id='{$record_id}'"); cw_accounting_category_recalc_subcat_count($record_data['accounting_category_id']); if (count($_FILES)) { foreach ($_FILES['enfiles']['name'] as $index => $name) { $data = array(); $data['file_path'] = cw_move_uploaded_file('enfiles', '', $index); $data['filename'] = basename($name); if ($data['file_path']) { cw_file_area_save('accounting_records_files', $record_id, $data); } } }
<?php cw_load('profile_fields'); $fill_error =& cw_session_register('fill_error'); $prefilled_transaction =& cw_session_register('prefilled_transaction'); if ($action == 'update_contacts') { if ($content) { $to_insert = array('customer_id' => $user, 'date' => $date ? cw_core_strtotime($date) : cw_core_get_time(), 'content' => $content); cw_array2insert('customers_contacts', $to_insert); } cw_header_location("index.php?target={$target}&mode={$mode}&user={$user}"); } if ($action == 'delete_contacts' && is_array($del)) { foreach ($del as $contact_id => $val) { db_query("delete from {$tables['customers_contacts']} where contact_id='{$contact_id}' and customer_id='{$user}'"); } cw_header_location("index.php?target={$target}&mode={$mode}&user={$user}"); } $smarty->assign('contact_dates', cw_query("select * from {$tables['customers_contacts']} where customer_id='{$user}' order by date desc limit 10")); $smarty->assign('main', 'contact_dates'); $smarty->assign('user', $user); $smarty->assign('current_section', ''); $smarty->assign('home_style', 'iframe');
function cw_core_process_date_fields(&$posted_data, $date_fields = array(), $multiple_fields = array()) { if (is_array($date_fields)) { foreach ($date_fields as $section => $fields) { foreach ($fields as $field => $type) { if ($section) { $process =& $posted_data[$section][$field]; } else { $process =& $posted_data[$field]; } if ($process) { $process = cw_core_strtotime($process) + $type * 86399; } # day - 1 sec } } } if (is_array($multiple_fields)) { foreach ($multiple_fields as $section => $fields) { if (is_array($fields)) { foreach ($fields as $field) { if ($section) { $process =& $posted_data[$section][$field]; $posted_data[$section][$field . '_orig'] = $posted_data[$section][$field]; $process_orig =& $posted_data[$section][$field . '_orig']; } else { $process =& $posted_data[$field]; $posted_data[$field . '_orig'] = $posted_data[$field]; $process_orig =& $posted_data[$field . '_orig']; } if (is_array($process)) { $ret = array(); foreach ($process as $k => $v) { if (!empty($v)) { $ret[$v] = true; } elseif ($v == '0') { $ret[$v] = true; } else { unset($process_orig[$k]); } } $process = $ret; } } } } } }
<?php $search =& cw_session_register('search', array()); if (isset($_GET['substring'])) { $search['products_clients']['substring'] = $substring; } if (isset($_GET['fromdate'])) { $search['products_clients']['fromdate'] = cw_core_strtotime($fromdate); } if (isset($_GET['dateto'])) { $search['products_clients']['todate'] = cw_core_strtotime($todate) + 86399; } if ($mode == 'search_clients') { $data = $search['products_clients']; $where = array(); $from_tbls = array(); $query_joins = array(); $fields = array("{$tables['docs_user_info']}.customer_id", "{$tables['docs']}.doc_id", 'display_id', '`date`', 'amount', 'price', 'usertype'); if ($data['fromdate']) { $where[] = "`date` >= '{$data['fromdate']}'"; } if ($data['todate']) { $where[] = "`date` <= '{$data['todate']}'"; } $from_tbls[] = 'docs_items'; $query_joins['docs'] = array('parent' => 'docs_items', 'on' => "{$tables['docs']}.type in ('O', 'I', 'S') and {$tables['docs']}.doc_id={$tables['docs_items']}.doc_id"); $query_joins['docs_user_info'] = array('parent' => 'docs', 'on' => "{$tables['docs_user_info']}.doc_info_id = {$tables['docs']}.doc_info_id"); if ($data['substring']) { $add_conditions = array("{$tables['docs_user_info']}.email like '%{$data['substring']}%'"); foreach (array('firstname', 'lastname') as $field) { $add_conditions[] = "{$tables['customers_addresses']}.{$field} like '%{$data['substring']}%'";
$aom_orders[$doc_id]['info']['coupon'] = $aom_orders[$doc_id]['info']['coupon'] = "#" . $aom_orders[$doc_id]['doc_id']; $aom_orders[$doc_id]['info']['use_coupon_alt'] = "Y"; } } else { unset($aom_orders[$doc_id]['info']['use_coupon_discount_alt']); } if (!empty($total_details['coupon_alt'])) { if ($total_details['coupon_alt'] == '__old_coupon__') { $aom_orders[$doc_id]['info']['coupon'] = $aom_orders[$doc_id]['info']['coupon'] = $doc_data['order']['coupon']; cw_unset($aom_orders[$doc_id]['info'], "use_coupon_alt"); } else { $aom_orders[$doc_id]['info']['coupon'] = $aom_orders[$doc_id]['info']['coupon'] = $total_details['coupon_alt']; $aom_orders[$doc_id]['info']['use_coupon_alt'] = "Y"; } } $aom_orders[$doc_id]['info']['expiration_date'] = cw_core_strtotime($total_details['expiration_date']); $aom_orders[$doc_id]['info']['payment_id'] = $total_details['payment_method']; $aom_orders[$doc_id]['info']['payment_label'] = cw_func_call('cw_payment_get_label', array('payment_id' => $total_details['payment_method'])); if (isset($total_details['shipping_id'])) { $aom_orders[$doc_id]['info']['shipping_id'] = $total_details['shipping_id']; } $aom_orders[$doc_id]['info']['shipping_label'] = cw_query_first_cell("SELECT shipping FROM {$tables['shipping']} WHERE shipping_id='" . $total_details['shipping_id'] . "'"); $aom_orders[$doc_id]['info']['salesman_customer_id'] = ""; //$total_details['salesman_customer_id']; $aom_orders[$doc_id]['info']['cod_type_id'] = $total_details['cod_type_id']; $cod_info = cw_query_first("select title, leaving_type from {$tables['shipping_cod_types']} where cod_type_id='" . $total_details['cod_type_id'] . "'"); $aom_orders[$doc_id]['info']['cod_leaving_type'] = $cod_info['leaving_type']; $aom_orders[$doc_id]['info']['cod_type_label'] = $cod_info['title']; $aom_orders[$doc_id]['info']['shipment_paid'] = $total_details['shipment_paid']; $aom_orders[$doc_id]['info']['shipping_cause_id'] = $total_details['shipping_cause_id']; cw_header_location("index.php?target={$target}&doc_id={$doc_id}&mode=edit&js_tab=totals");
function cw_insert_product_to_sections($product_id, $ins_sections) { global $tables; if (is_array($ins_sections)) { foreach ($ins_sections as $section => $val) { db_query("delete from " . $tables[$section] . " where product_id='{$product_id}'" . ($section == 'featured_products' ? " and category_id=0" : "")); if ($val['insert_to_section'] != 'Y') { continue; } unset($val['insert_to_section']); $val['product_id'] = $product_id; $val['from_time'] = cw_core_strtotime($val['from_time']); $val['to_time'] = cw_core_strtotime($val['to_time']); if ($section == 'featured_products') { $val['category_id'] = 0; if (!isset($val['avail']) || $val['avail'] != 1) { $val['avail'] = 0; } } else { $val['active'] = 1; } cw_array2insert($section, $val); } } }
function ps_modify_conditions($offer_id) { global $tables, $cond_names; global $ps_conditions, $ps_conds; if (empty($offer_id)) { $GLOBALS['_ps_conditions'] =& $ps_conditions; cw_session_register('_ps_conditions'); $GLOBALS['_ps_conds'] =& $ps_conds; cw_session_register('_ps_conds'); return array(true, null); //return array(false, 'Offer Id was not provided'); } db_query("DELETE FROM {$tables['ps_conditions']} WHERE offer_id = '{$offer_id}'"); db_query("DELETE FROM {$tables['ps_cond_details']} WHERE offer_id = '{$offer_id}'"); $available_fields = array('cond_id' => 'int', 'offer_id' => 'int', 'type' => 'string', 'coupon' => 'string'); $excl_from_base_list = array('cond_id'); foreach ($excl_from_base_list as $field) { if (isset($available_fields[$field])) { unset($available_fields[$field]); } } $optional_fields = array('coupon'); $date_fields = array(); $skip_striptags_fields = array(); if (empty($ps_conditions) || !is_array($ps_conditions)) { return array(true, null); } $available_ctypes = array(PS_TOTAL, PS_SHIP_ADDRESS, PS_SPEC_PRODUCTS, PS_WEIGHT, PS_MEMBERSHIP, PS_USE_COUPON); $conditions = array(); foreach ($ps_conditions as $cond_type => $trash) { if (!isset($ps_conds[$cond_type]) || empty($ps_conds[$cond_type]) || !in_array($cond_type, $available_ctypes)) { unset($ps_conditions[$cond_type]); } else { $conditions[$cond_type] = $ps_conds[$cond_type]; } } unset($ps_conds); if (empty($ps_conditions) || empty($conditions)) { return array(true, null); } $GLOBALS['_ps_conditions'] =& $ps_conditions; cw_session_register('_ps_conditions'); $errors = array(); $tmp_optional_fields = $optional_fields; foreach ($conditions as $cond_type => $input_data) { $optional_fields = $tmp_optional_fields; $additional_lang_data = array(); $pids = $cids = $mids = array(); $input_data['offer_id'] = $offer_id; $input_data['type'] = $cond_type; if ($cond_type == PS_SPEC_PRODUCTS) { if (!isset($input_data['products']) && !isset($input_data['cats']) && !isset($input_data['mans']) && !isset($input_data['attr']) || empty($input_data['products']) && empty($input_data['cats']) && empty($input_data['mans']) && empty($input_data['attr'])) { $additional_lang_data = array('cond' => cw_get_langvar_by_name($cond_names[$cond_type])); $errors[] = cw_get_langvar_by_name('msg_ps_cond_incorrect', $additional_lang_data); continue; } // Prepare products data if (isset($input_data['products']) && !empty($input_data['products'])) { $products_data = array(); foreach ($input_data['products'] as $product_data) { $product_data['id'] = trim($product_data['id']); $products_data[$product_data['id']] = $product_data['quantity']; } $pids = array_keys($products_data); $pids = cw_query_column("SELECT product_id as id FROM {$tables['products']} WHERE product_id IN ('" . implode("','", $pids) . "')"); } // Prepare categories data if (isset($input_data['cats']) && !empty($input_data['cats'])) { $cats_data = array(); foreach ($input_data['cats'] as $cat_data) { $cat_data['id'] = trim($cat_data['id']); $cats_data[$cat_data['id']] = $cat_data['quantity']; } $cids = array_keys($cats_data); $cids = cw_query_column("SELECT category_id as id FROM {$tables['categories']} WHERE category_id IN ('" . implode("','", $cids) . "')"); } // Prepare attributes data if (isset($input_data['attr']) && !empty($input_data['attr'])) { $attr_data = array(); foreach ($input_data['attr'] as $a_data) { $attr_data[trim($a_data['attribute_id'])] = array('quantity' => $a_data['quantity'], 'value' => current($a_data['value']), 'operation' => $a_data['operation']); } $attrids = array_keys($attr_data); $attrids = cw_query_column("SELECT attribute_id as id FROM {$tables['attributes']} WHERE attribute_id IN ('" . implode("','", $attrids) . "')"); } // Prepare manufacturers data if (isset($input_data['mans']) && !empty($input_data['mans'])) { $mans_data = array(); foreach ($input_data['mans'] as $man_data) { $man_data['id'] = trim($man_data['id']); $mans_data[$man_data['id']] = $man_data['quantity']; } $mids = array_keys($mans_data); $mids = cw_query_column("SELECT manufacturer_id as id FROM {$tables['manufacturers']} WHERE manufacturer_id IN ('" . implode("','", $mids) . "')"); } if (empty($pids) && empty($cids) && empty($mids) && empty($attrids)) { $additional_lang_data = array('cond' => cw_get_langvar_by_name($cond_names[$cond_type])); $errors[] = cw_get_langvar_by_name('msg_ps_cond_incorrect', $additional_lang_data); continue; } } elseif ($cond_type == PS_SHIP_ADDRESS) { if (!isset($input_data['zones']) || empty($input_data['zones'])) { $additional_lang_data = array('cond' => cw_get_langvar_by_name($cond_names[$cond_type])); $errors[] = cw_get_langvar_by_name('msg_ps_cond_incorrect', $additional_lang_data); } $zone_ids = array_map(create_function('$id', 'return trim($id);'), $input_data['zones']); $zone_ids = cw_query_column("SELECT zone_id as id FROM {$tables['zones']} WHERE zone_id IN ('" . implode("','", $zone_ids) . "')"); if (empty($zone_ids) || !is_array($zone_ids)) { $additional_lang_data = array('cond' => cw_get_langvar_by_name($cond_names[$cond_type])); $errors[] = cw_get_langvar_by_name('msg_ps_cond_incorrect', $additional_lang_data); } } elseif ($cond_type == PS_TOTAL || $cond_type == PS_WEIGHT) { if (!isset($input_data['from']) || intval($input_data['from']) < 0 || !isset($input_data['till']) || intval($input_data['till']) < 0 || intval($input_data['till']) < intval($input_data['from']) && intval($input_data['till']) != 0 && intval($input_data['from']) != 0) { $additional_lang_data = array('cond' => cw_get_langvar_by_name($cond_names[$cond_type])); $errors[] = cw_get_langvar_by_name('msg_ps_cond_incorrect', $additional_lang_data); } } $data = array(); foreach ($date_fields as $field) { if (isset($input_data[$field]) && !empty($input_data[$field])) { $input_data[$field] = cw_core_strtotime($input_data[$field]); } } $error = null; foreach ($available_fields as $field => $field_type) { if (isset($input_data[$field])) { $result = settype($input_data[$field], $field_type); if ($result === false) { $error = 'msg_ps_incorrect_field_type'; $additional_lang_data = array('field_name' => $field); break; } if (empty($input_data[$field])) { if (in_array($field, $optional_fields)) { $data[$field] = null; } else { $additional_lang_data = array('cond' => cw_get_langvar_by_name($cond_names[$cond_type])); $error = 'msg_ps_cond_incorrect'; break; } } else { if ($field_type == 'string' && !in_array($field, $skip_striptags_fields)) { $input_data[$field] = cw_strip_tags($input_data[$field]); } $data[$field] =& $input_data[$field]; } } else { if ($field_type == 'bool') { $data[$field] = 0; } else { if (in_array($field, $optional_fields)) { $data[$field] = null; } else { $additional_lang_data = array('cond' => cw_get_langvar_by_name($cond_names[$cond_type])); $error = 'msg_ps_cond_incorrect'; break; } } } } if (!empty($error)) { $errors[] = cw_get_langvar_by_name($error, $additional_lang_data); continue; } if (empty($data)) { continue; } if ($cond_type == PS_WEIGHT || $cond_type == PS_TOTAL) { $data['total'] = intval($input_data['from']); $cond_id = cw_array2insert($tables['ps_conditions'], cw_addslashes($data)); $data['total'] = intval($input_data['till']); $cond_id2 = cw_array2insert($tables['ps_conditions'], cw_addslashes($data)); } else { $cond_id = cw_array2insert($tables['ps_conditions'], cw_addslashes($data)); } if ($cond_type == PS_SPEC_PRODUCTS) { // Save products to condition details if (!empty($pids)) { $data = array(); $data['offer_id'] = $offer_id; $data['cond_id'] = $cond_id; foreach ($pids as $pid) { $data['object_id'] = $pid; $data['object_type'] = PS_OBJ_TYPE_PRODS; $data['quantity'] = $products_data[$pid]; if (empty($data['quantity'])) { $data['quantity'] = 1; } cw_array2insert($tables['ps_cond_details'], cw_addslashes($data)); } } // Save categories to condition details if (!empty($cids)) { $data = array(); $data['offer_id'] = $offer_id; $data['cond_id'] = $cond_id; foreach ($cids as $cid) { $data['object_id'] = $cid; $data['object_type'] = PS_OBJ_TYPE_CATS; $data['quantity'] = $cats_data[$cid]; if (empty($data['quantity'])) { $data['quantity'] = 1; } cw_array2insert($tables['ps_cond_details'], cw_addslashes($data)); } } // Save attributes to condition details if (!empty($attrids)) { $data = array(); $data['offer_id'] = $offer_id; $data['cond_id'] = $cond_id; foreach ($attrids as $aid) { $data['object_id'] = $aid; $data['object_type'] = PS_OBJ_TYPE_ATTR; $data['quantity'] = $attr_data[$aid]['quantity']; $data['param1'] = $attr_data[$aid]['value']; $data['param2'] = $attr_data[$aid]['operation']; if (empty($data['quantity'])) { $data['quantity'] = 1; } cw_array2insert($tables['ps_cond_details'], cw_addslashes($data)); } } // Save manufacturers to condition details if (!empty($mids)) { $data = array(); $data['offer_id'] = $offer_id; $data['cond_id'] = $cond_id; foreach ($mids as $mid) { $data['object_id'] = $mid; $data['object_type'] = PS_OBJ_TYPE_MANS; $data['quantity'] = $mans_data[$mid]; if (empty($data['quantity'])) { $data['quantity'] = 1; } cw_array2insert($tables['ps_cond_details'], cw_addslashes($data)); } } } elseif ($cond_type == PS_SHIP_ADDRESS) { if (!empty($zone_ids)) { $data = array(); $data['offer_id'] = $offer_id; $data['cond_id'] = $cond_id; foreach ($zone_ids as $zone_id) { $data['object_id'] = $zone_id; $data['object_type'] = PS_OBJ_TYPE_ZONES; $data['quantity'] = null; cw_array2insert($tables['ps_cond_details'], cw_addslashes($data)); } } } elseif ($cond_type == PS_TOTAL || $cond_type == PS_WEIGHT) { $data = array(); $data['offer_id'] = $offer_id; $data['cond_id'] = $cond_id; $data['object_id'] = 0; $data['object_type'] = PS_OBJ_TYPE_FROM; $data['quantity'] = 0; cw_array2insert($tables['ps_cond_details'], cw_addslashes($data)); if (isset($cond_id2)) { $data['cond_id'] = $cond_id2; $data['object_type'] = PS_OBJ_TYPE_TILL; cw_array2insert($tables['ps_cond_details'], cw_addslashes($data)); } } elseif ($cond_type == PS_MEMBERSHIP) { $data = array(); $data['offer_id'] = $offer_id; $data['cond_id'] = $cond_id; $data['object_id'] = $input_data['membership']; $data['object_type'] = PS_OBJ_TYPE_MEMBERSHIP; $data['quantity'] = 0; cw_array2insert($tables['ps_cond_details'], cw_addslashes($data)); } unset($conditions[$cond_type]); } if (!empty($conditions)) { $GLOBALS['_ps_conds'] =& $conditions; cw_session_register('_ps_conds'); } if (!empty($errors)) { $error = implode("<br />\n", $errors); return array(false, $error); } return array(true, null); }
} if ($mode == 'manager_iframe') { cw_load('doc'); $where = array(); $from_tbls = array('docs'); $orderbys = array('date'); $fields = array('doc_id'); if (!$shippment_search || $shippment_search == 1) { list($from_time, $to_time) = cw_core_get_time_frame("-1 day"); } elseif ($shippment_search == 2) { list($from_time, $to_time) = cw_core_get_time_frame("-2 days", "-1 day"); } elseif ($shippment_search == 3) { list($from_time, $to_time) = cw_core_get_time_frame("-1 month"); } elseif ($shippment_search == 4) { $from_time = cw_core_strtotime($from_date); $to_time = cw_core_strtotime($to_date); } $where[] = "type='S'"; if ($from_time) { $where[] = "date >= '{$from_time}'"; } if ($to_time) { $where[] = "date <= '{$to_time}'"; } $count_query = cw_db_generate_query(array('count(*)'), $from_tbls, '', $where, '', '', $orderbys); $total_items = cw_query_first_cell($count_query); $navigation = cw_core_get_navigation($target, $total_items, $page); $navigation['script'] = "indes.php?target={$target}&mode={$mode}"; $smarty->assign('navigation', $navigation); if ($total_items > 0) { $ship_docs = cw_query(cw_db_generate_query($fields, $from_tbls, '', $where, '', '', $orderbys) . " LIMIT {$navigation['first_page']}, {$navigation['objects_per_page']}");
<?php $search =& cw_session_register('search', array()); if (isset($_GET['substring'])) { $search['purchased_products']['substring'] = $substring; } if (isset($_GET['fromdate'])) { $search['purchased_products']['fromdate'] = cw_core_strtotime($fromdate); } if (isset($_GET['todate'])) { $search['purchased_products']['todate'] = cw_core_strtotime($todate); } $conditions = ''; $data = $search['purchased_products']; if ($data['substring']) { $conditions .= " and (di.product like '%{$data['substring']}%' or di.productcode like '%{$data['substring']}%')"; } if ($data['fromdate']) { $conditions .= " and date >= '{$data['fromdate']}'"; } if ($data['todate']) { $conditions .= " and date <= '" . (intval($data['todate']) + 86399) . "'"; } $query = "from {$tables['docs']} as d, {$tables['docs_items']} as di, {$tables['docs_user_info']} as dui where di.doc_id=d.doc_id and d.type in ('O', 'G', 'I', 'S') and dui.doc_info_id=d.doc_info_id and dui.customer_id='{$user}' " . $conditions; $total_items = cw_query_first_cell("select count(*) {$query}"); $navigation = cw_core_get_navigation($target, $total_items, $page); $navigation['script'] = "index.php?target={$target}&mode={$mode}&user={$user}"; $smarty->assign('navigation', $navigation); if ($total_items) { $products = cw_query($sql = "select di.*, d.date, d.doc_id, d.display_id {$query} limit {$navigation['first_page']}, {$navigation['objects_per_page']}"); $smarty->assign('products', $products);