source: extensions/MyPiwiShop/admin/product.php @ 27781

Last change on this file since 27781 was 27781, checked in by Miklfe, 10 years ago
File size: 5.1 KB
Line 
1<?php
2defined('MPS_PATH') or die('Hacking attempt!');
3
4// delete option
5  if(isset($_POST['check'])) {
6 
7   foreach($_POST['check'] AS $delete_id) {
8   
9    pwg_query('
10    DELETE FROM '.MPS_PRODUCT_TABLE.'
11    WHERE id = '.$delete_id.'
12    ;');
13   
14    pwg_query('
15    DELETE FROM '.MPS_PROD_OPT_TABLE.'
16    WHERE product_id = '.$delete_id.'
17    ;');
18   }   
19   
20   $page['infos']=l10n('deleted');
21  }   
22
23//Add/Edit product
24  if(isset($_POST['product_add'])) {
25 
26  //Add product
27    if (empty($_POST['id'])) {
28       
29         $order = array();
30         $query ='
31         SELECT `order`
32         FROM '.MPS_PRODUCT_TABLE.'
33         ;';
34         
35         $result = pwg_query($query);
36         while($row = pwg_db_fetch_assoc($result)) {
37      $order[] = $row['order'];
38         }
39         if (count($order) == 0) {
40          $order = 1;
41         } else {
42          $order = max($order)+1;
43         }
44       
45         $product       = $_POST['product'];
46         $noteAdmin     = $_POST['noteAdmin'];
47         $price         = $_POST['price'];
48
49       
50     pwg_query('
51         INSERT into '.MPS_PRODUCT_TABLE.' (`order`,`product`,`noteAdmin`,`price`)
52         VALUE (\''.$order.'\',\''.$product.'\',\''.$noteAdmin.'\',\''.$price.'\');
53         ');
54         $prod = pwg_db_insert_id();
55   
56     if(isset($_POST['opt'])) {
57          $opt = $_POST['opt'];
58      $inserts = array();
59         
60      foreach ($opt as $opt_id) {
61       $inserts[] = array(
62        'opt_id' => $opt_id,
63        'product_id' => $prod,
64       );
65      }
66         
67      mass_inserts(
68      MPS_PROD_OPT_TABLE,
69      array_keys($inserts[0]),
70      $inserts
71      );
72     }
73         
74         $page['infos']=l10n('Product registered');
75    }
76       
77  //Edit product       
78    if(!empty($_POST['id'])) {
79       
80         $id            = $_POST['id'];
81         $product       = $_POST['product'];
82         $noteAdmin     = $_POST['noteAdmin'];
83         $price         = $_POST['price'];
84
85         pwg_query('
86         UPDATE '.MPS_PRODUCT_TABLE.'
87         SET product = \''.$product.'\',noteAdmin = \''.$noteAdmin.'\',price=\''.$price.'\'
88         WHERE id = '.$id.'
89         ;');
90   
91     pwg_query('
92         DELETE FROM '.MPS_PROD_OPT_TABLE.'
93         WHERE `product_id` IN ('.$id.')
94         ;');
95       
96         if(isset($_POST['opt'])) {
97          $opt          = $_POST['opt'];
98      $inserts  = array();
99         
100      foreach ($opt as $opt_id) {
101       $inserts[] = array(
102        'opt_id'         => $opt_id,
103        'product_id' => $id,
104       );
105      }
106         
107     mass_inserts(
108     MPS_PROD_OPT_TABLE,
109     array_keys($inserts[0]),
110     $inserts
111     );
112     }
113
114    $page['infos']=l10n('Edit');
115    }
116
117  }
118 
119// Change order
120  if(isset($_POST['newOrder'])) {
121   $newOrder = explode(",", $_POST['newOrder']);
122   $ex           = array_pop($newOrder);
123       
124        foreach( $newOrder as $order => $id ) {
125         $order = $order +1;
126
127     pwg_query('
128         UPDATE '.MPS_PRODUCT_TABLE.'
129         SET `order` = \''.$order.'\'
130         WHERE id = '.$id.'
131        ;');
132    }
133       
134    $page['infos']=l10n('the order is changed');
135  }
136
137if (isset($_POST['option_add'])) {
138         $order = array();
139         
140         $query ='SELECT *
141         FROM '.MPS_OPTION_TABLE.';';
142         $result = pwg_query($query);
143         
144         while($row = pwg_db_fetch_assoc($result)) {
145       $order[] = $row['order'];
146         }
147         
148         if (count($order) == 0) {
149          $order = 1;
150         } else {
151          $order = max($order)+1;
152         }
153       
154         $name          = $_POST['name'];
155     $type              = $_POST['type'];
156     $title             = $_POST['title'];
157         
158         if(isset($_POST['requi'])) {
159          $requi = $_POST['requi'];
160         } else {
161          $requi = 0;
162         }
163       
164         pwg_query('
165         INSERT into '.MPS_OPTION_TABLE.' (`name`,`type`,`titre`,`requi`,`order`)
166         VALUE (\''.$name.'\',\''.$type.'\',\''.$title.'\',\''.$requi.'\',\''.$order.'\')
167         ;');
168   
169         $select_id = pwg_db_insert_id();                       
170                       
171         if(isset($_POST['val'])) {
172         $val           = $_POST['val'];
173         
174      foreach($val as $val_ele) {
175           pwg_query('
176           INSERT into '.MPS_OPT_VAL_TABLE.' (`val` , `select_id`)
177           VALUE (\''.$val_ele.'\',\''.$select_id.'\')
178           ;');
179      }
180         
181         }
182       
183        echo('<div><div id="idlastopt" data-idlo="'.$select_id.'"></div></div>');
184  }
185
186// set product   
187  $query='
188  SELECT p.id, p.order, p.product, p.noteAdmin, p.price, o.name
189  FROM '.MPS_PRODUCT_TABLE.' AS p
190  LEFT JOIN '.MPS_PROD_OPT_TABLE.' AS op ON op.product_id = p.id
191  LEFT JOIN '.MPS_OPTION_TABLE.' AS o ON o.id = op.opt_id
192  ORDER BY p.order
193  ;';
194  $result = pwg_query($query);
195 
196  while($row = pwg_db_fetch_assoc($result)) {
197 
198   if (!isset($products[ $row['id']])) {
199        $products[$row['id']] = array(
200         'id'        => $row['id'],
201     'product'   => $row['product'],
202     'noteAdmin' => $row['noteAdmin'],
203     'price'     => $row['price'],
204          );
205   }
206   
207   $products[$row['id']]['option'][]=$row['name'];
208  }
209
210  $query='
211  SELECT `id`, `name`
212  FROM '.MPS_OPTION_TABLE.'
213  ;';
214  $result = pwg_query($query);
215  $option = array();
216 
217  while($row = pwg_db_fetch_assoc($result)) {
218   $option[$row['id']] = $row['name'];
219  }
220 
221  $select_type_opt=array(
222   'select'   =>'select',
223   'radio'    =>'radio',
224   'text'     =>'text',
225   'textarea' =>'textarea',
226   'checkbox' =>'checkbox',
227  );
228 
229//template assign
230  $template->assign(array(
231   'mps_product'         => $products, 
232   'mps_option'          => $option,
233   'mps_type_opt' => $select_type_opt,
234  ));
235 
236  $template->set_filename('mps_content', realpath(MPS_PATH . 'admin/template/product.tpl'));
Note: See TracBrowser for help on using the repository browser.