function cw_error_check(&$array_to_check, $rules, $attributes_type = '') { $error = array(); $index = 1; foreach ($rules as $k => $v) { $func = is_array($v) && isset($v['func']) ? $v['func'] : $v; if ($func && function_exists($func)) { $is_error = $func($array_to_check[$k], $k, $array_to_check); } else { $is_error = empty($array_to_check[$k]) || !$array_to_check[$k]; } if ($is_error) { $var = 'err_field_' . ($v['lng'] ? $v['lng'] : $k); $lng = cw_get_langvar_by_name($var, '', false, true); $error[] = $index++ . '. ' . ($lng ? $lng : $var); } } if ($attributes_type) { $error = array_merge($error, cw_call('cw_attributes_check', array($array_to_check['attribute_class_id'], &$array_to_check['attributes'], $attributes_type, $index))); } if (!count($error)) { return false; } return implode("<br/>\n", $error); }
function cw_ac_tabs_js_abstract($params, $return) { if ($return['name'] == 'product_data') { if (!isset($return['js_tabs']['accessories'])) { $return['js_tabs']['accessories'] = array('title' => cw_get_langvar_by_name('lbl_ac_accessories'), 'template' => 'addons/accessories/product_modify_accessories.tpl'); } if (!isset($return['js_tabs']['upselling'])) { $return['js_tabs']['upselling'] = array('title' => cw_get_langvar_by_name('lbl_upselling_links'), 'template' => 'addons/accessories/product_modify_upselling.tpl'); } } if ($return['name'] == 'product_data_customer') { global $product_accessories, $recommended_products; if (!isset($return['js_tabs']['accessories']) && !empty($product_accessories)) { $return['js_tabs']['accessories'] = array('title' => cw_get_langvar_by_name('lbl_ac_accessories'), 'template' => 'addons/accessories/product_accessories_list.tpl'); } /* if (!isset($return['js_tabs']['accessories_rec']) && !empty($recommended_products)) { $return['js_tabs']['accessories_rec'] = array( 'title' => cw_get_langvar_by_name('lbl_ac_recommended_products'), 'template' => 'addons/accessories/product_recommended_list.tpl', ); } */ } return $return; }
function cw_in_images_get_image_info($image_id, $title) { global $tables; $tmp = cw_query_first("select * from {$tables['webmaster_images']} where id='{$image_id}'"); $tmp = cw_image_info('webmaster_images', $tmp); $tmp['id'] = $image_id; $tmp['title'] = cw_get_langvar_by_name('image_' . $title); return $tmp; }
function cw_config_process_options($options) { global $tables; if ($options) { foreach ($options as $k => $v) { switch ($v['name']) { case 'cmpi_currency': $currs = cw_query_hash("SELECT code, name FROM {$tables['currencies']}", "code", false, true); if (empty($currs)) { unset($options[$k]); continue; } $v['variants'] = ""; foreach ($currs as $ek => $ev) { $v['variants'] .= $ek . ":({$ek}) " . $ev . "\n"; } break; } if (in_array($v['type'], array("selector", "multiselector"))) { if (empty($v['variants'])) { unset($options[$k]); continue; } $vars = cw_parse_str(trim($v['variants']), "\n", ":"); $vars = cw_array_map("trim", $vars); if ($v['type'] == "multiselector") { $v['value'] = explode(";", $v['value']); foreach ($v['value'] as $vk => $vv) { if (!isset($vars[$vv])) { unset($v['value'][$vk]); } } $options[$k]['value'] = $v['value'] = array_values($v['value']); } $options[$k]['variants'] = array(); foreach ($vars as $vk => $vv) { $options[$k]['variants'][$vk] = array("name" => $vv); if (strpos($vv, " ") === false) { $name = cw_get_langvar_by_name($vv, NULL, false, true); if (!empty($name)) { $options[$k]['variants'][$vk] = array("name" => $name); } } if ($v['type'] == "selector") { $options[$k]['variants'][$vk]['selected'] = $v['value'] == $vk; } else { $options[$k]['variants'][$vk]['selected'] = in_array($vk, $v['value']); } } } if (in_array($v['type'], array('shipping', 'memberships', 'doc_status'))) { $options[$k]['value'] = unserialize($v['value']); } } } return $options; }
function cw_order_messages_tabs_js_abstract($params, $return) { if ($return['name'] == 'doc_O_info') { if (AREA_TYPE != 'A') { return $return; } $return['js_tabs']['order_messages'] = array('title' => cw_get_langvar_by_name('lbl_messages'), 'template' => 'addons/order_messages/doc_O_info.tpl'); } return $return; }
function cw_dpi_tabs_js_abstract($params, $return) { if ($return['name'] == 'product_data') { if (AREA_TYPE != 'A') { return $return; } if (!isset($return['js_tabs']['dpi'])) { $return['js_tabs']['dpi'] = array('title' => cw_get_langvar_by_name('lbl_detailed_images'), 'template' => 'addons/detailed_product_images/product_images_modify.tpl'); } } return $return; }
function cw_product_options_tabs_js_abstract($params, $return) { if ($return['name'] == 'product_data') { if (AREA_TYPE != 'A') { return $return; } $return['js_tabs']['product_options'] = array('title' => cw_get_langvar_by_name('lbl_product_options'), 'template' => 'addons/product_options/main/products/product/options.tpl'); # kornev, need a condition here $return['js_tabs']['product_variants'] = array('title' => cw_get_langvar_by_name('lbl_product_variants'), 'template' => 'addons/product_options/main/products/product/variants.tpl'); } return $return; }
function tabs_js_abstract($params, $return) { if ($return['name'] == 'product_data') { if (AREA_TYPE != 'A') { return $return; } if (!isset($return['js_tabs']['cms'])) { $return['js_tabs']['cms'] = array('title' => cw_get_langvar_by_name('lbl_cs_content_sections'), 'template' => 'addons/cms/product_banners.tpl'); } } return $return; }
/** * Declare product tabs * * @see cw_tabs_js_abstract * * @param OLD params notation */ function cw_tabs_js_abstract($params, $return) { global $product_video; if ($return['name'] == 'product_data' && AREA_TYPE == 'A') { if (!isset($return['js_tabs']['product_video'])) { $return['js_tabs']['product_video'] = array('title' => cw_get_langvar_by_name('lbl_product_video'), 'template' => 'addons/' . addon_name . '/admin/product.tpl'); } } if ($return['name'] == 'product_data_customer' && !empty($product_video) && AREA_TYPE == 'C') { $return['js_tabs']['product_data'] = array('title' => cw_get_langvar_by_name('lbl_product_video'), 'template' => 'addons/' . addon_name . '/customer/product.tpl'); } return $return; }
function smarty_function_lng($params, &$smarty) { extract($params); if (empty($name)) { $smarty->trigger_error("lng: missing 'name' parameter"); return; } if ($assign) { $smarty->assign($assign, cw_get_langvar_by_name($name)); } else { return cw_get_langvar_by_name($name); } }
function cw_csv2table($fn, $delimiter = '') { global $tables; $h = fopen($fn, 'r'); $tab = ''; $fields = ''; $brf_err = cw_get_langvar_by_name('lbl_imp_err_br_file'); $wrtab_err = cw_get_langvar_by_name('lbl_imp_err_tab_not_exst'); while ($tab == '') { $tab = trim(fgets($h)); } if (!preg_match("'^\\[[^\\s]*\\]\$'i", $tab)) { return $brf_err; } $tab = preg_replace("'^\\[(.*)\\]\$'i", "\$1", $tab); if (!isset($tables[$tab])) { return $wrtab_err; } while ($fields == '') { $fields = trim(fgets($h)); } if (!preg_match("'^\\![^\\s\\!]+\\!.+'i", $fields)) { return $brf_err; } if ($delimiter == '') { $delimiter = preg_replace("'^\\![^\\s\\!]+(.)\\!.+'", "\$1", $fields); } $fields = explode($delimiter, $fields); foreach ($fields as $k => $v) { if (!preg_match("'^\\![^\\s]+\$'i", trim($v))) { return $brf_err; } $v = preg_replace("'^\\!(.*)\$'", "\$1", trim($v)); $fields[$k] = $v; } while (($data = fgetcsv($h, 0, $delimiter)) !== false) { if (sizeof($data) != sizeof($fields)) { return $brf_err; } foreach ($fields as $k => $v) { $data2[$v] = $data[$k]; } $arr[] = $data2; } db_query("TRUNCATE TABLE {$tables[$tab]}"); foreach ($arr as $data) { cw_array2insert_esc($tab, $data); } return true; }
function dashboard_action_update() { if ($_SERVER['REQUEST_METHOD'] != 'POST') { dashboard_redirect(); } $dashboard = $_POST['dashboard']; if (empty($dashboard)) { dashboard_redirect(); } foreach ($dashboard as $name => $dash) { $data = array('name' => $name, 'pos' => intval($dash['pos']), 'active' => intval($dash['active'])); cw_array2insert('dashboard', $data, true); } $top_message = array('content' => cw_get_langvar_by_name('msg_ppd_filetypes_updated_succes'), 'type' => 'I'); dashboard_redirect(); }
function ppd_get_pathto_file($file = null) { global $var_dirs, $config; static $files_dir; if (empty($file)) { return null; } if (!isset($files_dir)) { $files_dir = ppd_correct_dirname($config['ppd']['ppd_product_files_dir']); } $path = realpath($var_dirs['files'] . $files_dir . $file); if (empty($path)) { $path = cw_get_langvar_by_name('txt_ppd_file_not_found'); } return $path; }
function cw_is_catalog_product(&$params) { $product = $params; if (empty($params['product_id'])) { // function is called from smarty global $smarty; $smarty_product = $smarty->get_template_vars('product'); if ($smarty_product) { $product = $smarty_product; if ($product['product_type'] == PRODUCT_TYPE_CATALOG) { $params['button_title'] = cw_get_langvar_by_name('lbl_catalog_product_button'); $params['href'] = "index.php?target=catalog_redirect&product_id={$product['product_id']}"; } } return false; // prevent real template replacement because href is already replaced } return $product['product_type'] == PRODUCT_TYPE_CATALOG; }
function cw_tabs_get_section_tabs($section_id, $first = false) { global $tables, $accl; $tabs = cw_query("select nt.*, n.visible, n.target from {$tables['navigation_tabs']} as nt, {$tables['navigation_targets']} as n left join {$tables['addons']} as m on m.addon=n.addon where (m.active or (m.addon is null and n.addon='')) and nt.tab_id=n.tab_id and n.section_id='{$section_id}' order by nt.orderby"); $return = array(); if ($tabs) { foreach ($tabs as $k => $tab) { if ($tab['access_level'] && !$accl[$tab['access_level']]) { continue; } if ($first) { return $tab; } $return[$tab['tab_id']] = $tab; $return[$tab['tab_id']]['title_lng'] = cw_get_langvar_by_name($tab['title']); } } return $return; }
function cw_pt_tabs_js_abstract($params, $return) { global $pt_is_tabs, $pt_tabs; if ($return['name'] == 'product_data' && AREA_TYPE == 'A') { if (!isset($return['js_tabs']['product_tabs'])) { $return['js_tabs']['product_tabs'] = array('title' => cw_get_langvar_by_name('lbl_pt_product_tabs'), 'template' => 'addons/product_tabs/admin/main.tpl'); } } if ($return['name'] == 'product_data_customer' && (isset($pt_is_tabs) && $pt_is_tabs == true) && AREA_TYPE == 'C') { if (!isset($pt_tabs) || !is_array($pt_tabs)) { return $return; } foreach ($pt_tabs as $key => $tab) { if (!isset($return['js_tabs']['ptab-' . $key])) { $return['js_tabs']['ptab-' . $key] = array('title' => $tab['title'], 'template' => 'addons/product_tabs/customer/tab_content.tpl'); } } } return $return; }
function cw_addons_get($parent_addon = '') { global $current_language, $tables; $addons = cw_query("select m.*, IFNULL(lng1.value, m.addon) as addon_lng, IFNULL(lng2.value, m.descr) as addon_descr_lng from {$tables['addons']} as m left join {$tables['languages']} as lng1 ON lng1.code = '{$current_language}' and lng1.name = CONCAT('addon_name_', m.addon) left join {$tables['languages']} as lng2 ON lng2.code = '{$current_language}' and lng2.name = CONCAT('addon_descr_', m.addon) where m.parent='{$parent_addon}' order by addon_lng"); $mod_options = cw_query_column("select {$tables['addons']}.addon from {$tables['addons']}, {$tables['config_categories']} where {$tables['addons']}.addon={$tables['config_categories']}.category group by {$tables['addons']}.addon", "addon"); foreach ($addons as $k => $v) { // cw_get_langvar_by_name provides name and descr including tooltip if ($v['addon'] != $v['addon_lng']) { $addons[$k]['addon_lng'] = cw_get_langvar_by_name('addon_name_' . $v['addon']); } if ($v['descr'] != $v['addon_descr_lng']) { $addons[$k]['addon_descr_lng'] = cw_get_langvar_by_name('addon_descr_' . $v['addon']); } if ($parent_id == 0) { $addons[$k]['subaddons'] = cw_addons_get($v['addon']); } if (in_array($v['addon'], $mod_options)) { $addons[$k]['options_url'] = true; } } return $addons; }
function dumpTableContent($table, $schema, $fd) { global $sql_backup_rows; if ($fd === false) { print "{$schema}\n\n"; } else { fwrite($fd, "{$schema}\n\n"); echo cw_get_langvar_by_name("lbl_dumping_table_n", array("table" => $table), false, true) . "<br />\n"; } $rows_cnt = 0; $current_row = 0; $count = cw_query_first_cell("SELECT count(*) FROM " . $table); if ($count < 1) { return; } for ($pos = 0; $count > 0; $count -= $sql_backup_rows, $pos += $sql_backup_rows) { $local_query = "SELECT * FROM {$table} LIMIT {$pos},{$sql_backup_rows}"; $result = db_query($local_query); if ($result != FALSE) { $fields_cnt = mysql_num_fields($result); $rows_cnt = mysql_num_rows($result); // Checks whether the field is an integer or not for ($j = 0; $j < $fields_cnt; $j++) { $field_set[$j] = mysql_field_name($result, $j); $type = mysql_field_type($result, $j); $field_num[$j] = ($type == 'tinyint' || $type == 'smallint' || $type == 'mediumint' || $type == 'int' || $type == 'bigint' || $type == 'timestamp') && (!defined("OVERRIDE_NUM_FIELD") || !constant("OVERRIDE_NUM_FIELD")); } // Sets the scheme $schema_insert = "INSERT INTO {$table} VALUES ("; $search = array("", "\n", "\r", ""); //\x08\\x09, not required $replace = array('0', '\\n', '\\r', '\\Z'); $current_row = 0; while ($row = mysql_fetch_row($result)) { $current_row++; for ($j = 0; $j < $fields_cnt; $j++) { if (!isset($row[$j])) { $values[] = 'NULL'; } else { if ($row[$j] == '0' || $row[$j] != '') { // a number if ($field_num[$j]) { $values[] = $row[$j]; } else { $values[] = "'" . str_replace($search, $replace, addslashes($row[$j])) . "'"; } } else { $values[] = "''"; } } // end if } // end for // Extended inserts case $insert_line = $schema_insert . implode(', ', $values) . ')'; unset($values); // Send the line if ($fd === false) { print $insert_line . ";\n"; flush(); } else { fwrite($fd, $insert_line . ";\n"); fflush($fd); } // loic1: send a fake header to bypass browser timeout if data // are bufferized } // end while } // end if ($result != FALSE) db_free_result($result); if ($fd !== false) { cw_flush(". "); } } // for if ($fd === false) { print "\n"; } else { fwrite($fd, "\n"); echo "<br />"; } }
<?php cw_load('map'); if ($mode == 'cities' && $country) { cw_include('include/map/cities.php'); $smarty->assign('main', 'cities'); $location[] = array(cw_get_langvar_by_name('lbl_cities'), ''); } elseif ($mode == 'regions' && $country) { cw_include('include/map/regions.php'); $smarty->assign('main', 'regions'); $location[] = array(cw_get_langvar_by_name('lbl_regions'), ''); } elseif ($mode == 'states' && $country) { cw_include('include/map/states.php'); $smarty->assign('main', 'states'); $location[] = array(cw_get_langvar_by_name('lbl_states'), ''); } elseif ($mode == 'counties' && $country) { cw_include('include/map/counties.php'); $smarty->assign('main', 'counties'); $location[] = array(cw_get_langvar_by_name('lbl_counties'), ''); } else { cw_include('include/map/countries.php'); $smarty->assign('main', 'countries'); $location[] = array(cw_get_langvar_by_name('lbl_countries_management'), ''); }
$instagram_uname = $instagram_login_info['data']->user->username; $instagram_user_name = $instagram_login_info['data']->user->full_name; if (empty($instagram_user_name)) { $instagram_user_name = $instagram_uname; } $instagram_email = "instagram-" . $instagram_user_id . "-tmp-email"; $instagram_profile_image_url = $instagram_login_info['data']->user->profile_picture; // $instagram_personMarkup = "$instagram_email<div><img src='$instagram_profile_image_url?sz=50'></div>"; //================================================================ cw_load('user'); $user_data = cw_query_first("SELECT {$tables['customers']}.*\n FROM {$tables['customers']} \n WHERE oauth_uid='" . $instagram_user_id . "' AND oauth_type='I' \n AND usertype='" . $current_area . "'"); if (!empty($user_data)) { // login user if ($user_data['status'] != 'Y') { //error message disabled login cw_add_top_message(cw_get_langvar_by_name('err_account_temporary_disabled'), 'E'); cw_header_location($instagram_redirect_url); } } else { //add new customer to database $register = array(); $register['email'] = $instagram_email; $register['usertype'] = $current_area; $partner_membership =& cw_session_register('partner_membership'); $register['membership_id'] = $partner_membership; $customer_id = cw_user_create_profile($register); cw_array2update('customers', array('oauth_uid' => $instagram_user_id, 'oauth_type' => 'I'), "customer_id='{$customer_id}'"); $user_name = explode(" ", $instagram_user_name); $address = array('main' => 1, 'firstname' => $user_name[0], 'lastname' => $user_name[1]); $userinfo = array('addresses' => $address); cw_user_update($userinfo, $customer_id, $customer_id);
function cw_clear_stats_xaff($rsd_limit) { global $tables; if (empty($rsd_limit)) { db_query("DELETE FROM {$tables['salesman_adv_clicks']}"); db_query("DELETE FROM {$tables['salesman_clicks']}"); db_query("DELETE FROM {$tables['salesman_views']}"); } else { db_query("DELETE FROM {$tables['salesman_adv_clicks']} WHERE add_date < '{$rsd_limit}'"); db_query("DELETE FROM {$tables['salesman_clicks']} WHERE add_date < '{$rsd_limit}'"); db_query("DELETE FROM {$tables['salesman_views']} WHERE add_date < '{$rsd_limit}'"); } return cw_get_langvar_by_name("msg_adm_summary_aff_stat_del"); }
cw_add_ajax_block(array('id' => 'script', 'content' => '$("#' . $addon . '").removeClass("on").removeClass("off").addClass("' . ($active == 1 ? 'on' : 'off') . '");')); cw_add_ajax_block(array('id' => 'script', 'content' => '$("[parent=' . $addon . ']").parent().removeClass("addon_locked")' . ($active == 1 ? '' : '.addClass("addon_locked")') . ';')); } $addon = $_GET['addon']; if (!empty($addon) && $mode == 'addons') { # kornev, TOFIX generally this should be removed if (is_file($app_main_dir . '/addons/' . $addon . '/admin/settings.php')) { cw_include('addons/' . $addon . '/admin/settings.php'); } if ($REQUEST_METHOD == 'POST') { cw_header_location("index.php?target={$target}&mode=addons&addon={$addon}"); } $smarty->assign('addon', $addon); $smarty->assign('addon_name', cw_get_langvar_by_name('addon_name_' . $addon)); $location[] = array(cw_get_langvar_by_name('lbl_addons'), 'index.php?target=' . $target); $location[] = array($addon, ''); $smarty->assign('main', 'addon_settings'); } elseif (empty($addon)) { $addons = cw_addons_get(); if (!isset($status) || empty($status)) { $status = constant('ADDON_TYPE_GENERAL'); } foreach ($addons as $k => $v) { if ($v['status'] < $status) { unset($addons[$k]); } } $smarty->assign('addons', $addons); $location[] = array(cw_get_langvar_by_name('lbl_addons'), 'index.php?target=' . $target); $smarty->assign('main', 'addons'); }
function smarty_function_cw_order_statuses($params, &$smarty) { global $tables, $config; $retval = ""; $langvar_code = '{$lng.'; $name_name = 'name'; $statuses_list = cw_query("select os.* from {$tables['order_statuses']} os order by orderby, code"); if ($params['mode'] == "select") { if ($params['multiple']) { $multiple_html = "multiple=\"multiple\""; $multiple_select_name_ext = "[]"; } $retval .= "<select name=\"{$params['name']}{$multiple_select_name_ext}\" {$params['extra']} {$multiple_html}>"; if ($params['extended'] != "") { $retval .= "<option value=\"\"></option>"; } } $selected_status_codes = array(); if (is_array($params['selected'])) { if ($params['normal_array']) { $selected_status_codes = $params['selected']; } else { $selected_status_codes = array_keys($params['selected']); } } else { $selected_status_codes = array($params['selected']); } foreach ($statuses_list as $st) { $selected_html = ""; if (strpos($st[$name_name], $langvar_code) !== false) { $st[$name_name] = substr($st[$name_name], strlen($langvar_code)); if (strpos($st[$name_name], '}') !== false) { $st[$name_name] = substr($st[$name_name], 0, strpos($st[$name_name], '}')); } $st[$name_name] = cw_get_langvar_by_name($st[$name_name]); } elseif (strpos($st[$name_name], 'lbl_') !== false) { $st[$name_name] = cw_get_langvar_by_name($st[$name_name]); } if (intval($st['deleted'])) { $deleted_text = cw_get_langvar_by_name('lbl_status_deleted'); } else { $deleted_text = ""; } if ($params['mode'] == "select") { if (in_array($st['code'], $selected_status_codes)) { $selected_html = "selected=\"selected\""; } if (!intval($st['deleted']) || !empty($selected_html)) { $retval .= "<option value=\"{$st['code']}\" {$selected_html}>" . $st[$name_name] . "{$deleted_text}</option>"; } } elseif ($params['mode'] == "static") { if (in_array($st['code'], $selected_status_codes)) { $retval = $st[$name_name] . $deleted_text; } } } if ($params['mode'] == "select") { $retval .= "</select>"; } return $retval; }
<?php // TODO: DELETE THIS CONTROLLER if (!$addons['Gift_Registry']) { cw_header_location('index.php'); } $access_status =& cw_session_register("access_status", array()); if ($mode == "preview") { $html_content = cw_query_first_cell("SELECT html_content FROM {$tables['giftreg_events']} WHERE event_id='{$eventid}'"); if (!empty($html_content)) { echo $html_content; } else { echo "<br /><br /><br /><br /><h3 align=\"center\">" . cw_get_langvar_by_name("lbl_no_html_content", false, false, true) . "</h3>"; } exit; } if (!empty($cc)) { # Confirm/Decline the participation by recipient # $cc - is a confirmation code passed via GET request cw_include('addons/Gift_Registry/giftreg_confirm.php'); } if (!empty($eventid)) { if (!empty($wlid)) { if (cw_query_first_cell("SELECT event_id FROM {$tables['wishlist']} WHERE wishlist_id='{$wild}'") == $eventid) { $wlid_eventid =& cw_session_register("wlid_eventid"); $wlid_eventid = $eventid; cw_session_save("wlid_eventid"); } } cw_include('addons/Gift_Registry/event_guestbook.php'); cw_include('addons/Gift_Registry/giftreg_display.php');
$usertypes_array[$user_type . '_' . $val['membership_id']] = ''; $membership_titles[$user_type . '_' . $val['membership_id']] = $val['membership']; } } } $smarty->assign('membership_titles', $membership_titles); $smarty->assign('customer_memberships', $customer_memberships); $smarty->assign('customer_memberships_count', count($customer_memberships)); # kornev, sort and add the sections if required. if ($mode == 'fields') { list($sections, $fields, $additional_fields) = cw_profile_fields_get_sections('U', true, '', false, $edited_language); } else { list($sections, $fields, $additional_fields) = cw_profile_fields_get_sections('U'); } $smarty->assign('user_type', $user_type); $smarty->assign('profile_sections', $sections); $smarty->assign('profile_fields', $fields); $smarty->assign('additional_fields', $additional_fields); $smarty->assign('usertypes_array', $usertypes_array); $smarty->assign('usertypes_array_count', count($usertypes_array)); $types = array('T' => 'Text', 'C' => 'Checkbox', 'M' => 'Multiple Checkbox', 'S' => 'Select box'); $smarty->assign('types', $types); $smarty->assign('js_tab', $js_tab); $location[] = array(cw_get_langvar_by_name('lbl_profile_fields'), ''); if ($mode == 'fields') { $location[] = array(cw_get_langvar_by_name('lbl_additional_fields'), ''); $smarty->assign('main', 'user_profiles'); } else { $location[] = array(cw_get_langvar_by_name('lbl_user_type_' . $user_type), ''); $smarty->assign('main', 'options'); }
} } else { $top_message = array('content' => cw_get_langvar_by_name('err_filling_form'), 'type' => 'E'); $nwslt_object =& cw_session_register('nwslt_object'); $nwslt_object['fill_error'] = $fill_error; $nwslt_object['list'] = $list; cw_header_location("index.php?target={$target}&list_id=" . $list['list_id']); } cw_header_location("index.php?target={$target}&list_id=" . $list['list_id']); } $location[] = array(cw_get_langvar_by_name('lbl_news_management'), 'index.php?target=' . $target); if (isset($_GET['list_id'])) { if (!empty($list_id)) { $list = cw_query_first("select * from {$tables['newslists']} WHERE list_id='{$list_id}'"); if (empty($list['list_id'])) { $top_message['content'] = cw_get_langvar_by_name('msg_adm_err_newslist_not_exists'); cw_header_location('index.php?target=' . $target); } else { if ($list['lngcode'] != $current_language && is_array($d_langs) && !in_array($list['lngcode'], $d_langs)) { cw_header_location("index.php?target={$target}&mode=modify&list_id={$list_id}&edit_lng={$list['lngcode']}&old_lng={$current_language}"); } } $memberships = cw_query("select membership_id from {$tables['newslists_memberships']} where list_id='{$list['list_id']}'"); if ($memberships) { foreach ($memberships as $val) { $list['memberships'][$val['membership_id']] = true; } } $list_idname = cw_query_first_cell("SELECT name FROM {$tables['newslists']} WHERE list_id='{$list_id}'"); $smarty->assign('list_idname', $list_idname); $smarty->assign('list_id', $list_id);
<?php # [TOFIX] # kornev, fix the whole area - move to addon define('AREA_TYPE', 'B'); $current_area = AREA_TYPE; $customer_id =& cw_session_register('customer_id'); $top_message =& cw_session_register('top_message', array()); if (!empty($top_message)) { $smarty->assign('top_message', $top_message); $top_message = ''; } cw_include('init/lng.php'); cw_include('include/check_useraccount.php'); cw_include('include/area_sections.php'); $smarty->assign('current_target', $target); if (!$addons['salesman']) { cw_header_location($app_catalogs['customer']); } $location = array(); $location[] = array(cw_get_langvar_by_name('lbl_area_salesman'), 'index.php'); cw_call('cw_auth_security');
if (is_array($zone_elements)) { foreach ($zone_elements as $k => $zone_element) { db_query("INSERT INTO {$tables['zone_element']} (zone_id, field, field_type) VALUES ('{$new_zone_id}', '" . addslashes($zone_element['field']) . "', '{$zone_element['field_type']}')"); } } $top_message['content'] = cw_get_langvar_by_name("msg_zone_cloned"); } cw_header_location('index.php?target=' . $target . '&zone_id=' . $new_zone_id); } $location[] = array(cw_get_langvar_by_name("lbl_destination_zones"), ""); if ($mode == "add" or !empty($zone_id)) { # # Display zone details page # $location[count($location) - 1][1] = "index.php?target=zones"; $location[] = array(cw_get_langvar_by_name("lbl_zone_details"), ""); if (!empty($zone_id)) { $zone = cw_query_first("SELECT * FROM {$tables['zones']} WHERE zone_id='{$zone_id}' {$zones_condition}"); } if (empty($zone)) { $action = "add"; } # # Countries in this zone and rest # $zone_countries = cw_query("SELECT {$tables['map_countries']}.code, {$tables['languages']}.value as country FROM {$tables['zone_element']}, {$tables['map_countries']}, {$tables['languages']} WHERE {$tables['zone_element']}.field_type='C' AND {$tables['zone_element']}.field={$tables['map_countries']}.code AND {$tables['languages']}.name = CONCAT('country_', {$tables['map_countries']}.code) AND {$tables['languages']}.code='{$current_language}' AND {$tables['map_countries']}.active=1 AND {$tables['zone_element']}.zone_id='{$zone_id}' ORDER BY country"); $rest_countries = cw_query("SELECT {$tables['map_countries']}.code, {$tables['map_countries']}.region, {$tables['languages']}.value as country, {$tables['zone_element']}.zone_id FROM {$tables['languages']}, {$tables['map_countries']} LEFT JOIN {$tables['zone_element']} ON {$tables['zone_element']}.field_type='C' AND {$tables['zone_element']}.field={$tables['map_countries']}.code AND {$tables['zone_element']}.zone_id='{$zone_id}' WHERE {$tables['map_countries']}.active=1 AND {$tables['languages']}.name = CONCAT('country_', {$tables['map_countries']}.code) AND {$tables['languages']}.code='{$current_language}' AND zone_id IS NULL ORDER BY country"); $rest_zones = array(); if ($rest_countries) { foreach ($rest_countries as $v) { $rest_zones[$v['region']][] = $v['code'];
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); }
function cw_pdf_generate($file, $template, $save_to_file = false, $landscape = false, $pages_limit = 0, $page_margins = array('10', '10', '10', '10'), $show_pages = true) { global $smarty, $var_dirs, $current_location; set_time_limit(2700); ini_set('memory_limit', '512M'); $smarty->assign('is_pdf', true); # kornev, only for A4 && 1024 p/wide $wcr = $hcr = 1024 / 210; $smarty->assign('wcr', $wcr); $smarty->assign('hcr', $hcr); if ($save_to_file && $file) { $html = $file; } else { $html = cw_display($template, $smarty, false); } parse_config_file(HTML2PS_DIR . 'html2ps.config'); $pipeline = PipelineFactory::create_default_pipeline('', ''); $pipeline->fetchers[] = new MyFetcherMemory($html, $current_location); if ($save_to_file) { $pipeline->destination = new MyDestinationFile($save_to_file); } else { $pipeline->destination = new DestinationDownload($file); } if ($show_pages) { $pipeline->pre_tree_filters[] = new PreTreeFilterHeaderFooter('', '<div>' . cw_get_langvar_by_name('lbl_page', null, false, true) . ' ##PAGE## / ##PAGES## </div>'); } $pipeline->pre_tree_filters[] = new PreTreeFilterHTML2PSFields(); $media =& Media::predefined('A4'); $media->set_landscape($landscape); $media->set_margins(array('left' => $page_margins[3], 'right' => $page_margins[1], 'top' => $page_margins[0], 'bottom' => $page_margins[2])); $media->set_pixels(1024); $g_config = array('cssmedia' => 'print', 'scalepoints' => '1', 'renderimages' => true, 'renderlinks' => false, 'renderfields' => false, 'renderforms' => false, 'mode' => 'html', 'encoding' => '', 'debugbox' => false, 'pdfversion' => '1.4', 'smartpagebreak' => true, 'draw_page_border' => false, 'html2xhtml' => false, 'method' => 'fpdf', 'pages_limit' => $pages_limit); $pipeline->configure($g_config); $pipeline->process_batch(array(''), $media); if (!$save_to_file) { exit(0); } }