diff --git a/api/v2/get/translations.php b/api/v2/get/translations.php index 1b62ffb..f068a3d 100644 --- a/api/v2/get/translations.php +++ b/api/v2/get/translations.php @@ -43,7 +43,10 @@ if(isset($get_content) && $get_content!=''){ if ($v[0] == 'page' || $v[0] =='p' || $v[0] =='totals' || $v[0] =='list' || $v[0] =='history'|| $v[0] =='success_msg'){ //do nothing - } + } + elseif ($v[0] == 'generatefile') { + $clause .= ' AND language_key = :'.$v[0]; + } elseif ($v[0] == 'search') { //build up search $clause .= ' AND variable like :'.$v[0]; @@ -62,7 +65,9 @@ if(isset($get_content) && $get_content!=''){ if(isset($criterias['totals']) && $criterias['totals'] ==''){ //Request for total rows $sql = 'SELECT count(*) as count FROM text_variables '.$whereclause.''; -} +} elseif (isset($criterias['generatefile']) && $criterias['generatefile'] !=''){ + $sql = 'SELECT tv.variable,tvt.translation FROM text_variables tv JOIN text_variables_translations tvt ON tv.rowID = tvt.variable_ID '.$whereclause.''; +} else { //SQL for Paging $sql = 'SELECT * FROM text_variables '.$whereclause.' LIMIT :page,:num_products'; @@ -82,7 +87,7 @@ if (!empty($criterias)){ if ($key == 'search'){ $search_value = '%'.$value.'%'; $stmt->bindValue($key, $search_value, PDO::PARAM_STR); - } + } else { $stmt->bindValue($key, $value, PDO::PARAM_STR); } @@ -95,10 +100,15 @@ if(isset($criterias['totals']) && $criterias['totals']==''){ $stmt->execute(); $messages = $stmt->fetch(); $messages = $messages[0]; +} elseif(isset($criterias['generatefile']) && $criterias['generatefile'] !=''){ + //Excute Query + $stmt->execute(); + //Get results + $messages = $stmt->fetchAll(PDO::FETCH_ASSOC); } else { $current_page = isset($criterias['p']) && is_numeric($criterias['p']) ? (int)$criterias['p'] : 1; - $stmt->bindValue('page', ($current_page - 1) * $page_rows_products, PDO::PARAM_INT); + $stmt->bindValue('page', ($current_page - 1) * $page_rows_translations, PDO::PARAM_INT); $stmt->bindValue('num_products', $page_rows_translations, PDO::PARAM_INT); //Excute Query diff --git a/api/v2/get/translations_details.php b/api/v2/get/translations_details.php new file mode 100644 index 0000000..914e784 --- /dev/null +++ b/api/v2/get/translations_details.php @@ -0,0 +1,118 @@ +soldto) || $partner->soldto == ''){$soldto_search = '%';} else {$soldto_search = '-%';} + +//default whereclause +$whereclause = ''; + +switch ($permission) { + case '4': + $whereclause = ''; + break; + case '3': + $whereclause = ''; + break; + default: + $condition = '__salesid___'.$partner->salesid.'___soldto___'.substr($partner->soldto, 0, strpos($partner->soldto, "-")).$soldto_search; + $whereclause = 'WHERE accounthierarchy like "'.$condition.'"'; + break; +} + +//NEW ARRAY +$criterias = []; +$clause = ''; + +//Check for $_GET variables and build up clause +if(isset($get_content) && $get_content!=''){ + //GET VARIABLES FROM URL + $requests = explode("&", $get_content); + //Check for keys and values + foreach ($requests as $y){ + $v = explode("=", $y); + //INCLUDE VARIABLES IN ARRAY + $criterias[$v[0]] = $v[1]; + + if ($v[0] == 'page' || $v[0] =='p' || $v[0] =='totals' || $v[0] =='list' || $v[0] =='history'|| $v[0] =='success_msg'){ + //do nothing + } + elseif ($v[0] == 'search') { + //build up search + $clause .= ' AND translation like :'.$v[0]; + } + else {//create clause + $clause .= ' AND '.$v[0].' = :'.$v[0]; + } + } + if ($whereclause == '' && $clause !=''){ + $whereclause = 'WHERE '.substr($clause, 4); + } else { + $whereclause .= $clause; + } +} +//Define Query +if(isset($criterias['totals']) && $criterias['totals'] ==''){ +//Request for total rows + $sql = 'SELECT count(*) as count FROM text_variables_translations '.$whereclause.''; +} +else { + //SQL for Paging + $sql = 'SELECT * FROM text_variables_translations '.$whereclause.' LIMIT :page,:num_products'; +} + +$stmt = $pdo->prepare($sql); + +//Bind to query +if (str_contains($whereclause, ':condition')){ + $stmt->bindValue('condition', $condition, PDO::PARAM_STR); +} + +if (!empty($criterias)){ + foreach ($criterias as $key => $value){ + $key_condition = ':'.$key; + if (str_contains($whereclause, $key_condition)){ + if ($key == 'search'){ + $search_value = '%'.$value.'%'; + $stmt->bindValue($key, $search_value, PDO::PARAM_STR); + } + else { + $stmt->bindValue($key, $value, PDO::PARAM_STR); + } + } + } +} + +//Add paging details +if(isset($criterias['totals']) && $criterias['totals']==''){ + $stmt->execute(); + $messages = $stmt->fetch(); + $messages = $messages[0]; +} +else { + $current_page = isset($criterias['p']) && is_numeric($criterias['p']) ? (int)$criterias['p'] : 1; + $stmt->bindValue('page', ($current_page - 1) * $page_rows_products, PDO::PARAM_INT); + $stmt->bindValue('num_products', $page_rows_translations, PDO::PARAM_INT); + + //Excute Query + $stmt->execute(); + //Get results + $messages = $stmt->fetchAll(PDO::FETCH_ASSOC); +} + +//------------------------------------------ +//JSON_ENCODE +//------------------------------------------ +$messages = json_encode($messages, JSON_UNESCAPED_UNICODE); + +//Send results +echo $messages; + +?> \ No newline at end of file diff --git a/api/v2/post/products.php b/api/v2/post/products.php new file mode 100644 index 0000000..6aab0c3 --- /dev/null +++ b/api/v2/post/products.php @@ -0,0 +1,105 @@ +soldto) || $partner->soldto == ''){$soldto_search = '%';} else {$soldto_search = '-%';} + +//default whereclause +$whereclause = ''; + +switch ($permission) { + case '4': + $whereclause = ''; + break; + case '3': + $whereclause = ''; + break; + default: + $condition = '__salesid___'.$partner->salesid.'___soldto___'.substr($partner->soldto, 0, strpos($partner->soldto, "-")).$soldto_search; + $whereclause = ' AND accounthierarchy like "'.$condition.'"'; + break; +} + +//SET PARAMETERS FOR QUERY +$id = $post_content['rowID'] ?? ''; //check for rowID +$command = ($id == '')? 'insert' : 'update'; //IF rowID = empty then INSERT +if (isset($post_content['delete'])){$command = 'delete';} //change command to delete +$date = date('Y-m-d H:i:s'); + +//CREATE EMPTY STRINGS +$clause = ''; +$clause_insert =''; +$input_insert = ''; + +//BUILD UP PARTNERHIERARCHY FROM USER +$partner_product = json_encode(array("salesid"=>$partner->salesid,"soldto"=>$partner->soldto), JSON_UNESCAPED_UNICODE); + +//ADD STANDARD PARAMETERS TO ARRAY BASED ON INSERT OR UPDATE +if ($command == 'update'){ + $post_content['updated'] = $date; + $post_content['updatedby'] = $username ; + +} +elseif ($command == 'insert'){ + $post_content['created'] = $date; + $post_content['createdby'] = $username; + $post_content['accounthierarchy'] = $partner_product; +} +else { + //do nothing +} + +//CREAT NEW ARRAY AND MAP TO CLAUSE +if(isset($post_content) && $post_content!=''){ + foreach ($post_content as $key => $var){ + if ($key == 'submit' || $key == 'rowID'){ + //do nothing + } + else { + $criterias[$key] = $var; + $clause .= ' , '.$key.' = ?'; + $clause_insert .= ' , '.$key.''; + $input_insert .= ', ?'; // ? for each insert item + $execute_input[]= $var; // Build array for input + } + } +} + +//CLEAN UP INPUT +$clause = substr($clause, 2); //Clean clause - remove first comma +$clause_insert = substr($clause_insert, 2); //Clean clause - remove first comma +$input_insert = substr($input_insert, 1); //Clean clause - remove first comma + +//QUERY AND VERIFY ALLOWED +if ($command == 'update' && isAllowed('products',$profile,$permission,'U') === 1){ + $sql = 'UPDATE products SET '.$clause.' WHERE rowID = ? '.$whereclause.''; + $execute_input[] = $id; + $stmt = $pdo->prepare($sql); + $stmt->execute($execute_input); +} +elseif ($command == 'insert' && isAllowed('products',$profile,$permission,'C') === 1){ + $sql = 'INSERT INTO products ('.$clause_insert.') VALUES ('.$input_insert.')'; + $stmt = $pdo->prepare($sql); + $stmt->execute($execute_input); +} +elseif ($command == 'delete' && isAllowed('products',$profile,$permission,'D') === 1){ + $stmt = $pdo->prepare('DELETE FROM products WHERE rowID = ? '.$whereclause.''); + $stmt->execute([ $id ]); + + //Add deletion to changelog + changelog($dbname,'products',$id,'Delete','Delete',$username); +} else +{ + //do nothing +} + +?> \ No newline at end of file diff --git a/api/v2/post/translations.php b/api/v2/post/translations.php new file mode 100644 index 0000000..924dbfd --- /dev/null +++ b/api/v2/post/translations.php @@ -0,0 +1,105 @@ +soldto) || $partner->soldto == ''){$soldto_search = '%';} else {$soldto_search = '-%';} + +//default whereclause +$whereclause = ''; + +switch ($permission) { + case '4': + $whereclause = ''; + break; + case '3': + $whereclause = ''; + break; + default: + $condition = '__salesid___'.$partner->salesid.'___soldto___'.substr($partner->soldto, 0, strpos($partner->soldto, "-")).$soldto_search; + $whereclause = ' AND accounthierarchy like "'.$condition.'"'; + break; +} + +//SET PARAMETERS FOR QUERY +$id = $post_content['rowID'] ?? ''; //check for rowID +$command = ($id == '')? 'insert' : 'update'; //IF rowID = empty then INSERT +if (isset($post_content['delete'])){$command = 'delete';} //change command to delete +$date = date('Y-m-d H:i:s'); + +//CREATE EMPTY STRINGS +$clause = ''; +$clause_insert =''; +$input_insert = ''; + +//BUILD UP PARTNERHIERARCHY FROM USER +$partner_product = json_encode(array("salesid"=>$partner->salesid,"soldto"=>$partner->soldto), JSON_UNESCAPED_UNICODE); + +//ADD STANDARD PARAMETERS TO ARRAY BASED ON INSERT OR UPDATE +if ($command == 'update'){ + $post_content['updatedby'] = $username ; + +} +elseif ($command == 'insert'){ + $post_content['createdby'] = $username; + $post_content['accounthierarchy'] = $partner_product; +} +else { + //do nothing +} + +//CREAT NEW ARRAY AND MAP TO CLAUSE +if(isset($post_content) && $post_content!=''){ + foreach ($post_content as $key => $var){ + if ($key == 'submit' || $key == 'rowID'){ + //do nothing + } + else { + $criterias[$key] = $var; + $clause .= ' , '.$key.' = ?'; + $clause_insert .= ' , '.$key.''; + $input_insert .= ', ?'; // ? for each insert item + $execute_input[]= $var; // Build array for input + } + } +} + +//CLEAN UP INPUT +$clause = substr($clause, 2); //Clean clause - remove first comma +$clause_insert = substr($clause_insert, 2); //Clean clause - remove first comma +$input_insert = substr($input_insert, 1); //Clean clause - remove first comma + +//QUERY AND VERIFY ALLOWED +if ($command == 'update' && isAllowed('translation_manage',$profile,$permission,'U') === 1){ + $sql = 'UPDATE text_variables SET '.$clause.' WHERE rowID = ? '.$whereclause.''; + $execute_input[] = $id; + $stmt = $pdo->prepare($sql); + $stmt->execute($execute_input); +} +elseif ($command == 'insert' && isAllowed('translation_manage',$profile,$permission,'C') === 1){ + $sql = 'INSERT INTO text_variables('.$clause_insert.') VALUES ('.$input_insert.')'; + $stmt = $pdo->prepare($sql); + $stmt->execute($execute_input); + // Return ID + echo json_encode(array('rowID'=> $pdo->lastInsertId())); +} +elseif ($command == 'delete' && isAllowed('translation_manage',$profile,$permission,'D') === 1){ + $stmt = $pdo->prepare('DELETE FROM text_variables WHERE rowID = ? '.$whereclause.''); + $stmt->execute([ $id ]); + + //Add deletion to changelog + changelog($dbname,'text_variables',$id,'Delete','Delete',$username); +} else +{ + //do nothing +} + +?> \ No newline at end of file diff --git a/api/v2/post/translations_details.php b/api/v2/post/translations_details.php new file mode 100644 index 0000000..84b4bb6 --- /dev/null +++ b/api/v2/post/translations_details.php @@ -0,0 +1,103 @@ +soldto) || $partner->soldto == ''){$soldto_search = '%';} else {$soldto_search = '-%';} + +//default whereclause +$whereclause = ''; + +switch ($permission) { + case '4': + $whereclause = ''; + break; + case '3': + $whereclause = ''; + break; + default: + $condition = '__salesid___'.$partner->salesid.'___soldto___'.substr($partner->soldto, 0, strpos($partner->soldto, "-")).$soldto_search; + $whereclause = ' AND accounthierarchy like "'.$condition.'"'; + break; +} + +//SET PARAMETERS FOR QUERY +$id = $post_content['rowID'] ?? ''; //check for rowID +$command = ($id == '')? 'insert' : 'update'; //IF rowID = empty then INSERT +if (isset($post_content['delete'])){$command = 'delete';} //change command to delete +$date = date('Y-m-d H:i:s'); + +//CREATE EMPTY STRINGS +$clause = ''; +$clause_insert =''; +$input_insert = ''; + +//BUILD UP PARTNERHIERARCHY FROM USER +$partner_product = json_encode(array("salesid"=>$partner->salesid,"soldto"=>$partner->soldto), JSON_UNESCAPED_UNICODE); + +//ADD STANDARD PARAMETERS TO ARRAY BASED ON INSERT OR UPDATE +if ($command == 'update'){ + $post_content['updatedby'] = $username ; + +} +elseif ($command == 'insert'){ + $post_content['createdby'] = $username; + $post_content['accounthierarchy'] = $partner_product; +} +else { + //do nothing +} + +//CREAT NEW ARRAY AND MAP TO CLAUSE +if(isset($post_content) && $post_content!=''){ + foreach ($post_content as $key => $var){ + if ($key == 'submit' || $key == 'update' || $key == 'add' ||$key == 'rowID'){ + //do nothing + } + else { + $criterias[$key] = $var; + $clause .= ' , '.$key.' = ?'; + $clause_insert .= ' , '.$key.''; + $input_insert .= ', ?'; // ? for each insert item + $execute_input[]= $var; // Build array for input + } + } +} + +//CLEAN UP INPUT +$clause = substr($clause, 2); //Clean clause - remove first comma +$clause_insert = substr($clause_insert, 2); //Clean clause - remove first comma +$input_insert = substr($input_insert, 1); //Clean clause - remove first comma + +//QUERY AND VERIFY ALLOWED +if ($command == 'update' && isAllowed('translation_manage',$profile,$permission,'U') === 1){ + $sql = 'UPDATE text_variables_translations SET '.$clause.' WHERE rowID = ? '.$whereclause.''; + $execute_input[] = $id; + $stmt = $pdo->prepare($sql); + $stmt->execute($execute_input); +} +elseif ($command == 'insert' && isAllowed('translation_manage',$profile,$permission,'C') === 1){ + $sql = 'INSERT INTO text_variables_translations ('.$clause_insert.') VALUES ('.$input_insert.')'; + $stmt = $pdo->prepare($sql); + $stmt->execute($execute_input); +} +elseif ($command == 'delete' && isAllowed('translation_manage',$profile,$permission,'D') === 1){ + $stmt = $pdo->prepare('DELETE FROM text_variables_translations WHERE rowID = ? '.$whereclause.''); + $stmt->execute([ $id ]); + + //Add deletion to changelog + changelog($dbname,'text_variables_translations',$id,'Delete','Delete',$username); +} else +{ + //do nothing +} + +?> \ No newline at end of file diff --git a/assets/functions.php b/assets/functions.php index c2a96ba..18167e9 100644 --- a/assets/functions.php +++ b/assets/functions.php @@ -2913,4 +2913,37 @@ function getRelativeTime($timestamp) { $years = floor($diff / $year); return $years.(($years != 1)?$time_years:$time_year) . " $suffix"; } +} + +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++ +// Generate language files ++++++++++++++ +// +++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +function generateLanguageFile($language_key,$token){ + + //GET TRANSLATION RECORDS + $api_url = '/v2/translations/generatefile='.$language_key; + $responses = ioAPIv2($api_url,'',$token); + + if (!empty($responses)){ + //define translation variable + $translation = ''; + //Target dir + $target_dir = dirname(__FILE__,2).'/settings/translations/'; + //Filename + $input_file = $target_dir.'translations_'.strtoupper($language_key).'.php'; + //store translation to the file + file_put_contents($input_file, $translation); + } } \ No newline at end of file diff --git a/maintenance.php b/maintenance.php index 3d18458..f625356 100644 --- a/maintenance.php +++ b/maintenance.php @@ -34,8 +34,9 @@ if ($update_allowed === 1){ if (isset($_POST['updateequipmentmeusurements'])){ storeMeasurementEquipment(''); } - - + if (isset($_POST['generatefile'])){ + generateLanguageFile($_POST['language'],$_SESSION['userkey']); + } } // Handle success messages @@ -67,6 +68,7 @@ $view .=' $view .= '
'.$general_actions .' Learning + Translations
'; @@ -99,6 +101,21 @@ if ($update_allowed === 1){ '; } + +if ($update_allowed === 1){ + $view .= '
+
+ + + +
+
'; + } + $view .= ''; //Output diff --git a/rma.php b/rma.php index 63848b4..361d6ec 100644 --- a/rma.php +++ b/rma.php @@ -6,63 +6,7 @@ if (debug && debug_id == $_SESSION['id']){ ini_set('display_startup_errors', '1'); error_reporting(E_ALL); } -//__________________________________________ -//MOVE TO TRANSLATION FILES: -//__________________________________________ -$button_create_rma = 'Create RMA'; -//RMA -$rmas_h2 = 'Return Material'; -$rmas_p = 'View, manage, and search RMA details.'; -$rma_h2 = 'Return Material Request'; - -$message_rma_1 = 'RMA created successfully!'; -$message_rma_2 = 'RMA updated successfully!'; -$message_rma_3 = 'RMA deleted successfully!'; -$message_no_rma = 'There is no RMA'; - -$rma_search = 'Search RMA...'; - -$rma_rowID = 'Request number'; -$rma_status = 'Status'; - -$rma_status0_text = 'New'; -$rma_status1_text = 'In Progress'; -$rma_status2_text = 'Approved'; -$rma_status3_text = 'Completed'; -$rma_status4_text = 'Cancelled'; - -$rma_sw_version_latest = 'Latest software version'; -$rma_servicereport_latest = 'Servicereport created last 7days'; - -$rma_information = 'RMA information'; -$rma_return_reason = 'Return reason'; -$rma_return_reason0_text = ''; -$rma_return_reason1_text = ''; -$rma_return_reason2_text = ''; -$rma_return_reason3_text = ''; -$rma_return_reason4_text = ''; -$rma_return_reason5_text = ''; - -$rma_return_reasons_notes = 'Return reason notes'; - -$rma_return_tab1 = 'Return reason'; -$rma_return_tab2 = 'Questions'; - -$rma_question_allowed_label1 = 'Yes'; -$rma_question_allowed_label2 = 'No'; - -$rma_question_header_1 = ''; -$rma_question_1 = 'Batteries working?'; -$rma_question_2 = 'Button correctly working'; -$rma_question_3 = ''; -$rma_question_4 = ''; -$rma_question_5 = ''; -$rma_question_6 = ''; -$rma_question_7 = ''; -//__________________________________________ -//__________________________________________ -//__________________________________________ include_once './assets/functions.php'; include_once './settings/settings.php'; include_once './settings/systemrma.php'; diff --git a/rma_manage.php b/rma_manage.php index f82f143..c6fbbd1 100644 --- a/rma_manage.php +++ b/rma_manage.php @@ -6,62 +6,7 @@ if (debug && debug_id == $_SESSION['id']){ ini_set('display_startup_errors', '1'); error_reporting(E_ALL); } -//__________________________________________ -//MOVE TO TRANSLATION FILES: -//__________________________________________ -$button_create_rma = 'Create RMA'; -//RMA -$rmas_h2 = 'Return Material'; -$rmas_p = 'View, manage, and search RMA details.'; -$rma_h2 = 'Return Material Request'; - -$message_rma_1 = 'RMA created successfully!'; -$message_rma_2 = 'RMA updated successfully!'; -$message_rma_3 = 'RMA deleted successfully!'; -$message_no_rma = 'There is no RMA'; - -$rma_search = 'Search RMA...'; - -$rma_rowID = 'Request number'; -$rma_status = 'Status'; -$rma_sw_version_latest = 'Latest software version'; -$rma_servicereport_latest = 'Servicereport created last 7days'; - -$rma_status0_text = 'New'; -$rma_status1_text = 'In Progress'; -$rma_status2_text = 'Approved'; -$rma_status3_text = 'Completed'; -$rma_status4_text = 'Cancelled'; - -$rma_information = 'RMA information'; -$rma_return_reason = 'Return reason'; -$rma_return_reason0_text = ''; -$rma_return_reason1_text = ''; -$rma_return_reason2_text = ''; -$rma_return_reason3_text = ''; -$rma_return_reason4_text = ''; -$rma_return_reason5_text = ''; - -$rma_return_reasons_notes = 'Return reason notes'; - -$rma_return_tab1 = 'Return reason'; -$rma_return_tab2 = 'Questions'; - -$rma_question_allowed_label1 = 'Yes'; -$rma_question_allowed_label2 = 'No'; - -$rma_question_header_1 = ''; -$rma_question_1 = 'Batteries working?'; -$rma_question_2 = 'Button correctly working'; -$rma_question_3 = ''; -$rma_question_4 = ''; -$rma_question_5 = ''; -$rma_question_6 = ''; -$rma_question_7 = ''; -//__________________________________________ -//__________________________________________ -//__________________________________________ include_once './assets/functions.php'; include_once './settings/settings.php'; include_once './settings/systemrma.php'; diff --git a/rmas.php b/rmas.php index 5b59906..da0e2f4 100644 --- a/rmas.php +++ b/rmas.php @@ -1,65 +1,6 @@ '; + $view .= ''; } if ($update_allowed === 1){ $view .= ''; @@ -130,8 +152,8 @@ $view .= '
//Define Service and User enabled $view .= '
- - + + '; @@ -141,11 +163,11 @@ $view .= '
$view .= '
- + - +
@@ -153,6 +175,122 @@ $view .= '
$view .= ''; +$view .= ' +
+ +
+
+ +
+ + + + + + + + + + + '; + + if (empty($text_variable_translations)){ + $view .= ' + + + + '; + } + else { + foreach ($text_variable_translations as $translation){ + $view .= ' + + + + + + + + + + '; + } + } +$view .= ' + +
'.($text_variable_translation_languagekey ?? '').''.($text_variable_translation_translation ?? '').''.$general_created.''.$general_actions.'
'.($message_no_text_variables ?? '').'
+ '.getRelativeTime($translation['created']).'
+ + +
+
+'; + + + //Output echo $view; template_footer() diff --git a/translations.php b/translations.php index 5d8ffb6..d885978 100644 --- a/translations.php +++ b/translations.php @@ -34,24 +34,24 @@ $GET_VALUES = urlGETdetails($_GET) ?? ''; $api_url = '/v2/translations/'.$GET_VALUES; $responses = ioServer($api_url,''); //Decode Payload -if (!empty($responses)){$responses = decode_payload($responses);}else{$responses = null;} +if (!empty($responses)){$responses = json_decode($responses,true);}else{$responses = null;} //Return QueryTotal from API $api_url = '/v2/translations/'.$GET_VALUES.'&totals='; $query_total = ioServer($api_url,''); //Decode Payload -if (!empty($query_total)){$query_total = decode_payload($query_total);}else{$query_total = null;} +if (!empty($query_total)){$query_total = json_decode($query_total,true);}else{$query_total = null;} // Handle success messages if (isset($_GET['success_msg'])) { if ($_GET['success_msg'] == 1) { - $success_msg = $message_pr_1; + $success_msg = $message_tv_1; } if ($_GET['success_msg'] == 2) { - $success_msg = $message_pr_2; + $success_msg = $message_tv_2; } if ($_GET['success_msg'] == 3) { - $success_msg = $message_pr_3; + $success_msg = $message_tv_3; } } @@ -61,8 +61,8 @@ $view = '
-

'.$products_h2.' ('.$query_total.')

-

'.$products_p.'

+

'.($text_variables_h2 ?? '').' ('.$query_total.')

+

'.($text_variables_p ?? '').'

'; @@ -76,23 +76,12 @@ $view .= '
} $view .= '
- '.$button_create_product.' + '.($button_create_text_variable ?? '').'
-
- '.$general_filters.' -
- - -
-
@@ -106,11 +95,9 @@ $view .= ' - - - - - + + + @@ -121,13 +108,19 @@ $view .= ' $view .= ' - + '; } else { - - var_dump($responses); foreach ($responses as $response){ + $view .= ' + + + + + + '; + } }
'.$product_code.''.$product_category.''.$product_parttype.''.$product_name.''.($text_variable_rowID ?? '').''.($text_variable_variable ?? '').''.$general_created.' '.$general_actions.'
'.$message_no_products.''.($message_no_text_variables ?? '').'
'.$response['rowID'].''.$response['variable'].''.getRelativeTime($response['created']).''.$general_view .'