Fix 0 quantity not displayed
[order_line_extra.git] / includes / bulk_updater.inc
1 <?php
2 require_once('includes/sql_set.inc');
3
4 class BulkUpdater extends OrderAction {
5         protected $priority_date;
6         protected $priority_time;
7         protected $hold_until_date;
8         protected $required_date;
9         protected $expiry_date;
10         protected $comment;
11
12         public function __construct(array $data) {
13                 parent::__construct($data);
14                 foreach(explode(' ', "priority_date priority_time hold_until_date required_date expiry_date comment") as $att) {
15                         $this->$att = $data['bulk'][$att];
16                 }
17         }
18
19         public function update() {
20                 foreach($this->detail_ids as $detail_id) {
21                         $set = new SqlSet();
22                         $set->addDatetime($this->priority_date, $this->priority_time, 'priority')
23                                         ->addDate($this->hold_until_date, 'hold_until_date')
24                                         ->addDate($this->required_date, 'required_date')
25                                         ->addDate($this->expiry_date, 'expiry_date')
26                                         ->add($this->comment, 'comment');
27
28                         db_query("UPDATE ".TB_PREF."sales_order_details
29                                                         SET {$set->toString()}
30                                                         WHERE id = $detail_id", "Problem update order details $detail_id");
31                 }
32         }
33 }
34 ?>