getByName('hikashop','quickbooksexport'); if(!empty($plugin) ) { if(!empty($plugin->params['opt_activated'])) { $activated = ($plugin->params['opt_activated'] == '1'); } } if(!$activated) return; // Do export // $this->exportOrders($rows, $obj); } function onOrderExportList(&$exports) { $exports[] = 'quickbooksexport'; } function exportOrders(&$rows, &$obj) { $pluginsClass = hikashop_get('class.plugins'); $plugin = $pluginsClass->getByName('hikashop','quickbooksexport'); //if ($plugin->params['order_id'] == '1'){ // $order_id = 'order_id'; //} //if ($plugin->params['order_status'] == '1'){ // $order_status = 'order_status'; //} //if ($plugin->params['tracking_number'] == '1'){ // $tracking_number = 'tracking_number'; //} //if ($plugin->params['order_shipping_price'] == '1'){ // $order_shipping_price = 'order_shipping_price'; //} //if ($plugin->params['order_shipping_method'] == '1'){ // $order_shipping_method = 'order_shipping_method'; //} //if ($plugin->params['order_full_price'] == '1'){ // $order_full_price = 'order_full_price'; //} //if ($plugin->params['order_number'] == '1'){ // $order_number = 'order_number'; //} //if ($plugin->params['delivery_instructions'] == '1'){ // $delivery_instructions = 'delivery_instructions'; //} //if ($plugin->params['other_comments'] == '1'){ // $other_comments = 'other_comments'; //} //if ($plugin->params['name'] == '1'){ // $name = 'name'; //} //if ($plugin->params['shipping_address_firstname'] == '1'){ // $shipping_address_firstname = 'shipping_address_firstname'; //} //if ($plugin->params['shipping_address_lastname'] == '1'){ // $shipping_address_lastname = 'shipping_address_lastname'; //} //if ($plugin->params['shipping_address_company'] == '1'){ // $shipping_address_company = 'shipping_address_company'; //} //if ($plugin->params['shipping_address_street'] == '1'){ // $shipping_address_street = 'shipping_address_street'; //} //if ($plugin->params['shipping_address_post_code'] == '1'){ // $shipping_address_post_code = 'shipping_address_post_code'; //} //if ($plugin->params['shipping_address_city'] == '1'){ // $shipping_address_city = 'shipping_address_city'; //} //if ($plugin->params['shipping_address_telephone'] == '1'){ // $shipping_address_telephone = 'shipping_address_telephone'; //} //if ($plugin->params['shipping_address_state'] == '1'){ // $shipping_address_state = 'shipping_address_state'; //} //if ($plugin->params['shipping_address_country'] == '1'){ // $shipping_address_country = 'shipping_address_country'; //} //For Shipping Export Only if ($plugin->params['orderexport'] == '0'){ $order_id = 'order_id'; $order_status = 'order_status'; $tracking_number = 'tracking_number'; $shipping_address_firstname = 'shipping_address_firstname'; $shipping_address_lastname = 'shipping_address_lastname'; $shipping_address_street = 'shipping_address_street'; $shipping_address_post_code = 'shipping_address_post_code'; $shipping_address_city = 'shipping_address_city'; $shipping_address_telephone = 'shipping_address_telephone'; $shipping_address_state = 'shipping_address_state'; $shipping_address_country = 'shipping_address_country'; } //For Full Order Export elseif ($plugin->params['orderexport'] == '1'){ $order_id = 'order_id'; $order_status = 'order_status'; $tracking_number = 'tracking_number'; $order_shipping_price = 'order_shipping_price'; $order_shipping_method = 'order_shipping_method'; $order_full_price = 'order_full_price'; $order_number = 'order_number'; $delivery_instructions = 'delivery_instructions'; $other_comments = 'other_comments'; $name = 'name'; $shipping_address_firstname = 'shipping_address_firstname'; $shipping_address_lastname = 'shipping_address_lastname'; $shipping_address_company = 'shipping_address_company'; $shipping_address_street = 'shipping_address_street'; $shipping_address_post_code = 'shipping_address_post_code'; $shipping_address_city = 'shipping_address_city'; $shipping_address_telephone = 'shipping_address_telephone'; $shipping_address_state = 'shipping_address_state'; $shipping_address_country = 'shipping_address_country'; $item_order_product_quantity = 'item_order_product_quantity'; $item_order_product_name = 'item_order_product_name'; $item_order_product_price = 'item_order_product_price'; $item_firstname = 'item_firstname'; $item_lastname = 'item_lastname'; $item_phonenumber = 'item_phonenumber'; $item_email_address = 'item_email_address'; $item_address = 'item_address'; $item_city = 'item_city'; $item_state = 'item_state'; $item_zipcode = 'item_zipcode'; $item_make = 'item_make'; $item_model = 'item_model'; $item_year = 'item_year'; $item_isthisarenewal = 'item_isthisarenewal'; } //Select Your Own elseif ($plugin->params['orderexport'] == '2'){ if ($plugin->params['order_id'] == '1'){ $order_id = 'order_id'; } if ($plugin->params['order_status'] == '1'){ $order_status = 'order_status'; } if ($plugin->params['tracking_number'] == '1'){ $tracking_number = 'tracking_number'; } if ($plugin->params['order_shipping_price'] == '1'){ $order_shipping_price = 'order_shipping_price'; } if ($plugin->params['order_shipping_method'] == '1'){ $order_shipping_method = 'order_shipping_method'; } if ($plugin->params['order_full_price'] == '1'){ $order_full_price = 'order_full_price'; } if ($plugin->params['order_number'] == '1'){ $order_number = 'order_number'; } if ($plugin->params['delivery_instructions'] == '1'){ $delivery_instructions = 'delivery_instructions'; } if ($plugin->params['other_comments'] == '1'){ $other_comments = 'other_comments'; } if ($plugin->params['name'] == '1'){ $name = 'name'; } if ($plugin->params['shipping_address_firstname'] == '1'){ $shipping_address_firstname = 'shipping_address_firstname'; } if ($plugin->params['shipping_address_lastname'] == '1'){ $shipping_address_lastname = 'shipping_address_lastname'; } if ($plugin->params['shipping_address_company'] == '1'){ $shipping_address_company = 'shipping_address_company'; } if ($plugin->params['shipping_address_street'] == '1'){ $shipping_address_street = 'shipping_address_street'; } if ($plugin->params['shipping_address_post_code'] == '1'){ $shipping_address_post_code = 'shipping_address_post_code'; } if ($plugin->params['shipping_address_city'] == '1'){ $shipping_address_city = 'shipping_address_city'; } if ($plugin->params['shipping_address_telephone'] == '1'){ $shipping_address_telephone = 'shipping_address_telephone'; } if ($plugin->params['shipping_address_state'] == '1'){ $shipping_address_state = 'shipping_address_state'; } if ($plugin->params['shipping_address_country'] == '1'){ $shipping_address_country = 'shipping_address_country'; } if ($plugin->params['item_order_product_quantity'] == '1'){ $item_order_product_quantity = 'item_order_product_quantity'; } if ($plugin->params['item_order_product_name'] == '1'){ $item_order_product_name = 'item_order_product_name'; } if ($plugin->params['item_order_product_price'] == '1'){ $item_order_product_price = 'item_order_product_price'; } if ($plugin->params['item_firstname'] == '1'){ $item_firstname = 'item_firstname'; } if ($plugin->params['item_firstname'] == '1'){ $item_lastname = 'item_lastname';} if ($plugin->params['item_phonenumber'] == '1'){ $item_phonenumber = 'item_phonenumber'; } if ($plugin->params['item_email_address'] == '1'){ $item_email_address = 'item_email_address'; } if ($plugin->params['item_email_address'] == '1'){ $item_address = 'item_address'; } if ($plugin->params['item_city'] == '1'){ $item_city = 'item_city'; } if ($plugin->params['item_state'] == '1'){ $item_state = 'item_state'; } if ($plugin->params['item_zipcode'] == '1'){ $item_zipcode = 'item_zipcode'; } if ($plugin->params['item_make'] == '1'){ $item_make = 'item_make'; } if ($plugin->params['item_model'] == '1'){ $item_model = 'item_model'; } if ($plugin->params['item_year'] == '1'){ $item_year = 'item_year'; } if ($plugin->params['shipping_address_country'] == '1'){ $item_isthisarenewal = 'item_isthisarenewal'; } } else{ $order_id = 'order_id'; $order_status = 'order_status'; $tracking_number = 'tracking_number'; $order_shipping_price = 'order_shipping_price'; $order_shipping_method = 'order_shipping_method'; $order_full_price = 'order_full_price'; $order_number = 'order_number'; $delivery_instructions = 'delivery_instructions'; $other_comments = 'other_comments'; $name = 'name'; $shipping_address_firstname = 'shipping_address_firstname'; $shipping_address_lastname = 'shipping_address_lastname'; $shipping_address_company = 'shipping_address_company'; $shipping_address_street = 'shipping_address_street'; $shipping_address_post_code = 'shipping_address_post_code'; $shipping_address_city = 'shipping_address_city'; $shipping_address_telephone = 'shipping_address_telephone'; $shipping_address_state = 'shipping_address_state'; $shipping_address_country = 'shipping_address_country'; $item_order_product_quantity = 'item_order_product_quantity'; $item_order_product_name = 'item_order_product_name'; $item_order_product_price = 'item_order_product_price'; $item_firstname = 'item_firstname'; $item_lastname = 'item_lastname'; $item_phonenumber = 'item_phonenumber'; $item_email_address = 'item_email_address'; $item_address = 'item_address'; $item_city = 'item_city'; $item_state = 'item_state'; $item_zipcode = 'item_zipcode'; $item_make = 'item_make'; $item_model = 'item_model'; $item_year = 'item_year'; $item_isthisarenewal = 'item_isthisarenewal'; } $fields = array( $order_id, $order_status, $tracking_number, //'order_discount_code', //enCOMPASS Edit Removed not needed in export $order_shipping_price, //'order_discount_price', //enCOMPASS Edit Removed not needed in export //'order_payment_method', //enCOMPASS Edit Removed not needed in export $order_shipping_method, $order_full_price, //'order_shipping_tax', //enCOMPASS Edit Removed not needed in export //'order_payment_tax', //enCOMPASS Edit Removed not needed in export //'order_discount_tax', //enCOMPASS Edit Removed not needed in export $order_number, $delivery_instructions, $other_comments, $name, //'user_email', //enCOMPASS Edit Removed not needed in export //'shipping_address_title', //enCOMPASS Edit Removed not needed in export $shipping_address_firstname, $shipping_address_lastname, $shipping_address_company, $shipping_address_street, $shipping_address_post_code, $shipping_address_city, $shipping_address_telephone, $shipping_address_state, $shipping_address_country, //'shipping_address_vat', //enCOMPASS Edit Removed not needed in export //'billing_address_title', //enCOMPASS Edit Removed not needed in export //'billing_address_firstname', //enCOMPASS Edit Removed not needed in export //'billing_address_lastname', //enCOMPASS Edit Removed not needed in export //'billing_address_company', //enCOMPASS Edit Removed not needed in export //'billing_address_street', //enCOMPASS Edit Removed not needed in export //'billing_address_post_code', //enCOMPASS Edit Removed not needed in export //'billing_address_city', //enCOMPASS Edit Removed not needed in export //'billing_address_telephone', //enCOMPASS Edit Removed not needed in export //'billing_address_state', //enCOMPASS Edit Removed not needed in export //'billing_address_country', //enCOMPASS Edit Removed not needed in export //'billing_address_vat', //enCOMPASS Edit Removed not needed in export //'order_full_tax', //enCOMPASS Edit Removed not needed in export $item_order_product_quantity, $item_order_product_name, //'item_order_product_code', $item_order_product_price, //'item_order_product_tax', //enCOMPASS Edit Removed not needed in export //'item_order_product_options' //enCOMPASS Edit Removed not needed in export $item_firstname, //enCOMPASS Edit Added Custom Field $item_lastname, //enCOMPASS Edit Added Custom Field $item_phonenumber, //enCOMPASS Edit Added Custom Field $item_email_address, //enCOMPASS Edit Added Custom Field $item_address, //enCOMPASS Edit Added Custom Field $item_city, //enCOMPASS Edit Added Custom Field $item_state, //enCOMPASS Edit Added Custom Field $item_zipcode, //enCOMPASS Edit Added Custom Field $item_make, //enCOMPASS Edit Added Custom Field $item_model, //enCOMPASS Edit Added Custom Field $item_year, //enCOMPASS Edit Added Custom Field $item_isthisarenewal //enCOMPASS Edit Added Custom Field //'item_torecipient', //enCOMPASS Edit Added Custom Field //'item_toemail', //enCOMPASS Edit Added Custom Field //'item_whofrom', //enCOMPASS Edit Added Custom Field //'item_personalmessage' //enCOMPASS Edit Added Custom Field ); //$stripFields = array( // 'item_order_product_name' // ); $db = JFactory::getDBO(); $db->setQuery('SELECT shipping_id, shipping_type, shipping_name FROM '.hikashop_table('shipping')); $shippings = $db->loadObjectList(); if ($plugin->params['orderexport'] == '0' || $plugin->params['orderexport'] == '1' || $plugin->params['orderexport'] == '2'){ $newRows = array(); // Parse lines // foreach($rows as $k => $order) { $data = new stdClass(); if(empty($order)) { continue; } foreach($order as $k => $v) { if(in_array($k, $fields)) { $data->$k = $v; // Special support // if($k == 'order_shipping_method') { foreach($shippings as $shipping) { if($shipping->shipping_type == $order->order_shipping_method && $shipping->shipping_id == $order->order_shipping_id) { $data->$k = $shipping->shipping_name; break; } } } } } if(!empty($order->products)) { foreach($order->products as $product) { foreach($product as $k => $v) { $ik = 'item_'.$k; if(in_array($ik, $fields)) { $data->$ik = $v; } if(in_array($ik, $stripFields)) { $data->$ik = strip_tags($data->$ik); } } // Special support // $data->item_tax_code = 'S4'; if(empty($data->item_order_product_tax)) $data->item_tax_code = 'Z'; $newRows[] = (!HIKASHOP_PHP5) ? $data : clone($data); } } else { $newRows[] = (!HIKASHOP_PHP5) ? $data : clone($data); } unset($order); $rows[$k] = null; } $rows = $newRows; } } }