@@ -51,7 +51,17 @@
<td><table border=
width=
cellspacing=
cellpadding=
height=
>
"0"
"100%"
"0"
"2"
"40"
<tr>
<td class=
><?php echo STORE_NAME; ?></td>
"pageHeading"
+
+<?php
+  
(sizeof($languages_array) > 1) {
if
+?>
+
<td class=
align=
><?php echo tep_draw_form('adminlanguage',
"pageHeading"
"right"
FILENAME_DEFAULT, '', 'get') . tep_draw_pull_down_menu('language', $languages_array,
$languages_selected, 'onChange=
') . tep_hide_session_id() . '</form>';
"
.form.submit();"
this
?></td>
+
+<?php
+  }
+?>
+
</tr>
</table></td>
</tr>
catalog/admin/login.php
@@ -130,7 +130,17 @@
<td><table border=
width=
cellspacing=
cellpadding=
height=
>
"0"
"100%"
"0"
"0"
"40"
<tr>
<td class=
><?php echo HEADING_TITLE; ?></td>
"pageHeading"
+
+<?php
+  
(sizeof($languages_array) > 1) {
if
+?>
+
<td class=
align=
><?php echo tep_draw_form('adminlanguage',
"pageHeading"
"right"
FILENAME_DEFAULT, '', 'get') . tep_draw_pull_down_menu('language', $languages_array,
$languages_selected, 'onChange=
') . tep_hide_session_id() . '</form>';
"
.form.submit();"
this
?></td>
+
+<?php
+  }
+?>
+
</tr>
</table></td>
</tr>
(C) (BUG) Fix Retrieval of Special Product Prices
(C) (BUG) Fix Retrieval of Special Product Prices
Importance: Low | Difficulty: Easy
Fix retrieval of special product prices.
Affected Files
catalog/includes/functions/general.php
View Changes Online
catalog/includes/functions/general.php
Pdf format specification - Split, seperate PDF into multiple files in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Explain How to Split PDF Document in Visual C#.NET Application
c# split pdf; break pdf documents
Pdf format specification - VB.NET PDF File Split Library: Split, seperate PDF into multiple files in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
VB.NET PDF Document Splitter Control to Disassemble PDF Document
break pdf password; pdf no pages selected to print
@@ -96,7 +96,7 @@
// Return a product's special price (returns nothing 
there is no offer)
if
// TABLES: products
function tep_get_products_special_price($product_id) {
-    $product_query = tep_db_query(
. TABLE_SPECIALS . 
"select specials_new_products_price from "
"
. (
)$product_id . 
);
where products_id = '"
int
"' and status"
+    $product_query = tep_db_query(
. TABLE_SPECIALS . 
"select specials_new_products_price from "
"
. (
)$product_id . 
);
where products_id = '"
int
"' and status = 1"
$product = tep_db_fetch_array($product_query);
$product['specials_new_products_price'];
return
(A) (BUG) Fix HTML E-Mails
(A) (BUG) Fix HTML E-Mails
Importance: Low | Difficulty: Easy
Some e-mail methods were not building HTML e-mails.
Affected Files
catalog/admin/includes/modules/newsletters/newsletter.php
catalog/admin/includes/modules/newsletters/product_notification.php
catalog/admin/mail.php
View Changes Online
catalog/admin/includes/modules/newsletters/newsletter.php
@@ -59,8 +59,16 @@
function send($newsletter_id) {
$mail_query = tep_db_query("select customers_firstname, customers_lastname,
. TABLE_CUSTOMERS . 
);
customers_email_address from "
" where customers_newsletter = '1'"
-      $mimemessage = 
email(array('X-Mailer: osCommerce bulk mailer'));
new
-      $mimemessage->add_text($
->content);
this
+      $mimemessage = 
email(array('X-Mailer: osCommerce'));
new
+
+      // Build the text version
+      $text = strip_tags($
->content);
this
+      
(EMAIL_USE_HTML == '
') {
if
true
+        $mimemessage->add_html($
->content, $text);
this
+      } 
{
else
+        $mimemessage->add_text($text);
+      }
+
$mimemessage->build_message();
($mail = tep_db_fetch_array($mail_query)) {
while
$mimemessage->send($mail['customers_firstname'] . ' ' . $mail['customers_lastname'],
$mail['customers_email_address'], '', EMAIL_FROM, $
->title);
this
catalog/admin/includes/modules/newsletters/product_notification.php
TIFF Image Viewer| What is TIFF
The TIFF specification contains two parts: Baseline TIFF (the edit and processing images with TIFF format and other such as Bitmap, Png, Gif, Tiff, PDF, MS-Word
pdf link to specific page; break pdf into separate pages
DocImage SDK for .NET: Web Document Image Viewer Online Demo
Microsoft PowerPoint: PPTX, PPS, PPSX; PDF: Portable Document Format; TIFF: Tagged Image File Format; XPS: XML Paper Specification. Supported Browers: IE9+;
split pdf; pdf insert page break
@@ -200,8 +200,16 @@ function selectAll(FormName, SelectBox) {
}
}
-      $mimemessage = 
email(array('X-Mailer: osCommerce bulk mailer'));
new
-      $mimemessage->add_text($
->content);
this
+      $mimemessage = 
email(array('X-Mailer: osCommerce'));
new
+
+      // Build the text version
+      $text = strip_tags($
->content);
this
+      
(EMAIL_USE_HTML == '
') {
if
true
+        $mimemessage->add_html($
->content, $text);
this
+      } 
{
else
+        $mimemessage->add_text($text);
+      }
+
$mimemessage->build_message();
reset($audience);
catalog/admin/mail.php
@@ -38,8 +38,15 @@
//Let's build a message object using the email class
$mimemessage = 
email(array('X-Mailer: osCommerce'));
new
-    // add the message to the object
-    $mimemessage->add_text($message);
+
+    // Build the text version
+    $text = strip_tags($message);
+    
(EMAIL_USE_HTML == '
') {
if
true
+      $mimemessage->add_html($message, $text);
+    } 
{
else
+      $mimemessage->add_text($message);
+    }
+
$mimemessage->build_message();
($mail = tep_db_fetch_array($mail_query)) {
while
$mimemessage->send($mail['customers_firstname'] . ' ' . $mail['customers_lastname'],
$mail['customers_email_address'], '', $from, $subject);
(A) (BUG) Improve Saving of Module Parameters
(A) (BUG) Improve Saving of Module Parameters
Importance: Low | Difficulty: Easy
Improve saving of module parameters.
Affected Files
catalog/admin/modules.php
View Changes Online
catalog/admin/modules.php
GIF Image Viewer| What is GIF
routines according to the latest GIF specification to meet edit and processing images with Gif format and other such as Bitmap, Png, Gif, Tiff, PDF, MS-Word
break password pdf; cannot select text in pdf
C# Imaging - C# Code 128 Generation Guide
minimum left and right margins that go with specification. load a program with an incorrect format", please check Create Code 128 on PDF, Multi-Page TIFF, Word
break apart pdf; acrobat split pdf bookmark
@@ -43,6 +43,7 @@
(tep_not_null($action)) {
if
($action) {
switch
'save':
case
+        reset($HTTP_POST_VARS['configuration']);
(list($key, $value) = each($HTTP_POST_VARS['configuration'])) {
while
tep_db_query(
. TABLE_CONFIGURATION . 
. $value
"update "
" set configuration_value = '"
. $key . 
);
"' where configuration_key = '"
"'"
}
(AC) (UP) Add Pre-Populated List of Currencies
(AC) (UP) Add Pre-Populated List of Currencies
Importance: Low | Difficulty: Easy
Add a list of pre-populated currencies to choose from when adding new currencies.
Affected Files
catalog/admin/currencies.php
catalog/admin/includes/languages/english.php
catalog/admin/includes/languages/english/currencies.php
catalog/includes/languages/english.php
View Changes Online
This changeset includes updates to English language definition files. Please perform similar changes to other languages
that are also installed.
catalog/admin/currencies.php
@@ -109,6 +109,39 @@
;
break
}
}
+
+  $currency_select = array('USD' => array('title' => 'U.S. Dollar', 'code' => 'USD',
'symbol_left' => '$', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'EUR' => array('title' => 'Euro', 'code' => 'EUR', 'symbol_left' =>
'', 'symbol_right' => '€', 'decimal_point' => '.', 'thousands_point' => ',', 'decimal_places' =>
'2'),
+                           'JPY' => array('title' => 'Japanese Yen', 'code' => 'JPY',
'symbol_left' => '¥', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'GBP' => array('title' => 'Pounds Sterling', 'code' => 'GBP',
'symbol_left' => '£', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'CHF' => array('title' => 'Swiss Franc', 'code' => 'CHF',
'symbol_left' => '', 'symbol_right' => 'CHF', 'decimal_point' => ',', 'thousands_point' => '.',
'decimal_places' => '2'),
+                           'AUS' => array('title' => 'Australian Dollar', 'code' => 'AUS',
'symbol_left' => '$', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'CAD' => array('title' => 'Canadian Dollar', 'code' => 'CAD',
'symbol_left' => '$', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'SEK' => array('title' => 'Swedish Krona', 'code' => 'SEK',
'symbol_left' => '', 'symbol_right' => 'kr', 'decimal_point' => ',', 'thousands_point' => '.',
'decimal_places' => '2'),
+                           'HKD' => array('title' => 'Hong Kong Dollar', 'code' => 'HKD',
'symbol_left' => '$', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'NOK' => array('title' => 'Norwegian Krone', 'code' => 'NOK',
'symbol_left' => 'kr', 'symbol_right' => '', 'decimal_point' => ',', 'thousands_point' => '.',
VB Imaging - EAN-8 Generating Tutorial
compatible with the latest GS1 General Specification, with the Besides the PNG image format, other supported common 8 on defined page area of a PDF, multi-page
pdf split; pdf split pages
VB.NET Image: Create Code 11 Barcode on Picture & Document Using
REFile.SaveDocumentFile(doc, "c:/code11.pdf", New PDFEncoder()). Data, Valid: 0-9, -, Format, PNG GIF JPEG. to the ISO/IEC international specification, the minimum
break pdf file into multiple files; pdf format specification
'decimal_places' => '2'),
+                           'NZD' => array('title' => 'New Zealand Dollar', 'code' => 'NZD',
'symbol_left' => '$', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'MXN' => array('title' => 'Mexican Peso', 'code' => 'MXN',
'symbol_left' => '$', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'SGD' => array('title' => 'Singapore Dollar', 'code' => 'SGD',
'symbol_left' => '$', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'BRL' => array('title' => 'Brazilian Real', 'code' => 'BRL',
'symbol_left' => 'R$', 'symbol_right' => '', 'decimal_point' => ',', 'thousands_point' => '.',
'decimal_places' => '2'),
+                           'CNY' => array('title' => 'Chinese RMB', 'code' => 'CNY',
'symbol_left' => '', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'CZK' => array('title' => 'Czech Koruna', 'code' => 'CZK',
'symbol_left' => '', 'symbol_right' => 'K', 'decimal_point' => ',', 'thousands_point' => '.',
'decimal_places' => '2'),
+                           'DKK' => array('title' => 'Danish Krone', 'code' => 'DKK',
'symbol_left' => '', 'symbol_right' => 'kr', 'decimal_point' => ',', 'thousands_point' => '.',
'decimal_places' => '2'),
+                           'HUF' => array('title' => 'Hungarian Forint', 'code' => 'HUF',
'symbol_left' => '', 'symbol_right' => 'Ft', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'ILS' => array('title' => 'Israeli New Shekel', 'code' => 'ILS',
'symbol_left' => '', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'INR' => array('title' => 'Indian Rupee', 'code' => 'INR',
'symbol_left' => 'Rs.', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'MYR' => array('title' => 'Malaysian Ringgit', 'code' => 'MYR',
'symbol_left' => 'RM', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'PHP' => array('title' => 'Philippine Peso', 'code' => 'PHP',
'symbol_left' => 'Php', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'),
+                           'PLN' => array('title' => 'Polish Zloty', 'code' => 'PLN',
'symbol_left' => '', 'symbol_right' => 'z', 'decimal_point' => ',', 'thousands_point' => '.',
'decimal_places' => '2'),
+                           'THB' => array('title' => 'Thai Baht', 'code' => 'THB', 'symbol_left'
=> '', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',', 'decimal_places' =>
'2'),
+                           'TWD' => array('title' => 'Taiwan New Dollar', 'code' => 'TWD',
'symbol_left' => 'NT$', 'symbol_right' => '', 'decimal_point' => '.', 'thousands_point' => ',',
'decimal_places' => '2'));
+
+  $currency_select_array = array(array('id' => '', 'text' => TEXT_INFO_COMMON_CURRENCIES));
+  foreach ($currency_select as $cs) {
+    
(!isset($currencies->currencies[$cs['code']])) {
if
+      $currency_select_array[] = array('id' => $cs['code'], 'text' => '[' . $cs['code'] . '] ' .
$cs['title']);
+    }
+  }
?>
<!doctype html 
public "-
>
//W3C//DTD HTML 4.01 Transitional//EN"
<html <?php echo HTML_PARAMS; ?>>
@@ -123,6 +156,30 @@
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->
+<script type=
>
"text/javascript"
+
currency_select = 
Array();
var
new
+<?php
+  foreach ($currency_select_array as $cs) {
+    
(!empty($cs['id'])) {
if
+      echo 'currency_select[
] = 
Array(
"' . $cs['id'] . '"
new
"' .
$currency_select[$cs['id']]['title'] . '"
"' . $currency_select[$cs['id']]['symbol_left'] . '"
"' . $currency_select[$cs['id']]['symbol_right'] . '"
"' .
$currency_select[$cs['id']]['decimal_point'] . '"
"' .
$currency_select[$cs['id']]['thousands_point'] . '"
"' .
);' . 
;
$currency_select[$cs['id']]['decimal_places'] . '"
"\n"
+    }
+  }
+?>
C# Imaging - QR Code Image Generation Tutorial
to draw, insert QR Codes in PDF, TIFF, MS C# code to adjust bar code image format, location, resolution ISO+IEC+18004 QR Code bar code symbology specification.
cannot select text in pdf file; break pdf into multiple documents
C# Imaging - EAN-8 Generating Tutorial
compatible with the latest GS1 General Specification, with the Besides the PNG image format, other supported common 8 on defined page area of a PDF, multi-page
break apart pdf pages; acrobat split pdf into multiple files
+
+function updateForm() {
+  
cs = document.forms[
].cs[document.forms[
].cs.selectedIndex].value;
var
"currencies"
"currencies"
+
+  document.forms[
].title.value = currency_select[cs][0];
"currencies"
+  document.forms[
].code.value = cs;
"currencies"
+  document.forms[
].symbol_left.value = currency_select[cs][1];
"currencies"
+  document.forms[
].symbol_right.value = currency_select[cs][2];
"currencies"
+  document.forms[
].decimal_point.value = currency_select[cs][3];
"currencies"
+  document.forms[
].thousands_point.value = currency_select[cs][4];
"currencies"
+  document.forms[
].decimal_places.value = currency_select[cs][5];
"currencies"
+  document.forms[
].value.value = 1;
"currencies"
+}
+</script>
+
<!-- body //-->
<table border=
width=
cellspacing=
cellpadding=
>
"0"
"100%"
"2"
"2"
<tr>
@@ -208,6 +265,7 @@
$contents = array('form' => tep_draw_form('currencies', FILENAME_CURRENCIES, 'page=' .
$HTTP_GET_VARS['page'] . (isset($cInfo) ? '&cID=' . $cInfo->currencies_id : '') .
'&action=insert'));
$contents[] = array('text' => TEXT_INFO_INSERT_INTRO);
+      $contents[] = array('text' => '<br>' . tep_draw_pull_down_menu('cs',
$currency_select_array, '', 'onchange=
'));
"updateForm();"
$contents[] = array('text' => '<br>' . TEXT_INFO_CURRENCY_TITLE . '<br>' .
tep_draw_input_field('title'));
$contents[] = array('text' => '<br>' . TEXT_INFO_CURRENCY_CODE . '<br>' .
tep_draw_input_field('code'));
VB Imaging - Micro PDF 417 VB Barcode Generation
with established ISO/IEC barcode specification and standard You can easily generator Micro PDF 417 barcode and a program with an incorrect format", please check
can't select text in pdf file; break pdf into smaller files
GS1-128 C#.NET Integration Tutoria
by GS1 in its system standards using Code 128 barcode specification. text //Generate EAN 128 barcodes in GIF image format ean128.generateBarcodeToImageFile
pdf split and merge; break a pdf file
$contents[] = array('text' => '<br>' . TEXT_INFO_CURRENCY_SYMBOL_LEFT . '<br>' .
tep_draw_input_field('symbol_left'));
catalog/admin/includes/languages/english.php
@@ -37,7 +37,7 @@ function tep_date_raw($date, $reverse = 
) {
false
define('HTML_PARAMS','dir=
lang=
');
"ltr"
"en"
// charset 
web pages and emails
for
-define('CHARSET', 'iso-8859-1');
+define('CHARSET', 'utf-8');
// page title
define('TITLE', 'osCommerce Online Merchant Administration Tool');
catalog/admin/includes/languages/english/currencies.php
@@ -18,6 +18,7 @@ define('TABLE_HEADING_CURRENCY_VALUE', 'Value');
define('TABLE_HEADING_ACTION', 'Action');
define('TEXT_INFO_EDIT_INTRO', 'Please make any necessary changes');
+define('TEXT_INFO_COMMON_CURRENCIES', '-- Common Currencies --');
define('TEXT_INFO_CURRENCY_TITLE', 'Title:');
define('TEXT_INFO_CURRENCY_CODE', 'Code:');
define('TEXT_INFO_CURRENCY_SYMBOL_LEFT', 'Symbol Left:');
catalog/includes/languages/english.php
@@ -42,7 +42,7 @@ define('LANGUAGE_CURRENCY', 'USD');
define('HTML_PARAMS','dir=
lang=
');
"LTR"
"en"
// charset 
web pages and emails
for
-define('CHARSET', 'iso-8859-1');
+define('CHARSET', 'utf-8');
// page title
define('TITLE', STORE_NAME);
(A) (SQL) (NEW) Introduce Security Directory Permissions Feature
(A) (SQL) (NEW) Introduce Security Directory Permissions Feature
Introduce new Security Directory Permissions feature to list all directories and show which are writable and which whitelisted directories
should be writable.
Affected Files
catalog/admin/includes/boxes/tools.php
catalog/admin/includes/database_tables.php
catalog/admin/includes/filenames.php
catalog/admin/includes/languages/english.php
catalog/admin/includes/languages/english/sec_dir_permissions.php --- (new file)
catalog/admin/sec_dir_permissions.php --- (new file)
View Changes Online
SQL Queries
CREATE TABLE sec_directory_whitelist (
id 
NOT NULL auto_increment,
int
directory varchar(255) NOT NULL,
PRIMARY KEY (id)
);
INSERT INTO sec_directory_whitelist values (
, 'admin/backups');
null
INSERT INTO sec_directory_whitelist values (
, 'admin/images/graphs');
null
INSERT INTO sec_directory_whitelist values (
, 'images');
null
INSERT INTO sec_directory_whitelist values (
, 'images/banners');
null
INSERT INTO sec_directory_whitelist values (
, 'images/dvd');
null
INSERT INTO sec_directory_whitelist values (
, 'images/gt_interactive');
null
INSERT INTO sec_directory_whitelist values (
, 'images/hewlett_packard');
null
INSERT INTO sec_directory_whitelist values (
, 'images/matrox');
null
INSERT INTO sec_directory_whitelist values (
, 'images/microsoft');
null
INSERT INTO sec_directory_whitelist values (
, 'images/sierra');
null
INSERT INTO sec_directory_whitelist values (
, 'includes/work');
null
INSERT INTO sec_directory_whitelist values (
, 'pub');
null
This changeset includes updates to English language definition files. Please perform similar changes to other languages
that are also installed.
catalog/admin/includes/boxes/tools.php
@@ -28,6 +28,7 @@
'<a href=
class=
"' . tep_href_link(FILENAME_FILE_MANAGER) . '"
>' . BOX_TOOLS_FILE_MANAGER . '</a><br>' .
"menuBoxContentLink"
'<a href=
class=
"' . tep_href_link(FILENAME_MAIL) . '"
>' . BOX_TOOLS_MAIL . '</a><br>' .
"menuBoxContentLink"
'<a href=
class=
"' . tep_href_link(FILENAME_NEWSLETTERS) . '"
>' . BOX_TOOLS_NEWSLETTER_MANAGER . '</a><br>' .
"menuBoxContentLink"
+                                   '<a href="' . tep_href_link(FILENAME_SEC_DIR_PERMISSIONS) . '"
class=
>' . BOX_TOOLS_SEC_DIR_PERMISSIONS . '</a><br>' .
"menuBoxContentLink"
'<a href=
class=
"' . tep_href_link(FILENAME_SERVER_INFO) . '"
>' . BOX_TOOLS_SERVER_INFO . '</a><br>' .
"menuBoxContentLink"
'<a href=
class=
"' . tep_href_link(FILENAME_WHOS_ONLINE) . '"
>' . BOX_TOOLS_WHOS_ONLINE . '</a>');
"menuBoxContentLink"
}
catalog/admin/includes/database_tables.php
@@ -48,6 +48,7 @@
define('TABLE_PRODUCTS_TO_CATEGORIES', 'products_to_categories');
define('TABLE_REVIEWS', 'reviews');
define('TABLE_REVIEWS_DESCRIPTION', 'reviews_description');
+  define('TABLE_SEC_DIRECTORY_WHITELIST', 'sec_directory_whitelist');
define('TABLE_SESSIONS', 'sessions');
define('TABLE_SPECIALS', 'specials');
define('TABLE_TAX_CLASS', 'tax_class');
catalog/admin/includes/filenames.php
@@ -40,6 +40,7 @@
define('FILENAME_PRODUCTS_ATTRIBUTES', 'products_attributes.php');
define('FILENAME_PRODUCTS_EXPECTED', 'products_expected.php');
define('FILENAME_REVIEWS', 'reviews.php');
+  define('FILENAME_SEC_DIR_PERMISSIONS', 'sec_dir_permissions.php');
define('FILENAME_SERVER_INFO', 'server_info.php');
define('FILENAME_SHIPPING_MODULES', 'shipping_modules.php');
define('FILENAME_SPECIALS', 'specials.php');
catalog/admin/includes/languages/english.php
@@ -105,6 +105,7 @@ define('BOX_TOOLS_DEFINE_LANGUAGE', 'Define Languages');
define('BOX_TOOLS_FILE_MANAGER', 'File Manager');
define('BOX_TOOLS_MAIL', 'Send Email');
define('BOX_TOOLS_NEWSLETTER_MANAGER', 'Newsletter Manager');
+define('BOX_TOOLS_SEC_DIR_PERMISSIONS', 'Security Directory Permissions');
define('BOX_TOOLS_SERVER_INFO', 'Server Info');
define('BOX_TOOLS_WHOS_ONLINE', 'Who\'s Online');
catalog/admin/includes/languages/english/sec_dir_permissions.php --- (new file)
This is a new file. (Download File)
catalog/admin/sec_dir_permissions.php --- (new file)
This is a new file. (Download File)
(AC) (SQL) (NEW) Introduce Action Recorder Feature
(AC) (SQL) (NEW) Introduce Action Recorder Feature
Importance: Medium | Difficulty: Hard
Introduce new modular Action Recorder feature to log certain actions. This includes the following action recorder modules:
Contact Us
Tell a Friend
Administration Tool Login
Affected Files
catalog/admin/action_recorder.php --- (new file)
catalog/admin/includes/application_top.php
catalog/admin/includes/boxes/modules.php
catalog/admin/includes/boxes/tools.php
catalog/admin/includes/classes/action_recorder.php --- (new file)
catalog/admin/includes/database_tables.php
catalog/admin/includes/filenames.php
catalog/admin/includes/languages/english.php
catalog/admin/includes/languages/english/action_recorder.php --- (new file)
catalog/admin/includes/languages/english/login.php
catalog/admin/includes/languages/english/modules.php
catalog/admin/includes/languages/english/modules/index/admin_logins.php --- (new file)
catalog/admin/includes/modules/index/admin_logins.php --- (new file)
catalog/admin/login.php
catalog/admin/modules.php
catalog/contact_us.php
catalog/includes/application_top.php
catalog/includes/classes/action_recorder.php --- (new file)
catalog/includes/database_tables.php
catalog/includes/languages/english/contact_us.php
catalog/includes/languages/english/modules/action_recorder/ar_admin_login.php --- (new file)
catalog/includes/languages/english/modules/action_recorder/ar_contact_us.php --- (new file)
catalog/includes/languages/english/modules/action_recorder/ar_tell_a_friend.php --- (new file)
catalog/includes/languages/english/tell_a_friend.php
catalog/includes/modules/action_recorder/ar_admin_login.php --- (new file)
catalog/includes/modules/action_recorder/ar_contact_us.php --- (new file)
catalog/includes/modules/action_recorder/ar_tell_a_friend.php --- (new file)
catalog/tell_a_friend.php
View Changes Online
SQL Queries
CREATE TABLE action_recorder (
id 
NOT NULL auto_increment,
int
module varchar(255) NOT NULL,
user_id 
,
int
user_name varchar(255),
identifier varchar(255) NOT NULL,
success 
(1),
char
date_added datetime NOT NULL,
PRIMARY KEY (id),
KEY idx_action_recorder_module (module),
KEY idx_action_recorder_user_id (user_id),
KEY idx_action_recorder_identifier (identifier),
KEY idx_action_recorder_date_added (date_added)
);
INSERT INTO configuration (configuration_title, configuration_key, configuration_value,
configuration_description, configuration_group_id, sort_order, date_added) VALUES ('Installed
Modules', 'MODULE_ACTION_RECORDER_INSTALLED',
'ar_admin_login.php;ar_contact_us.php;ar_tell_a_friend.php', 'List of action recorder module
filenames separated by a semi-colon. This is automatically updated. No need to edit.', '6', '0',
now());
INSERT INTO configuration (configuration_title, configuration_key, configuration_value,
configuration_description, configuration_group_id, sort_order, date_added) VALUES ('Minimum
Minutes Per E-Mail', 'MODULE_ACTION_RECORDER_CONTACT_US_EMAIL_MINUTES', '15', 'Minimum number of
minutes to allow 1 e-mail to be sent (eg, 15 
1 e-mail every 15 minutes)', '6', '0', now());
for
INSERT INTO configuration (configuration_title, configuration_key, configuration_value,
configuration_description, configuration_group_id, sort_order, date_added) VALUES ('Minimum
Minutes Per E-Mail', 'MODULE_ACTION_RECORDER_TELL_A_FRIEND_EMAIL_MINUTES', '15', 'Minimum number
of minutes to allow 1 e-mail to be sent (eg, 15 
1 e-mail every 15 minutes)', '6', '0', now());
for
INSERT INTO configuration (configuration_title, configuration_key, configuration_value,
configuration_description, configuration_group_id, sort_order, date_added) VALUES ('Allowed
Minutes', 'MODULE_ACTION_RECORDER_ADMIN_LOGIN_MINUTES', '5', '
of minutes to allow login
Number
attempts to occur.', '6', '0', now());
INSERT INTO configuration (configuration_title, configuration_key, configuration_value,
configuration_description, configuration_group_id, sort_order, date_added) VALUES ('Allowed
Attempts', 'MODULE_ACTION_RECORDER_ADMIN_LOGIN_ATTEMPTS', '3', '
of login attempts to allow
Number
within the specified period.', '6', '0', now());
This changeset includes updates to English language definition files. Please perform similar changes to other languages
that are also installed.
catalog/admin/action_recorder.php --- (new file)
This is a new file. (Download File)
catalog/admin/includes/application_top.php
@@ -199,6 +199,9 @@
// file uploading class
require(DIR_WS_CLASSES . 'upload.php');
+// action recorder
+  require(DIR_WS_CLASSES . 'action_recorder.php');
+
// calculate category path
(isset($HTTP_GET_VARS['cPath'])) {
if
$cPath = $HTTP_GET_VARS['cPath'];
catalog/admin/includes/boxes/modules.php
Documents you may be interested
Documents you may be interested