Ejemplo n.º 1
0
/**
 * Adds a new contact address to the database
 *
 * @param string $party_id the party to which the address belongs
 * @param string $contact_type_id the type od the address
 * @param array $attributes the attributes of the address separated
 * @return string the id of the new contact
 */
function contact_add($party_id, $contact_type_id, $attributes)
{
    $id = contact_generate_id($party_id, $contact_type_id);
    if ($contact_type_id == ALTERNATIVE_CONTACT) {
        // Appending the next number
        $id = sprintf('%s-%d', $id, contact_alternative_count($id));
    }
    // Building the full address
    $full_address_arr = array();
    foreach ($attributes as $key => $val) {
        contact_attr_add($id, $key, $val);
        $full_address_arr[] = array('ATTR_NAME' => $key, 'ATTR_VALUE' => $val);
    }
    // Adding new contact mechanism
    $full_address = contact_generate_string($full_address_arr, "\n");
    $query = "INSERT INTO contact_mech (CONTACT_MECH_ID, CONTACT_MECH_TYPE_ID, INFO_STRING, CREATED_STAMP, CREATED_TX_STAMP)\n\t\t\t  VALUES ('{$id}', '{$contact_type_id}', '{$full_address}', '" . now() . "', NOW())";
    db_query($query);
    return $id;
}
Ejemplo n.º 2
0
function build_customer_pdf($order_id, $person_id, $client = true)
{
    $system_settings = get_settings();
    $order = order_get($order_id);
    $person = person_get($person_id);
    $contacts = contact_get_by_party($person_id, COMPANY_CONTACT);
    $affiliate = person_affiliate_get($person_id);
    // Dealing with shipments
    $shipment = shipment_get($order_id);
    if ($shipment['DESTINATION_CONTACT_MECH_ID'] == SHIPMENT_REQUISITION) {
        $delivery_address = 'In requisions files';
    } else {
        $attributes = contact_mech_get_attributes($shipment['DESTINATION_CONTACT_MECH_ID']);
        $delivery_address = contact_generate_string($attributes, '<br />');
    }
    $content = '
	<page backtop="30mm" backbottom="14mm" backleft="10mm" backright="10mm" style="font-size: 12px; font-family: Arial; margin-top: 150px;">

		<!-- Page header -->
		<page_header style="margin-left: 20px; height: 400px; margin-bottom: 40px;">
			<table style="margin-left: 15px;">
				<tr>
					<td style="width: 530px;">
						<div style="background-color: #63cdf5; padding-left: 10px;">
							<h1>Order #' . $order_id . '</h1>
						</div>
					</td>
					<td>';
    if ($client) {
        $content .= '<img style="width: 200px;" src="./themes/megamedia/img/website-logo-big.png">';
    }
    $content .= '</td></tr>
			</table>
			<div style="clear: both"></div>
		</page_header>


		<!-- Metadata -->
		<table style="margin-left: -30px;" cellspacing="10" cellspadding="0">
			<tr>
				<td style="width: 390px; vertical-align:top; border: 1px solid #fcb040; border-top: none; padding:0; padding-bottom: 10px;">
					<div style="background-color: #fcb040; width: 390px; padding-left: 10px; margin-bottom: 10px;">
						<h3 style="margin:10 0 10 0; padding: 0;">Customer</h3>
					</div>
					<div style="font-size: 15px; margin-left: 10px; width: 390px;">
						' . contact_generate_string($contacts, '<br />') . '
					</div>
				</td>';
    if ($client) {
        $content .= '<td style="width: 300px; vertical-align:top; border: 1px solid #fcb040; border-top: none; padding:0; padding-bottom: 10px;">
						<div style="background-color: #fcb040; width: 300px; padding-left: 10px; margin-bottom: 10px;">
							<h3 style="margin:10 10 10 10; padding: 0;">Megamedia DK ApS</h3>
						</div>
						<div style="font-size: 15px; margin-left: 10px; width: 300px;">
							Skøjtevej 19A <br />
							2770 Kastrup <br />
							Denmark <br />
							Tlf.: +45 70 26 26 99 <br />
							<a href="www.megamedia.dk">www.megamedia.dk</a> <br />
							Account manager: <b>' . $affiliate['AFFILIATE_NAME'] . '</b> <br />
							Telephone: <b>' . $affiliate['AFFILIATE_DESCRIPTION'] . '</b>
						</div>
					</td>';
    }
    $content .= '</tr>
			<tr>
				<td style="width: 390px; vertical-align:top; border: 1px solid #fcb040; border-top: none; padding:0; padding-bottom: 10px;">
					<div style="background-color: #fcb040; width: 390px; padding-left: 10px; margin-bottom: 10px;">
						<h3 style="margin:10 0 10 0; padding: 0;">Delivery Address</h3>
					</div>
					<div style="font-size: 15px; margin-left: 10px; width: 390px;">
						' . $delivery_address . '
					</div>
				</td>';
    if ($client) {
        $content .= '<td style="width: 300px; vertical-align:top; border: 1px solid #fcb040; border-top: none; padding:0; padding-bottom: 10px;">
						<div style="background-color: #fcb040; width: 300px; padding-left: 10px; margin-bottom: 10px;">
							<h3 style="margin:10 10 10 10; padding: 0;">Order Details</h3>
						</div>
						<div style="font-size: 15px; margin-left: 10px; width: 300px;">
							Order done by: <b>' . $person['FIRST_NAME'] . ' ' . $person['LAST_NAME'] . '</b><br />
							Order date: <b>' . date_convert($order['ORDER_DATE'], DEFAULT_DATE_FORMAT) . '</b><br />
							Your reference: <b>' . $order['EXTERNAL_ID'] . '</b><br />
							Additional order info: <b>' . $order['COMMENTS'] . '</b>
						</div>
					</td>';
    }
    $content .= '</tr>
		</table>


		<!-- Product section -->
		<div style="margin-left: -20px; width: 715px; background-color: #CB68A8; padding-left: 10px; margin-top: 20px;">
			<h3 style="margin:10 10 10 10; padding: 0;">Products</h3>
		</div>

		<table style="font-size: 15px; margin-left: -20px; width: 715px; margin-top: 10px;"border="1px" cellspacing="0" >
			<tr>
				<th style="width: 228px; padding: 5px;"><b>Product</b></th>
				<th style="width: 35px; padding: 5px;"><b>Line</b></th>
				<th style="width: 55px; padding: 5px;"><b>Motives</b></th>
				<th style="width: 55px; padding: 5px;"><b>Runs</b></th>
				<th style="width: 85px; padding: 5px;"><b>Variant</b></th>';
    if ($client) {
        $content .= '<th style="width: 95px; padding: 5px;"><b>Price</b></th>';
    }
    $content .= '</tr>';
    $Cart = new Cart();
    $Cart->fromString($order['SESSION_SERILIALIZE']);
    $product_count = $Cart->getProductsCount();
    $loop = 0;
    $total = 0;
    $total_delivery = 0;
    foreach ($Cart->getProducts() as $i => $_row) {
        $loop++;
        list($headers, $rows, $variants, $copies, $delivery) = html_offer_box($_row['PRODUCTS'], $Cart->deliveryDistributionAt($i));
        list($html, $add_to_total, $delivery) = pdf_build_offer_box($rows, $variants, $copies, $delivery, $_row['OFFER'], $_row['PRODUCTS']['MOTIVES'], false, true, $_row['PRODUCTS']['RUNS'], $_row['PRODUCTS']['VARIANT'], $client);
        $content .= $html;
        $total += $add_to_total;
        $total_delivery += $delivery;
        if ($product_count > $loop) {
            $content .= '<tr><td style="border-left: none; border-right: none;" colspan="6">&nbsp;</td></tr>';
        }
    }
    $content .= '</table>

		<!-- Grand Total -->
		<div style="clear: both; margin-top: 40px;">
			<div style="text-align: right; margin-left: -20px; width: 723px; background-color: #CB68A8; padding-right: 10px; margin-top: 20px;">
				<span style="margin:10 10 10 10; padding: 0;">All Delivery + Environment:
				<span style="color: #fff;">' . number_format($total_delivery + DELIVERY_ENVIRONMENT + $system_settings['ORDER_FEE'], 2) . ' ' . DEFAULT_CURRENCY . '</span></span>
			</div>
		</div>
		<div style="clear: both; margin-top: 40px;">
			<div style="text-align: right; margin-left: -20px; width: 723px; background-color: #CB68A8; padding-right: 10px; margin-top: 20px;">
				<h3 style="margin:10 10 10 10; padding: 0;">Grand Total:
				<span style="color: #fff;">' . number_format($total + $total_delivery + DELIVERY_ENVIRONMENT + $system_settings['ORDER_FEE'], 2) . ' ' . DEFAULT_CURRENCY . '</span></h3>
			</div>
		</div>


		<!-- Footer -->
		<page_footer>
			<table style="width: 750px;">
				<tr>
					<td class="center">Order: #' . $order_id . ' <i style=" font-size: 10px;">page [[page_cu]]/[[page_nb]]</i></td>
				</tr>
			</table>
		</page_footer>
	</page>';
    try {
        $html2pdf = new HTML2PDF('P', 'A4', 'en');
        $html2pdf->setDefaultFont('Arial');
        $html2pdf->writeHTML($content, false);
        $file_name = $client ? 'Customer-Copy-' : 'Production-Copy-';
        $prefix = $file_name . $order_id;
        $pdf_name = $prefix . '.pdf';
        $html2pdf->Output(PDFS_PATH . $pdf_name, 'F');
    } catch (HTML2PDF_exception $e) {
        echo $e;
        exit;
    }
    return PDFS_PATH . $pdf_name;
}
Ejemplo n.º 3
0
import('delivery');
import('html');
import('contacts');
import('orders');
import('shipments');
import('forms');
import('contacts');
import('documents');
$order_id = $_GET['id'];
if (order_exists($order_id)) {
    $order = order_get($order_id);
    if ($order['PARTY_ID'] == $_SESSION['user']['PARTY_ID']) {
        $order_cart = unserialize($order['SESSION_SERILIALIZE']);
        $documents = documents_get($order_id);
        $shipment = shipment_get($order_id);
        if (!empty($shipment)) {
            if ($shipment['DESTINATION_CONTACT_MECH_ID'] == SHIPMENT_REQUISITION) {
                $address = 'Look at requisition files';
            } else {
                $address = contact_generate_string(contact_mech_get_attributes($shipment['DESTINATION_CONTACT_MECH_ID']));
            }
        }
    } else {
        $errors[] = sprintf('Order %d does not belong to you!', $order_id);
    }
} else {
    $errors[] = sprintf('Order %d does not exist!', $order_id);
}
$template = set_template('orders', 'view');
$link = THEME . 'template.php';
require_once $link;
Ejemplo n.º 4
0
					</li>
					<!-- <li>
						<a href="#requisition" for="requisition-address-radio">Requisition Address</a>
						<input type="radio" style="display: none;"  id="requisition-address-radio" name="address" value="requisition"/>
					</li> -->
					<li>
						<a href="#alternative" for="alternative-address-radio">Alternative Address</a>
						<input type="radio" style="display: none;"  id="alternative-address-radio" name="address" value="alternative"/>
					</li>
				</ul>

				<div class="tab-content">
					<div class="tab-pane active" id="company">
						<div class="well well-small">We are going to use your company address for delivery</div>
						<h5><?php 
echo contact_generate_string($contacts, '<br />');
?>
</h5>
					</div>
					<div class="tab-pane" id="requisition">
						<div class="well well-small">
							We are going to use the address from the uploaded files for delivery. <br />
							At least one requisition needs to be uploaded!
						</div>
					</div>
					<div class="tab-pane" id="alternative">
						<div class="well well-small">
							We are going to use the address filled
							in bellow for for delivery or select from
							the previously used addresses
						</div>