<tbody> <tr> <?php if (module_config::c('job_show_task_numbers', 1)) { ?> <td valign="top"> </td> <?php } ?> <td valign="top"> <input type="text" name="job_task[new][description]" id="task_desc_new" class="edit_task_description" value=""><?php if (class_exists('module_product', false)) { module_product::print_job_task_dropdown('new'); } ?> <a href="#" class="task_toggle_long_description ui-icon ui-icon-plus">»</a> <div class="task_long_description"> <textarea name="job_task[new][long_description]" id="task_long_desc_new" class="edit_task_long_description"></textarea> </div> </td> <td valign="top"> <input type="text" name="job_task[new][hours]" value="" size="3" style="width:25px;" onchange="setamount(this.value,'new');" onkeyup="setamount(this.value,'new');" id="task_hours_new"> </td> <td valign="top" nowrap=""> <?php echo currency('<input type="text" name="job_task[new][amount]" value="" id="newtaskamount" class="currency">'); ?>
<input type="text" name="invoice_invoice_item[<?php echo $invoice_item_id; ?> ][description]" value="<?php echo htmlspecialchars($invoice_item_data['custom_description'] ? $invoice_item_data['custom_description'] : $invoice_item_data['description']); ?> " style="width:90%;" class="edit_task_description" id="invoice_item_desc_<?php echo $invoice_item_id; ?> " data-id="<?php echo $invoice_item_id; ?> "><?php if (class_exists('module_product', false)) { // looks for class edit_task_description module_product::print_invoice_task_dropdown($invoice_item_id, $invoice_item_data); } ?> <br/> <textarea name="invoice_invoice_item[<?php echo $invoice_item_id; ?> ][long_description]" style="width:90%;"><?php echo htmlspecialchars($invoice_item_data['custom_long_description'] ? $invoice_item_data['custom_long_description'] : $invoice_item_data['long_description']); ?> </textarea> <?php if ($invoice_item_data['task_id']) { // echo htmlspecialchars($invoice_item_data['custom_description'] ? $invoice_item_data['custom_description'] : $invoice_item_data['description']); echo '<br/>';
public static function api_filter_product($hook, $response, $endpoint, $method) { $response['product'] = true; switch ($method) { case 'list': $search = isset($_REQUEST['search']) ? $_REQUEST['search'] : array(); $response['products'] = module_product::get_products($search); break; } return $response; }
'); $('#job_task_form')[0].submit();} return false;" class="delete ui-state-default ui-corner-all ui-icon ui-icon-trash" style="display:inline-block; float:right;">[x]</a> <?php } ?> <input type="text" class="edit_task_description" name="job_task[<?php echo $task_id; ?> ][description]" value="<?php echo htmlspecialchars($task_data['description']); ?> " id="task_desc_<?php echo $task_id; ?> " tabindex="10"><?php if (class_exists('module_product', false)) { module_product::print_job_task_dropdown($task_id, $task_data); } ?> </td> <td> <?php if ($task_data[$hours_prefix . 'hours'] != 0) { if ($task_data['manual_task_type'] == _TASK_TYPE_HOURS_AMOUNT && function_exists('decimal_time_out')) { $hours_value = decimal_time_out($task_data[$hours_prefix . 'hours']); } else { $hours_value = number_out($task_data[$hours_prefix . 'hours'], true); } } else { $hours_value = false; } if ($task_editable) {
} ?> <form action="" method="post" id="product_form"> <input type="hidden" name="_process" value="save_product" /> <input type="hidden" name="product_id" value="<?php echo $product_id; ?> " /> <?php module_form::set_required(array('fields' => array('name' => 'Name'))); module_form::prevent_exit(array('valid_exits' => array('.submit_button'))); $fieldset_data = array('heading' => array('type' => 'h3', 'title' => 'Product Information'), 'class' => 'tableclass tableclass_form tableclass_full', 'elements' => array()); $fieldset_data['elements'][] = array('title' => 'Name', 'fields' => array(array('type' => 'text', 'name' => 'name', 'value' => $product['name']))); $fieldset_data['elements'][] = array('title' => 'Category', 'fields' => array(array('type' => 'select', 'name' => 'product_category_id', 'options' => module_product::get_product_categories(), 'options_array_id' => 'product_category_name', 'value' => $product['product_category_id']))); $fieldset_data['elements'][] = array('title' => 'Hours/Quantity', 'fields' => array(array('type' => 'text', 'name' => 'quantity', 'value' => $product['quantity']))); $fieldset_data['elements'][] = array('title' => 'Amount', 'fields' => array(array('type' => 'currency', 'name' => 'amount', 'value' => $product['amount']))); $fieldset_data['elements'][] = array('title' => 'Description', 'fields' => array(array('type' => 'textarea', 'name' => 'description', 'value' => $product['description']))); $types = module_job::get_task_types(); $types['-1'] = _l('Default'); $fieldset_data['elements'][] = array('title' => 'Task Type', 'fields' => array(array('type' => 'select', 'name' => 'default_task_type', 'options' => $types, 'value' => isset($product['default_task_type']) ? $product['default_task_type'] : -1, 'blank' => false))); $fieldset_data['elements'][] = array('title' => 'Billable', 'fields' => array(array('type' => 'checkbox', 'name' => 'billable', 'value' => isset($product['billable']) ? $product['billable'] : 1))); $fieldset_data['elements'][] = array('title' => 'Taxable', 'fields' => array(array('type' => 'checkbox', 'name' => 'taxable', 'value' => isset($product['taxable']) ? $product['taxable'] : 1))); echo module_form::generate_fieldset($fieldset_data); unset($fieldset_data); $form_actions = array('class' => 'action_bar action_bar_center', 'elements' => array(array('type' => 'save_button', 'name' => 'butt_save', 'value' => _l('Save')), array('ignore' => !(int) $product_id, 'type' => 'delete_button', 'name' => 'butt_del', 'value' => _l('Delete')), array('type' => 'button', 'name' => 'cancel', 'value' => _l('Cancel'), 'class' => 'submit_button', 'onclick' => "window.location.href='" . $module->link_open(false) . "';"))); echo module_form::generate_form_actions($form_actions); ?>
<form action="" method="post"> <?php /** START TABLE LAYOUT **/ $table_manager = module_theme::new_table_manager(); $columns = array(); $columns['product_name'] = array('title' => _l('Product Name'), 'callback' => function ($product) { echo module_product::link_open($product['product_id'], true, $product); }, 'cell_class' => 'row_action'); $columns['product_category_name'] = array('title' => _l('Category Name')); $columns['quantity'] = array('title' => _l('Hours/Quantity')); $columns['amount'] = array('title' => _l('Amount'), 'callback' => function ($product) { echo dollar($product['amount']); }); if (module_product::can_i('edit', 'Products')) { $columns['bulk_action'] = array('title' => ' ', 'callback' => function ($product) { echo '<input type="checkbox" name="bulk_operation[' . $product['product_id'] . ']" value="yes">'; }); } $table_manager->set_id('product_list'); $table_manager->set_columns($columns); $table_manager->set_rows($products); $table_manager->pagination = true; $table_manager->print_table(); /** END TABLE LAYOUT **/ ?> </form>
'); $('#quote_task_form')[0].submit();} return false;" class="delete ui-state-default ui-corner-all ui-icon ui-icon-trash" style="display:inline-block; float:right;">[x]</a> <?php } ?> <input type="text" class="edit_task_description" name="quote_task[<?php echo $quote_task_id; ?> ][description]" value="<?php echo htmlspecialchars($task_data['description']); ?> " id="task_desc_<?php echo $quote_task_id; ?> " tabindex="10"><?php if (class_exists('module_product', false)) { module_product::print_quote_task_dropdown($quote_task_id, $task_data); } ?> </td> <td> <?php if ($task_data['hours'] != 0) { if ($task_data['manual_task_type'] == _TASK_TYPE_HOURS_AMOUNT && function_exists('decimal_time_out')) { $hours_value = decimal_time_out($task_data['hours']); } else { $hours_value = number_out($task_data['hours'], true); } } else { $hours_value = false; }
redirect_browser(_BASE_HREF); } $search = isset($_REQUEST['search']) ? $_REQUEST['search'] : array(); $product_categories = module_product::get_product_categories($search); $heading = array('title' => 'Product Categories', 'type' => 'h2', 'main' => true, 'button' => array()); if (module_product::can_i('create', 'Products')) { $heading['button'][] = array('title' => "Create New Category", 'type' => 'add', 'url' => module_product::link_open_category('new')); } print_heading($heading); ?> <form action="" method="post"> <?php /** START TABLE LAYOUT **/ $table_manager = module_theme::new_table_manager(); $columns = array(); $columns['product_name'] = array('title' => _l('Category Name'), 'callback' => function ($product) { echo module_product::link_open_category($product['product_category_id'], true, $product); }, 'cell_class' => 'row_action'); $table_manager->set_id('product_category_list'); $table_manager->set_columns($columns); $table_manager->set_rows($product_categories); $table_manager->pagination = true; $table_manager->print_table(); /** END TABLE LAYOUT **/ ?> </form>
<tr> <?php if ($show_task_numbers) { ?> <td valign="top" style="padding:0.3em 0;"> <input type="text" name="quote_task[new][task_order]" value="" id="next_task_number" size="3" class="edit_task_order no_permissions"> </td> <?php } ?> <td valign="top"> <input type="text" name="quote_task[new][description]" id="task_desc_new" class="edit_task_description no_permissions" value=""><?php if (class_exists('module_product', false)) { module_product::print_quote_task_dropdown('new'); } ?> <a href="#" class="task_toggle_long_description ui-icon ui-icon-plus">»</a> <div class="task_long_description"> <textarea name="quote_task[new][long_description]" id="task_long_desc_new" class="edit_task_long_description no_permissions"></textarea> </div> </td> <td valign="top"> <?php if ($quote['default_task_type'] == _TASK_TYPE_AMOUNT_ONLY) { // no hour input } else { if ($quote['default_task_type'] == _TASK_TYPE_QTY_AMOUNT) { ?>
<?php /** * Copyright: dtbaker 2012 * Licence: Please check CodeCanyon.net for licence details. * More licence clarification available here: http://codecanyon.net/wiki/support/legal-terms/licensing-terms/ * Deploy: 9809 f200f46c2a19bb98d112f2d32a8de0c4 * Envato: 4ffca17e-861e-4921-86c3-8931978c40ca * Package Date: 2015-11-25 02:55:20 * IP Address: 67.79.165.254 */ if (isset($_REQUEST['product_category_id']) && $_REQUEST['product_category_id'] != '') { $product_category_id = (int) $_REQUEST['product_category_id']; $product_category = module_product::get_product_category($product_category_id); include 'product_admin_category_edit.php'; } else { include 'product_admin_category_list.php'; }
<?php /** * Copyright: dtbaker 2012 * Licence: Please check CodeCanyon.net for licence details. * More licence clarification available here: http://codecanyon.net/wiki/support/legal-terms/licensing-terms/ * Deploy: 9809 f200f46c2a19bb98d112f2d32a8de0c4 * Envato: 4ffca17e-861e-4921-86c3-8931978c40ca * Package Date: 2015-11-25 02:55:20 * IP Address: 67.79.165.254 */ if (isset($_REQUEST['product_id']) && $_REQUEST['product_id'] != '') { $product_id = (int) $_REQUEST['product_id']; $product = module_product::get_product($product_id); include 'product_admin_edit.php'; } else { include 'product_admin_list.php'; }