File: D:/HostingSpaces/SBogers10/verrassendveel.komma.pro/wwwroot/admin/php/products.php
<?php
/*
products.php
Mike Ontwerpt 2012
www.mikeontwerpt.nl
*/
function initProducts(){
$output = '';
if(isset($_POST['back'])){
if(isset($_POST['location'])){
$location = $_POST['location'];
header('location: '.$location);
}
else{
$output .= showDashboard();
}
}
else if(isset($_POST['sbm-add-product'])){
$output .= validateAddEditProduct('add');
}
else if(isset($_POST['sbm-edit-product'])){
$output .= validateAddEditProduct('edit');
}
else if(isset($_POST['askMoveToTrash'])){
$output .= askMoveToTrash();
}
else if(isset($_POST['moveToTrash'])){
$output .= moveToTrash();
}
else if(isset($_POST['update-modified'])){
$output .= updateModified();
}
else if(isset($_POST['do_submit'])){
if(isset($_POST['sort_what']) && $_POST['sort_what'] == 'instances'){
$output .= sbmChangeInstanceOrder();
}
else{
$output .= sbmChangeOrder();
}
}
else if(isset($_GET['sub'])){
$subpage = $_GET['sub'];
switch($subpage){
case 'add-product':
$output .= showFormAddEditProduct('add');
break;
case 'edit-product':
$output .= showFormAddEditProduct('edit');
break;
case 'manage-categories':
case 'delete-category':
$output .= manageCategories();
break;
case 'order-products':
$output .= showChangeOrder();
break;
case 'change-instance-order':
$output .= showChangeInstanceOrder();
break;
case 'extraleuk':
updateExtraleuk();
break;
case 'updatePublished':
updatePublished();
break;
case 'updateNew':
updateNew();
break;
default:
$output .= showDashboard();
}
}
else{
$output .= showDashboard();
}
return $output;
}
function showDashboard(){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
if(isset($_SESSION['addedit-product'])) unset($_SESSION['addedit-product']);
$output = '';
/* title */
$output .= '<h1>'.$siteLabels['products-title'].'</h1>';
//start with form for checkboxes
$output .= '<form action="" name="chkForm" method="post">';
/* buttons */
$output .= '<div class="submenu">';
//buttons
$output .= '<a href="./products/add-product/"><span class="btn176 btn176a proceed">'.$siteLabels['products-addproduct'].'</span></a>';
$output .= '<a href="./products/order-products/"><span class="btn176 btn176a">'.$siteLabels['products-orderproducts'].'</span></a>';
$output .= '<a href="./products/manage-categories/"><span class="btn176 btn176a">'.$siteLabels['products-managecategories'].'</span></a>';
$output .= '<input type="submit" name="askMoveToTrash" value="'.$siteLabels['products-removeproducts'].'" class="btn176 btn176b"/>';
$output .= '</div>';
/* content */
/* top row */
$output .= '<div class="itemlist-row itemlist-heading">';
$output .= '<div class="itemlist-single-column"> </div>';
$output .= '<div class="itemlist-double-column"><input type="checkbox" name="checkCtrl" value="checkAll" onClick="check_all(this);" class="itemlist-cbox">title</div>';
$output .= '<div class="itemlist-single-column">brand</div>';
$output .= '<div class="itemlist-single-column">pictures</div>';
$output .= '<div class="itemlist-single-column">price</div>';
$output .= '<div class="itemlist-single-column">discount</div>';
$output .= '<div class="itemlist-single-column status-column">likes</div>';
$output .= '<div class="itemlist-single-column">status</div>';
$output .= '<div class="itemlist-single-column itemlist-edit">edit</div>';
$output .= '</div>';
/* get info */
$query = 'SELECT p.id, p.catId, p.titleNL, p.isNew, p.published, p.extraleuk, p.price, p.brandId
FROM product_products as p, content_status as s
WHERE s.active = 1
AND s.itemId = p.id
AND s.linkname = "product_products"
ORDER BY p.productOrder DESC';
if($result = $mysqli->query($query)){
while($record = $result->fetch_assoc()){
//create productid
$id = $record['id'];
$catId = $record['catId'];
$brandId = $record['brandId'];
$extraleuk = $record['extraleuk'];
//categories
if($brandresult = $mysqli->query('SELECT title, brandCode FROM merken WHERE id = '.$brandId.' LIMIT 1')){
$brandrecord = $brandresult->fetch_assoc();
if($brandresult->num_rows == 0){
$brandCode = 'XX';
$brand = '-';
}
else
{
$brandCode = fromDatabase($brandrecord['brandCode']);
$brand = fromDatabase($brandrecord['title']);
}
}
$productId = '#'.$brandCode.$id;
//title
$titleNL = fromDatabase($record['titleNL']);
//categories
if($catresult = $mysqli->query('SELECT category FROM product_categories WHERE id = '.$catId.' LIMIT 1')){
$catrecord = $catresult->fetch_assoc();
if($catresult->num_rows == 0){
$category = 'uncategorized';
}
else
{
$category = fromDatabase($catrecord['category']);
}
}
else{
$category = '<span class="warning">uncategorized</span>';
}
//price
$price = $record['price'];
$temp = explode('.',$price);
isset($temp[1]) ? $displayCents = str_pad($temp[1], 2, STR_PAD_LEFT) : $displayCents = '00';
$displayPrice = '€ '.$temp[0].','.$displayCents;
//new and published
$new = $record['isNew'];
$published = $record['published'];
$new == 1 ? $updateNew = 0 : $updateNew = 1;
$published == 1 ? $updatePublished = 0 : $updatePublished = 1;
//numarticles
if($instanceResult = $mysqli->query( 'SELECT id FROM product_instances WHERE productId = '.$id)){
$numInstances = $instanceResult->num_rows;
}
else{
$numInstances = '<span class="itemlist-warning">0</span>';
}
//loves / modified
$loveResult = $mysqli->query('SELECT id FROM popular_likes WHERE productId = '.$id);
$numLoves = $loveResult->num_rows;
$modifiedResult = $mysqli->query('SELECT modified FROM popular_modified WHERE productId = '.$id.' LIMIT 1');
$modifiedRecord = $modifiedResult->fetch_assoc();
$modified = $modifiedRecord['modified'];
if($modifiedResult->num_rows == 0 || $modified == 0 || empty($modified)){
$displaymodified = '+0';
}
else if($modified > 0){
$displaymodified = '+'.$modified;
}
else if($modified < 0){
$displaymodified = '-'.$modified;
}
$output .= '<div class="itemlist-row">';
/* product id */
$output .= '<div class="itemlist-single-column">';
$output .= '<span class="itemlist-btn" id="itemlist-btn-photo"></span>';
$output .= '</div>';
/* title */
$output .= '<div class="itemlist-double-column">
<input type="checkbox" name="option[]" id="option" value="'.$id.'" class="itemlist-cbox"/>
'.$titleNL.'
</div>';
/* brand */
$output .= '<div class="itemlist-single-column">'.$brand.'</div>';
/* num instances */
$output .= '<div class="itemlist-single-column">'.$numInstances.'</div>';
/* price*/
if($price == 0) $displayPrice = '<span class="itemlist-warning">'.$displayPrice.'</span>';
$output .= '<div class="itemlist-single-column">'.$displayPrice.'</div>';
/* discount */
$output .= '<div class="itemlist-single-column">';
$discount[$id] = checkProductDiscount($id);
if($discount[$id]) $output .= ' (-'.$discount[$id].'%)';
$output .= '</div>';
/* empty */
$output .= '<div class="itemlist-single-column status-column">'.$numLoves.' / '.$displaymodified.'</div>';
/* status */
$output .= '<div class="itemlist-single-column">';
/* UPDATE NEW WITH JAVASCRIPT */
$output .= '<a href="./products/updateNew/'.$id.'"><span class="itemlist-btn';
if($new == 1) $output .= ' active';
//$output .='" id="itemlist-btn-new" onClick="getPage(\'jsbox\',\'js_updateproducts\',\'action=updateNew&id='.$id.'&val='.$updateNew.'\'); window.location.reload();"></span>';
$output .='" id="itemlist-btn-new"></span></a>';
/* UPDATE PUBLISHED WITH JAVASCRIPT */
$output .= '<a href="./products/updatePublished/'.$id.'"><span class="itemlist-btn';
if($published == 1) $output .= ' active';
//$output .= '" id="itemlist-btn-publish" onClick="getPage(\'jsbox\',\'js_updateproducts\',\'action=updatePublish&id='.$id.'&val='.$updatePublished.'\'); window.location.reload();"></span>';
$output .= '" id="itemlist-btn-publish"></span></a>';
//EXTRA LEUK
$output .= '<a href="./products/extraleuk/'.$id.'"><span class="itemlist-btn';
if($extraleuk == 1) $output .= ' active';
$output .= '" id="itemlist-btn-extraleuk"></span></a>';
$output .= '</div>';
/* edit */
$output .= '<div class="itemlist-single-column itemlist-edit">';
$output .= '<span class="itemlist-btn" id="itemlist-btn-discount"></span>';
$output .= '<span class="itemlist-btn" id="itemlist-btn-popular" onclick="togglePop(\''.$id.'\');"></span>';
$output .= '<a href="./products/change-instance-order/'.$id.'/" class="itemlist-btn" id="itemlist-btn-order"></a>';
$output .= '<a href="./products/edit-product/'.$id.'/" class="itemlist-btn" id="itemlist-btn-edit"></a>';
$output .= '</div>';
$output .= '<div class="clear"></div>';
$output .= '</div>';
//////////// edit populoar \\\\\\\\\\\\\
$output .= '<div class="itemlist-edit-popular-row" id="poprow'.$id.'">';
$output .= '<div class="itemlist-edit-popular-holder">';
//form
/*$output .= '<form action="" name="update-modified-'.$id.'" method="post">';
$output .= '<table class="edit-popular">';
$output .= '<tr>';
//title
$output .= '<td><h2>Popularity</h2></td>';
$output .= '<td>Likes: '.$numLoves.'<br />Manipulatie: '.$displaymodified.'</td>';
$output .= '</tr>';
$output .= '<tr>';
$output .= '<td>Wijzig manipulatie<br /><input type="text" name="modified" value="" class="txt" /></td>';
$output .= '<td> <br /><input type="submit" name="update-modified" value="update" class="btn176 proceed" /></td>';
$output .= '</tr>';
$output .= '</table>';
$output .= '<input type="hidden" name="productId" value="'.$id.'" />';
$output .= '</form>';*/
$output .= '</div>';
$output .= '<div class="clear"></div>';
$output .= '</div>';
}
}
$output .= '</form>';
return $output;
}
function showFormAddEditProduct($method){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
//set up session
if(!isset($_SESSION['addedit-product'])){
$_SESSION['addedit-product']['title-nl'] = '';
$_SESSION['addedit-product']['title-en'] = '';
$_SESSION['addedit-product']['description-nl'] = '';
$_SESSION['addedit-product']['description-en'] = '';
$_SESSION['addedit-product']['specs-nl'] = '';
$_SESSION['addedit-product']['specs-en'] = '';
$_SESSION['addedit-product']['price'] = '';
$_SESSION['addedit-product']['category'] = '';
$_SESSION['addedit-product']['brand'] = '';
$_SESSION['addedit-product']['tags'] = array();
$_SESSION['addedit-product']['shortcodes'] = array();
$_SESSION['addedit-product']['stockcodes'] = array();
}
/* if edit, fill session with current values */
if($method == 'edit'){
$editId = $_GET['sub2'];
//input fields
$query = 'SELECT titleNL, titleEN, descriptionNL, descriptionEN, specsNL, specsEN, price, catId, brandId
FROM product_products
WHERE id = "'.$editId.'" LIMIT 1';
if($result = $mysqli->query($query)){
$record = $result->fetch_assoc();
//fill input fields
$_SESSION['addedit-product']['title-nl'] = $record['titleNL'];
$_SESSION['addedit-product']['title-en'] = $record['titleEN'];
$_SESSION['addedit-product']['description-nl'] = $record['descriptionNL'];
$_SESSION['addedit-product']['description-en'] = $record['descriptionEN'];
$_SESSION['addedit-product']['specs-nl'] = $record['specsNL'];
$_SESSION['addedit-product']['specs-en'] = $record['specsEN'];
$_SESSION['addedit-product']['price'] = $record['price'];
$_SESSION['addedit-product']['category'] = $record['catId'];
$_SESSION['addedit-product']['brand'] = $record['brandId'];
}
//fill shortcodes
$shortcodeQuery = 'SELECT DISTINCT m.id AS mediaId, i.instanceOrder, i.color, i.shortcode, i.stockCode
FROM product_instances AS i, media_files AS m
WHERE m.shortcode = i.shortcode
AND i.productId = "'.$editId.'"
ORDER BY i.instanceOrder DESC';
if($shortcodeResult = $mysqli->query($shortcodeQuery)){
while($shortcodeRecord = $shortcodeResult->fetch_assoc()){
$mediaId = $shortcodeRecord['mediaId'];
$_SESSION['addedit-product']['shortcodes'][$mediaId] = $shortcodeRecord['shortcode'];
$_SESSION['addedit-product']['color'][$mediaId] = $shortcodeRecord['color'];
$_SESSION['addedit-product']['stockcodes'][$mediaId] = $shortcodeRecord['stockCode'];
}
}
//fill tags
if($searchtagResult = $mysqli->query('SELECT id, searchtag FROM product_searchtags WHERE productId = "'.$editId.'" ORDER BY timest DESC')){
while($searchtagRecord = $searchtagResult->fetch_assoc()){
$searchtagId = $searchtagRecord['id'];
$searchtag = $searchtagRecord['searchtag'];
$_SESSION['addedit-product']['tags'][$searchtagId] = $searchtag;
}
}
}
/////// end fill session with values //////
$output = '';
/* title */
$output .= '<h1>'.$siteLabels['products-title'].' › ';
if($method == 'add') $output .= $siteLabels['products-addproduct'].'</h1>';
if($method == 'edit') $output .= $siteLabels['products-editproduct'].'</h1>';
/**** S T A R T F O R M ****/
$output .= '<form action="" method="post">';
//left top column
$output .= '<h2>'.$siteLabels['products-formaddproduct-information'].'</h2>';
$output .= '<div class="single-column addproduct-lefttop">';
/* title (NL)*/
$output .= $siteLabels['products-formaddproduct-title-nl'].' *<br />';
$output .= '<input type="text" name="product-title-nl" value="'.$_SESSION['addedit-product']['title-nl'].'" class="txt" />';
/* category */
$output .= $siteLabels['products-formaddproduct-category'].' *<br />';
$output .= '<select name="product-category">';
$output .= '<option value="0">uncategorized</option>';
/* display categories */
$query = 'SELECT id,category
FROM product_categories
ORDER BY category';
if(!$result = $mysqli->query($query)){
//handle errors
$errors[] = $siteLabels['fm-somethingwentwrong'];
displayErrors($errors);
}
else{
//display output
while($record = $result->fetch_assoc()){
$catId = $record['id'];
$category = $record['category'];
$output .= '<option value="'.$catId.'"';
if($catId == $_SESSION['addedit-product']['category']) $output .= ' selected';
$output .= '>'.$category.'</option>';
}
}
$output .= '</select>';
$output .= '</div>';
$output .= '<div class="single-column addproduct-lefttop">';
/* title (EN)*/
$output .= $siteLabels['products-formaddproduct-title-en'].' *<br />';
$output .= '<input type="text" name="product-title-en" value="'.$_SESSION['addedit-product']['title-en'].'" class="txt" />';
/* price */
$output .= $siteLabels['products-formaddproduct-price'].' *<br />';
$output .= '<input type="text" name="product-price" value="'.$_SESSION['addedit-product']['price'].'" class="txt" />';
$output .= '</div>';
$output .= '<div class="single-column addproduct-lefttop">';
/* brand */
$output .= $siteLabels['products-formaddproduct-brand'].' *<br />';
$output .= '<select name="product-brand">';
/* display brands */
$query = 'SELECT id,title
FROM merken
ORDER BY title';
if(!$result = $mysqli->query($query)){
//handle errors
$errors[] = $siteLabels['fm-somethingwentwrong'];
displayErrors($errors);
}
else{
//display output
while($record = $result->fetch_assoc()){
$brandId = $record['id'];
$brand = $record['title'];
$output .= '<option value="'.$brandId.'"';
if($brandId == $_SESSION['addedit-product']['brand']) $output .= ' selected';
$output .= '>'.$brand.'</option>';
}
}
$output .= '</select>';
$output .= '</div>';
$output .= '<div class="clear"></div>';
//description middle top column
$output .= '<div class="double-column">';
/* Product description (NL) */
$output .= $siteLabels['products-formaddproduct-description-nl'].' *<br />';
$output .= '<textarea id="product-description-nl" name="product-description-nl" class="tinymce">'.$_SESSION['addedit-product']['description-nl'].'</textarea>';
/* Product specifications (NL) */
$output .= $siteLabels['products-formaddproduct-specs-nl'].' *<br />';
$output .= '<textarea id="product-specs-nl" name="product-specs-nl" class="tinymce">'.$_SESSION['addedit-product']['specs-nl'].'</textarea>';
$output .= '</div>';
//specs right top column
$output .= '<div class="double-column">';
/* Product description (EN) */
$output .= $siteLabels['products-formaddproduct-description-en'].' *<br />';
$output .= '<textarea id="product-description-en" name="product-description-en" class="tinymce">'.$_SESSION['addedit-product']['description-en'].'</textarea>';
/* Product specifications (EN) */
$output .= $siteLabels['products-formaddproduct-specs-en'].' *<br />';
$output .= '<textarea id="product-specs-en" name="product-specs-en" class="tinymce">'.$_SESSION['addedit-product']['specs-en'].'</textarea>';
$output .= '</div>';
$output .= '<div class="clear"></div>';
/* search tags */
$output .= 'Searchtags (comma-seperated) <br />';
$output .= '<input type="text" name="search-tags" value="" class="tagstxt" />';
$output .= '<div class="triple-column" id="search-tags-holder">';
foreach($_SESSION['addedit-product']['tags'] as $key => $value){
$output .= '<span class="tagBox"><span class="tagBox-delete" onClick="getPage(\'search-tags-holder\',\'js_updateTagsSession\',\'action=remove&sessionname=addedit-product&key='.$key.'\');">×</span>'.$value.'</span>';
}
$output .= '</div>';
$output .= '<div class="clear"></div>';
//horizantal rule
$output .= '<hr />';
$output .= '<div class="double-column">';
$output .= '<h2>'.$siteLabels['products-formaddproduct-images'].'</h2>';
/* Library help */
// $output .= '<span class="media-help">Find your image in the media library. Click on an image to insert it in a field. The code that appears stands for the image.</span>';
/* image */
$output .= '<div class="double-column" id="form-images-holder">';
//javascript call goes here
$output .= '</div>';
$output .= '<script type="text/javascript">getPage("form-images-holder","js_media","action=showSessionImages&update=0&sessionname=addedit-product");</script>';
//clear float
$output .= '<div class="clear"></div>';
$output .= '</div>';
$output .= '<div class="triple-column">';
/* media lib */
$output .= '<h2>Media library</h2>';
$output .= '<div class="triple-column" id="lib-holder">';
//javascript call goes here
$output .= '</div>';
$output .= '<script type="text/javascript">getPage("lib-holder","js_media","sessionname=addedit-product");</script>';
$output .= '</div>';
$output .= '<div class="clear"></div>';
$output .= '<hr />';
$output .= '<div class="double-column">';
if($method == 'add') $output .= '<input type="submit" name="sbm-add-product" value="'.$siteLabels['products-addproduct'].'" class="btn176 proceed"/>';
if($method == 'edit') $output .= '<input type="hidden" name="editId" value="'.$editId.'"/>';
if($method == 'edit') $output .= '<input type="submit" name="sbm-edit-product" value="'.$siteLabels['products-editproduct'].'" class="btn176 proceed"/>';
if($method == 'add') $output .= '<input type="hidden" name="location" value="../"/>';
if($method == 'edit') $output .= '<input type="hidden" name="location" value="../../"/>';
$output .= '<input type="submit" name="back" value="'.$siteLabels['form-cancel'].'" class="btn176"/>';
$output .= '</div>';
$output .= '<div class="clear"></div>';
//info
$output .= '<table>';
$output .= '<tr>';
//required
$output .= '<td class="short">*</td><td class="long"><em>'.$siteLabels['form-required'].'</em></td>';
$output .= '</tr>';
$output .= '<table>';
$output .= '</form>';
return $output;
}
function validateAddEditProduct($method){
/* prevend double products with reloading page (session has just been deleted)*/
if(isset($_SESSION['addedit-product']['title-nl'])){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
/* ******************* */
/* validate add product */
#1 get input
#2 empty input ?
#3 update session tags ?
#4 return to dashboard
/* ******************* */
#1 get input & add to session
$titleNL = $_SESSION['addedit-product']['title-nl'] = $_POST['product-title-nl'];
$titleEN = $_SESSION['addedit-product']['title-en'] = $_POST['product-title-en'];
$descriptionNL = $_SESSION['addedit-product']['description-nl'] = $_POST['product-description-nl'];
$descriptionEN = $_SESSION['addedit-product']['description-en'] = $_POST['product-description-en'];
$specsNL = $_SESSION['addedit-product']['specs-nl'] = $_POST['product-specs-nl'];
$specsEN = $_SESSION['addedit-product']['specs-en'] = $_POST['product-specs-en'];
$price = $_SESSION['addedit-product']['price'] = $_POST['product-price'];
$category = $_SESSION['addedit-product']['category'] = $_POST['product-category'];
$brandId = $_SESSION['addedit-product']['brand'] = $_POST['product-brand'];
#2 empty input ?
if(empty($titleNL) || empty($titleEN) || empty($descriptionNL) || empty($descriptionEN) || empty($specsNL) || empty($specsEN) || empty($price)){
//feedback fill in required fields
$errors[] = $siteLabels['fm-emptyrequiredfields'];
}
#3 update session tags ?
$tagsInput = $_POST['search-tags'];
if(!empty($tagsInput)){
$arr = explode(',',$tagsInput);
foreach($arr as $key => $value){
if(!empty($value) && !existInArray($value,$_SESSION['addedit-product']['tags'])){
$_SESSION['addedit-product']['tags'][] = $value;
}
}
}
#4 valid price ?
$forbidden = array('!','@','#','$','%','^','&','*','(',')','-','+','=','_','{','}','[',']',':',';','"','\'','<','>','?','/');
foreach($forbidden as $i => $val){
$price=str_replace($val,'',$price); //replaces "," with "."
}
if(!empty($price)){
$price=str_replace(',','.',$price); //replaces "," with "."
$price=str_replace('€','',$price); //replaces "," with "."
$price = trim($price);
$price = $_SESSION['addedit-product']['price'] = number_format($price, 2, '.', '');
$pricecheckpattern = "#^[0-9]{1,3}\.[0-9]{2}$#";
if (preg_match($pricecheckpattern,$price)==0){
$errors[] = 'err: '.$price;
}
}
// VALID ?
if(isset($errors)){
displayErrors($errors);
return showFormAddEditProduct($method);
}
else{
//prepare for database
$dbTitleNL = inDatabase($titleNL);
$dbTitleEN = inDatabase($titleEN);
$dbDescriptionNL = inDatabase($descriptionNL);
$dbDescriptionEN = inDatabase($descriptionEN);
$dbSpecsNL = inDatabase($specsNL);
$dbSpecsEN = inDatabase($specsEN);
/* MANAGE DATABASE "ADD" */
if($method == 'add'){
#1 check for Product Order
$productOrder = 1;
$orderQuery = 'SELECT productOrder FROM product_products ORDER BY productOrder DESC LIMIT 1';
if($orderResult = $mysqli->query($orderQuery)){
if($orderResult->num_rows > 0){
$orderRecord = $orderResult->fetch_assoc();
$latestOrder = $orderRecord['productOrder'];
$productOrder = $latestOrder+1;
}
}
#2 product query
$query = 'INSERT INTO product_products(titleNL, titleEN, descriptionNL, descriptionEN, specsNL, specsEN, price, catId, brandId, productOrder, timest)
VALUES("'.$dbTitleNL.'","'.$dbTitleEN.'","'.$dbDescriptionNL.'","'.$dbDescriptionEN.'","'.$dbSpecsNL.'","'.$dbSpecsEN.'",'.$price.','.$category.','.$brandId.','.$productOrder.','.time().')';
if(!$result = $mysqli->query($query)){
//handle errors
$errors[] = $siteLabels['fm-somethingwentwrong'].$mysqli->error;
displayErrors($errors);
return showFormAddEditProduct($method);
}
else{
//get product Id
$productId = $mysqli->insert_id;
//product succesfully added so add a status
$mysqli->query('INSERT INTO content_status ( linkname, itemId, active, timest) VALUES("product_products","'.$productId.'","1",'.time().')');
/*
now we have to create a product for the instances
Productcode = "BRANDCODE(2)" + "BRANDCODE(3)" + "PRODUCTID(3)" + "ID(3)"
*/
//get brandCode
$brandCode = 'XX';
if($brandResult = $mysqli->query('SELECT brandCode FROM merken WHERE id = '.$brandId.' LIMIT 1')){
$brandRecord = $brandResult->fetch_assoc();
$brandCode = substr($brandRecord['brandCode'],0,2);
}
$catCode = str_pad($category, 3, '0', STR_PAD_LEFT);
$productCode = str_pad($productId, 3, '0', STR_PAD_LEFT);
$instance_prefix = $brandCode.$catCode.$productCode;
$newInstanceId = 1;
#4 check if there are already instances of this product && if so, get latest
/*$existsQuery = 'SELECT id FROM product_instances WHERE id LIKE "'.$instance_prefix.'%" ORDER BY id DESC LIMIT 1';
if(!$existsResult = $mysqli->query($existsQuery)){
//handle errors
$errors[] = $siteLabels['fm-somethingwentwrong'].$mysqli->error;
displayErrors($errors);
return showFormAddEditProduct($method);
}
else{
if($existsResult->num_rows > 0){
$existsRecord = $existsResult->fetch_assoc();
$latestId = $existsRecord['id'];
$newInstanceId = $latestId+1;
}*/
#5 check for instanceOrder
$instanceOrder = 1;
/*$orderQuery = 'SELECT instanceOrder FROM product_instances WHERE productId = "'.$productId.'" ORDER BY instanceOrder DESC LIMIT 1';
if(!$orderResult = $mysqli->query($orderQuery)){
//handle errors
}
else{
if($orderResult->num_rows > 0){
$orderRecord = $orderResult->fetch_assoc();
$latestOrder = $orderRecord['instanceOrder'];
$instanceOrder = $latestOrder+1;
}
}*/
$addInstanceId = str_pad($newInstanceId, 3, '0', STR_PAD_LEFT);
$instanceCode = $instance_prefix.$addInstanceId;
/* Prepare Queries */
#5 instances queries
if(isset($_SESSION['addedit-product']['shortcodes'])){
foreach($_SESSION['addedit-product']['shortcodes'] as $i => $shortcode){
/* generate id */
$color = $_SESSION['addedit-product']['color'][$i];
$stockcode = $_SESSION['addedit-product']['stockcodes'][$i];
$queries[] = 'INSERT INTO product_instances(instanceCode, stockCode, productId, shortcode, color, instanceOrder)
VALUES("'.$instanceCode.'","'.$stockcode.'",'.$productId.',"'.$shortcode.'","'.$color.'",'.$instanceOrder.')';
$newInstanceId++;
$addInstanceId = str_pad($newInstanceId, 3, '0', STR_PAD_LEFT);
$instanceCode = $instance_prefix.$addInstanceId;
$instanceOrder++;
}
}
#3 add search tags
if(isset($_SESSION['addedit-product']['tags'])){
// for every tag in session
$addedTag = array();
foreach($_SESSION['addedit-product']['tags'] as $i => $tag){
//else insert in db
if(!existInArray($tag, $addedTag)){
$queries[] = 'INSERT INTO product_searchtags(productId, searchtag, timest)
VALUES('.$productId.',"'.$tag.'",'.time().')';
$addedTag[$i] = $tag;
}
}
}
// Set autocommit to FALSE
$mysqli->autocommit(FALSE);
foreach($queries as $query)
{
if(!$mysqli->query($query))
{
$errors[] = $siteLabels['fm-somethingwentwrong'].$mysqli->error;
}
}
// ROLLBACK of COMMIT
if(isset($errors))
{
$mysqli->rollback();
displayErrors($errors);
return showDashboard();
//header('location: ../');
}
else
{
$mysqli->commit();
//unset product session
unset($_SESSION['addedit-product']);
//display feedback
$_SESSION['feed-msg'] = '<span class="fm-suc"><span class="fm-suc-v">√</span>jeej</span>';
//return showDashboard();
header('location: ../');
}
//}
}
}
/* MANAGE DATABASE "EDIT" */
if($method == 'edit'){
$editId = $_POST['editId'];
if(!empty($editId)){
#1 Update Products table
$query = 'UPDATE product_products SET titleNL="'.$dbTitleNL.'", titleEN="'.$dbTitleEN.'", descriptionNL="'.$dbDescriptionNL.'",
descriptionEN="'.$dbDescriptionEN.'", specsNL="'.$dbSpecsNL.'", specsEN="'.$dbSpecsEN.'", price="'.$price.'", catId="'.$category.'", brandId="'.$brandId.'"
WHERE id = "'.$editId.'" LIMIT 1';
if(!$result = $mysqli->query($query)){
//handle errors
$errors[] = $siteLabels['fm-somethingwentwrong'].$mysqli->error;
displayErrors($errors);
return showFormAddEditProduct($method);
}
else{
#2 Update Instances
// delete all instances
// add new ones
// if some query goes wrong -> rollback();
// delete all instances
$queries[] = 'DELETE FROM product_instances WHERE productId = "'.$editId.'"';
$productId = $editId;
$brandCode = 'XX';
if($brandResult = $mysqli->query('SELECT brandCode FROM merken WHERE id = '.$brandId.' LIMIT 1')){
$brandRecord = $brandResult->fetch_assoc();
$brandCode = substr($brandRecord['brandCode'],0,2);
}
$catCode = str_pad($category, 3, '0', STR_PAD_LEFT);
$productCode = str_pad($productId, 3, '0', STR_PAD_LEFT);
$instance_prefix = $brandCode.$catCode.$productCode;
$newInstanceId = 1;
$addInstanceId = str_pad($newInstanceId, 3, '0', STR_PAD_LEFT);
$instanceCode = $instance_prefix.$addInstanceId;
$instanceOrder = 1;
// add new ones
if(isset($_SESSION['addedit-product']['shortcodes'])){
foreach($_SESSION['addedit-product']['shortcodes'] as $i => $shortcode){
/* generate id */
$color = $_SESSION['addedit-product']['color'][$i];
$stockcode = $_SESSION['addedit-product']['stockcodes'][$i];
$queries[] = 'INSERT INTO product_instances(instanceCode, stockCode, productId, shortcode, color, instanceOrder)
VALUES("'.$instanceCode.'","'.$stockcode.'",'.$productId.',"'.$shortcode.'","'.$color.'",'.$instanceOrder.')';
$newInstanceId++;
$addInstanceId = str_pad($newInstanceId, 3, '0', STR_PAD_LEFT);
$instanceCode = $instance_prefix.$addInstanceId;
$instanceOrder++;
}
}
else{
$errors[] = $siteLabels['fm-somethingwentwrong'];
}
#3 Update tags
// delete all searchtags
// add new ones
// if some query goes wrong -> rollback();
$queries[] = 'DELETE FROM product_searchtags WHERE productId = "'.$productId.'"';
if(isset($_SESSION['addedit-product']['tags'])){
// for every tag in session
$addedTag = array();
foreach($_SESSION['addedit-product']['tags'] as $i => $tag){
//else insert in db
if(!existInArray($tag, $addedTag)){
$queries[] = 'INSERT INTO product_searchtags(productId, searchtag, timest)
VALUES('.$productId.',"'.$tag.'",'.time().')';
$addedTag[$i] = $tag;
}
}
}
// Set autocommit to FALSE
$mysqli->autocommit(FALSE);
//check for commit or rollback
foreach($queries as $query)
{
if(!$mysqli->query($query))
{
$errors[] = $siteLabels['fm-somethingwentwrong'].$mysqli->error;
}
}
// ROLLBACK of COMMIT
if(isset($errors))
{
$mysqli->rollback();
displayErrors($errors);
//return showDashboard();
header('location: ../../');
}
else
{
//update instances
$mysqli->commit();
//unset product session
unset($_SESSION['addedit-product']);
//display feedback
$_SESSION['feed-msg'] = '<span class="fm-suc"><span class="fm-suc-v">√</span>jeej</span>';
//return showDashboard();
header('location: ../../');
}
#3 Update Tags
}
}
else{
//handle error empty editId
$errors[] = $siteLabels['fm-somethingwentwrong'];
displayErrors($errors);
return showDashboard();
}
}
}
}
}
/** Manage categories **/
function manageCategories(){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
//if delete category
if($_GET['sub'] == 'delete-category'){
// get id
$id = $_GET['sub2'];
//delete from DB
$queries[] = 'UPDATE product_products SET catId = 0 WHERE catId = '.$id.' LIMIT 1';
$queries[] = 'DELETE FROM product_categories WHERE id = '.$id.' LIMIT 1';
// Set autocommit to FALSE
$mysqli->autocommit(FALSE);
foreach($queries as $query)
{
if(!$mysqli->query($query))
{
$errors[] = $siteLabels['fm-somethingwentwrong'].$mysqli->error;
}
}
// ROLLBACK of COMMIT
if(isset($errors))
{
$mysqli->rollback();
displayErrors($errors);
}
else
{
$mysqli->commit();
}
//header
header('location: ../../manage-categories/');
}
$output = '';
/* title */
$output .= '<h1>'.$siteLabels['products-title'].' › '.$siteLabels['products-managecategories'].'</h1>';
if(isset($_POST['sbm-add-categorie'])){
$category = $_POST['new-category'];
if(!empty($category)){
//add category to database
$query = 'INSERT INTO product_categories(category,timest)VALUES("'.$category.'",'.time().')';
if(!$result = $mysqli->query($query)){
//handle errors
$errors[] = $siteLabels['fm-somethingwentwrong'];
displayErrors($errors);
}
}
else{
$errors[] = $siteLabels['fm-emptyonefields'];
displayErrors($errors);
}
}
/* form */
$output .= '<form action="" method="post">';
$output .= '<div class="single-column">';
$output .= 'Add categorie';
$output .= '<input type="text" name="new-category" value="" class="txt" />';
$output .= '<input type="submit" name="sbm-add-categorie" value="'.$siteLabels['products-addcategory'].'" class="btn176 proceed"/>';
$output .= '<input type="hidden" name="location" value="../"/>';
$output .= '<input type="submit" name="back" value="'.$siteLabels['form-back'].'" class="btn176"/>';
$output .= '</div>';
$output .= '</form>';
$output .= '<div class="clear"></div>';
$output .= '<br /><br />';
/* display categories */
$query = 'SELECT id,category,timest
FROM product_categories
ORDER BY category';
if(!$result = $mysqli->query($query)){
//handle errors
$errors[] = $siteLabels['fm-somethingwentwrong'];
displayErrors($errors);
}
else{
//display output
$output .= '<div class="double-column">';
while($record = $result->fetch_assoc()){
$catId = $record['id'];
$category = $record['category'];
$output .= '<span class="catBox"><a href="./products/delete-category/'.$catId.'/"><span class="tagBox-delete">×</span></a>'.$category.'</span>';
}
$output .= '</div>';
}
$output .= '<div class="clear"></div>';
$output .= '<br /><br />';
$output .= '<hr/>';
return $output;
}
/** Manage move to trash **/
function askMoveToTrash(){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
if(isset($_POST['option'])){
$output = '';
//ask the question
$output .= $siteLabels['products-movetotrash-areyousure'].'<br /><br />';
foreach($_POST['option'] as $productId){
//get info
/* get info */
$query = 'SELECT p.id, p.catId, p.titleNL, p.price
FROM product_products as p
WHERE p.id = '.$productId.'
LIMIT 1';
if($result = $mysqli->query($query)){
$record = $result->fetch_assoc();
//create productid
$id = $record['id'];
$catId = $record['catId'];
$productId = '#'.$catId.$id;
//title and category
$titleNL = fromDatabase($record['titleNL']);
//price
$price = $record['price'];
$temp = explode('.',$price);
isset($temp[1]) ? $displayCents = str_pad($temp[1], 2, STR_PAD_LEFT) : $displayCents = '00';
$displayPrice = '€ '.$temp[0].','.$displayCents;
//category
if($catresult = $mysqli->query('SELECT category FROM product_categories WHERE id = '.$catId.' LIMIT 1')){
$catrecord = $catresult->fetch_assoc();
if($catresult->num_rows == 0){
$category = 'uncategorized';
}
else
{
$category = fromDatabase($catrecord['category']);
}
}
else{
$category = '<span class="warning">uncategorized</span>';
}
//numarticles
if($instanceResult = $mysqli->query( 'SELECT id FROM product_instances WHERE productId = '.$id)){
$numInstances = $instanceResult->num_rows;
}
else{
$numInstances = '<span class="itemlist-warning">0</span>';
}
//show the articles
$output .= '<div class="itemlist-row">';
/* product id */
$output .= '<div class="itemlist-single-column">';
$output .= '<span class="itemlist-btn" id="itemlist-btn-photo"></span> '.$productId;
$output .= '</div>';
/* title */
$output .= '<div class="itemlist-double-column">'.$titleNL.'</div>';
/* num instances */
$output .= '<div class="itemlist-single-column">'.$numInstances.'</div>';
/* price*/
if($price == 0) $displayPrice = '<span class="itemlist-warning">'.$displayPrice.'</span>';
$output .= '<div class="itemlist-single-column">'.$displayPrice.'</div>';
/* discount */
$output .= '<div class="itemlist-single-column">actie 5</div>';
/* empty */
$output .= '<div class="itemlist-single-column">'.$category.'</div>';
/* status */
$output .= '<div class="itemlist-single-column">';
$output .= '</div>';
/* edit */
$output .= '<div class="itemlist-single-column itemlist-edit">';
$output .= '</div>';
$output .= '<div class="clear"></div>';
$output .= '</div>';
}
}
$output .= '<div class="clear"></div>';
$output .= '<br /><br />';
$output .= '<form action="" name="moveToTrash" method="post" enctype="multipart/form-data">';
foreach($_POST['option'] as $productId){
$output .= '<input type="hidden" name="products[]" value="'.$productId.'" />';
}
$output .= '<input type="submit" name="moveToTrash" value="'.$siteLabels['form-yes'].'" class="btn176"/>';
$output .= '<input type="hidden" name="location" value="../"/>';
$output .= '<input type="submit" name="back" value="'.$siteLabels['form-no'].'" class="btn176 proceed"/>';
$output .= '</form>';
return $output;
}
else{
$errors[] = $siteLabels['fm-nothingselected'];
displayErrors($errors);
//return showDashboard();
header('location: ./');
}
}
function moveToTrash(){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
if(isset($_POST['products'])){
$output = '';
foreach($_POST['products'] as $productId){
/* For each product; change content status to 0 */
$queries[] = 'UPDATE content_status SET active = 0 WHERE itemId ='.$productId.' AND linkname = "product_products"';
}
// Set autocommit to FALSE
$mysqli->autocommit(FALSE);
foreach($queries as $query)
{
if(!$mysqli->query($query))
{
$errors[] = $siteLabels['fm-somethingwentwrong'];
}
}
// ROLLBACK of COMMIT
if(isset($errors))
{
$mysqli->rollback();
displayErrors($errors);
}
else
{
$mysqli->commit();
$msg = str_replace('[numitems]', count($_POST['products']), $siteLabels['fm-itemsmovedtotrash']);
$_SESSION['feed-msg'] = '<span class="fm-suc"><span class="fm-suc-v">√</span>'.$msg.'</span>';
//return showDashboard();
header('location: ./');
}
}
}
/* CHANGE ORDER */
function showChangeOrder(){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
$output = '';
/* title */
$output .= '<h1>'.$siteLabels['products-title'].' › '.$siteLabels['products-changeorder'].'</h1>';
$output .= '<div class="double-column">';
//$output .= $siteLabels['changeOrderHelp'];
if(!isset($message)) $message = '';
//$output .= '<div id="message-box">'.$message.' Waiting for sortation submission...</div>';
$output .= '<form action="'.$_SERVER['REQUEST_URI'].'" id="dd-form" name="dd-form" method="post">';
/* $output .= '<p><input type="checkbox" value="1" name="auto_submit" id="auto_submit"';
if(isset($_POST['auto_submit'])) {
if($_POST['auto_submit']) { $output .= 'checked="checked"'; }
}
$output .= '/> <label for="auto_submit">Automatically submit on drop event</label></p>';*/
$output .= '<ul id="sortable-list">';
$order = array();
$count = 1;
//Get Info for the list
$query = 'SELECT p.id, p.catId, p.titleNL, p.isNew, p.published, p.price, p.productOrder
FROM product_products as p, content_status as s
WHERE s.active = 1
AND s.itemId = p.id
AND s.linkname = "product_products"
ORDER BY p.productOrder DESC';
$result = $mysqli->query($query);
while($item = $result->fetch_assoc())
{
//create productid
$id = $item['id'];
$catId = $item['catId'];
$productId = '#'.$catId.$id;
$output .= '<li title="'.$item['id'].'">'.$productId.' '.$item['titleNL'].'</li>';
$order[] = $item['productOrder'];
}
$output .= '</ul>';
$output .= '<br />';
$output .= '<input type="hidden" name="sort_order" id="sort_order" value="'.implode(',',$order).'" />';
$output .= '<input type="hidden" name="sort_what" value="products" />';
$output .= '<input type="submit" name="do_submit" value="'.$siteLabels['form-save'].'" class="btn176 proceed" />';
$output .= '<input type="hidden" name="location" value="../"/>';
$output .= '<input type="submit" name="back" value="'.$siteLabels['form-back'].'" class="btn176" />';
$output .= '</form>';
$output .= '</div>';
$output .= '<script type="text/javascript"> initSortableList(); </script>';
return $output;
}
function sbmChangeOrder(){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
/* split the value of the sortation */
$ids = explode(',',$_POST['sort_order']);
/* run the update query for each id */
foreach($ids as $index=>$id) {
$id = (int) $id;
if($id != '') {
$queries[] = 'UPDATE product_products SET productOrder = '.($index + 1).' WHERE id = '.$id.' LIMIT 1';
}
}
// Set autocommit to FALSE
$mysqli->autocommit(FALSE);
foreach($queries as $query)
{
if(!$mysqli->query($query))
{
$errors[] = $siteLabels['fm-somethingwentwrong'];
}
}
// ROLLBACK of COMMIT
if(isset($errors))
{
$mysqli->rollback();
displayErrors($errors);
//return showDashboard();
header('location: ../');
}
else
{
$mysqli->commit();
$_SESSION['feed-msg'] = '<span class="fm-suc"><span class="fm-suc-v">√</span>'.$siteLabels['fm-changeordersucces'].'</span>';
// return showDashboard();
header('location: ../');
}
}
/////////////////////////// ORDER INSTANCES \\\\\\\\\\\\\\\\\\\\\\\\\
function showChangeInstanceOrder(){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
$productId = $_GET['sub2'];
$output = '';
/* title */
$output .= '<h1>'.$siteLabels['products-title'].' › '.$siteLabels['products-changeorder'].'</h1>';
$output .= '<div class="double-column">';
//$output .= $siteLabels['changeOrderHelp'];
if(!isset($message)) $message = '';
//$output .= '<div id="message-box">'.$message.' Waiting for sortation submission...</div>';
$output .= '<form action="'.$_SERVER['REQUEST_URI'].'" id="dd-form" name="dd-form" method="post">';
/* $output .= '<p><input type="checkbox" value="1" name="auto_submit" id="auto_submit"';
if(isset($_POST['auto_submit'])) {
if($_POST['auto_submit']) { $output .= 'checked="checked"'; }
}
$output .= '/> <label for="auto_submit">Automatically submit on drop event</label></p>';*/
$output .= '<ul id="sortable-thumb">';
$order = array();
$count = 1;
//Get Info for the list
//fill shortcodes
$query = 'SELECT DISTINCT m.id AS mediaId, m.cp_thumb, i.id AS instanceId, i.instanceOrder, i.color, i.shortcode, i.stockCode
FROM product_instances AS i, media_files AS m
WHERE m.shortcode = i.shortcode
AND i.productId = "'.$productId.'"
ORDER BY i.instanceOrder DESC';
if($result = $mysqli->query($query)){
while($item = $result->fetch_assoc())
{
//create productid
$url = $item['cp_thumb'];
$shortcode = $item['shortcode'];
$output .= '<li title="'.$item['instanceId'].'">';
$output .= '<div class="medialib-thumb-holder">';
$output .= '<span class="medialib-thumb-image">';
$output .= '<img src="../images/uploads/thumb/'.$url.'" alt="'.$shortcode.'" />';
$output .= '</span>';
$output .= '</div>';
$output .= '</li>';
$order[] = $item['instanceOrder'];
}
$output .= '</ul>';
$output .= '<br />';
$output .= '<input type="hidden" name="sort_order" id="sort_order" value="'.implode(',',$order).'" />';
$output .= '<input type="hidden" name="sort_what" value="instances" />';
$output .= '<input type="hidden" name="productId" value="'.$productId.'" />';
$output .= '<input type="submit" name="do_submit" value="'.$siteLabels['form-save'].'" class="btn176 proceed" />';
$output .= '<input type="hidden" name="location" value="../../"/>';
$output .= '<input type="submit" name="back" value="'.$siteLabels['form-back'].'" class="btn176" />';
}
else{
$output .= $mysqli->error;
}
$output .= '</form>';
$output .= '</div>';
$output .= '<script type="text/javascript"> initSortableList(\'#sortable-thumb\'); </script>';
return $output;
}
function sbmChangeInstanceOrder(){
/* access the global sql object */
global $mysqli;
/* language */
$siteLabels = getLanguage();
/* split the value of the sortation */
$ids = explode(',',$_POST['sort_order']);
/* run the update query for each id */
foreach($ids as $index=>$id) {
$id = (int) $id;
if($id != '') {
$queries[] = 'UPDATE product_instances SET instanceOrder = '.($index + 1).' WHERE id = '.$id.' AND productId="'.$_POST['productId'].'" LIMIT 1';
}
}
// Set autocommit to FALSE
$mysqli->autocommit(FALSE);
foreach($queries as $query)
{
if(!$mysqli->query($query))
{
$errors[] = $siteLabels['fm-somethingwentwrong'];
}
}
// ROLLBACK of COMMIT
if(isset($errors))
{
$mysqli->rollback();
displayErrors($errors);
//return showDashboard();
header('location: ../../');
}
else
{
$mysqli->commit();
$_SESSION['feed-msg'] = '<span class="fm-suc"><span class="fm-suc-v">√</span>'.$siteLabels['fm-changeordersucces'].'</span>';
// return showDashboard();
header('location: ../../');
}
}
function updateModified(){
global $mysqli;
//what product id?
$productId = $_POST['productId'];
$modified = $_POST['modified'];
if(empty($modified)){
$errors[] = 'empty value';
}
if(!is_numeric($modified)){
$errors[] = 'not a number';
}
if(!isset($errors)){
//valid?
//update or insert?
$modifiedResult = $mysqli->query('SELECT modified FROM popular_modified WHERE productId = '.$productId.' LIMIT 1');
if($modifiedResult->num_rows > 0){
//update
$mysqli->query('UPDATE popular_modified SET modified = '.$modified.' WHERE productId = '.$productId.' LIMIT 1');
}
else{
//insert
$mysqli->query('INSERT INTO popular_modified(productId, modified)VALUES('.$productId.','.$modified.')');
}
//update total
$likesresult = $mysqli->query('SELECT id FROM popular_likes WHERE productId = '.$productId);
$numlikes = $likesresult->num_rows;
$modifiedresult = $mysqli->query('SELECT modified FROM popular_modified WHERE productId = '.$productId.' LIMIT 1');
$modifiedrecord = $modifiedresult->fetch_assoc();
$modified = $modifiedrecord['modified'];
$total = $modified+$numlikes;
$mysqli->query('UPDATE popular_modified SET likes = '.$numlikes.', total = '.$total.' WHERE productId = '.$productId.' LIMIT 1');
}
//header back
header('location: ./');
}
function updateExtraleuk(){
global $mysqli;
if(isset($_GET['sub2'])){
$location = '../';
$productId = $_GET['sub2'];
if($result = $mysqli->query('SELECT extraleuk FROM product_products WHERE id = '.$productId.' LIMIT 1')){
$record = $result->fetch_assoc();
$extraleuk = $record['extraleuk'];
$extraleuk == 1 ? $newExtraleuk = 0 : $newExtraleuk = 1;
$mysqli->query('UPDATE product_products SET extraleuk = '.$newExtraleuk.' WHERE id = '.$productId.' LIMIT 1');
}
}
else{
$location = './';
}
header('location:'.$location);
}
function updatePublished(){
global $mysqli;
if(isset($_GET['sub2'])){
$location = '../';
$productId = $_GET['sub2'];
if($result = $mysqli->query('SELECT published FROM product_products WHERE id = '.$productId.' LIMIT 1')){
$record = $result->fetch_assoc();
$published = $record['published'];
$published == 1 ? $newpublished = 0 : $newpublished = 1;
$mysqli->query('UPDATE product_products SET published = '.$newpublished.' WHERE id = '.$productId.' LIMIT 1');
}
}
else{
$location = './';
}
header('location:'.$location);
}
function updateNew(){
global $mysqli;
if(isset($_GET['sub2'])){
$location = '../';
$productId = $_GET['sub2'];
if($result = $mysqli->query('SELECT isNew FROM product_products WHERE id = '.$productId.' LIMIT 1')){
$record = $result->fetch_assoc();
$new = $record['isNew'];
$new == 1 ? $newnew = 0 : $newnew = 1;
$mysqli->query('UPDATE product_products SET isNew = '.$newnew.' WHERE id = '.$productId.' LIMIT 1');
}
}
else{
$location = './';
}
header('location:'.$location);
}
?>