diff --git a/README.md b/README.md index b7b7d53ff..3e2dc740e 100644 --- a/README.md +++ b/README.md @@ -90,13 +90,13 @@ Thank you to all shopowners, developers, consultants and business owners who are ## Join the Phoenix Club -If you wish to help steer the future direction of the software you need to join the [Phoenix Club](https://forums.oscommerce.com/clubs/1-phoenix/) +If you wish to help steer the future direction of the software you need to join the [Phoenix Club](https://phoenixcart.org/forum/) # Helpful Links Channel | URL ------------ | ------------- -Phoenix Club | https://forums.oscommerce.com/forum/117-topics/ +Phoenix Club | https://phoenixcart.org/forum/ Phoenix (Youtube) | https://www.youtube.com/channel/UCjJe0ZX3-nGzeJFEzcVUyIA/ Zipurman Coding (Youtube) | https://www.youtube.com/user/zipurman/videos Support (Discord) | https://discord.gg/3pzfrtMAX4 @@ -110,8 +110,7 @@ Images in the default installation are copyright their respective owners; Image | Owner | Usage ------------ | ------------- | ------------- -osCommerce Logo | osCommerce | https://www.oscommerce.com/Us&Legal#TrademarkPolicy -Phoenix Logo | G Burton | Phoenix Logo may not be used without prior written permission from the copyright owner. +Phoenix Logo | Phoenix Cart | https://phoenixcart.org Phoenix Logo may not be used without prior written permission from the copyright owner. Oranges, Lemons, Pears, Apples | Eelffica from Pixabay | https://pixabay.com/service/license/ Tomatoes | Rocky_H from Pixabay | https://pixabay.com/service/license/ Heart | Gerhard Gellinger from Pixabay | https://pixabay.com/service/license/ diff --git a/admin/administrators.php b/admin/administrators.php index 6c388bae8..e76a5d880 100644 --- a/admin/administrators.php +++ b/admin/administrators.php @@ -16,12 +16,12 @@ $htpasswd_array = null; $is_iis = stripos($_SERVER['SERVER_SOFTWARE'], 'iis'); - $authuserfile_array = ['##### OSCOM ADMIN PROTECTION - BEGIN #####', + $authuserfile_array = ['##### Phoenix ADMIN PROTECTION - BEGIN #####', 'AuthType Basic', - 'AuthName "OSCOM CE Phoenix Administration Tool"', + 'AuthName "CE Phoenix Administration Tool"', 'AuthUserFile ' . DIR_FS_ADMIN . '.htpasswd_oscommerce', 'Require valid-user', - '##### OSCOM ADMIN PROTECTION - END #####']; + '##### Phoenix ADMIN PROTECTION - END #####']; if (!$is_iis && file_exists(DIR_FS_ADMIN . '.htpasswd_oscommerce') && tep_is_writable(DIR_FS_ADMIN . '.htpasswd_oscommerce') && file_exists(DIR_FS_ADMIN . '.htaccess') && tep_is_writable(DIR_FS_ADMIN . '.htaccess')) { $htaccess_array = []; diff --git a/admin/backup.php b/admin/backup.php index 57ca26a05..790f40106 100644 --- a/admin/backup.php +++ b/admin/backup.php @@ -35,8 +35,8 @@ $fp = fopen(DIR_FS_BACKUP . $backup_file, 'w'); $schema = sprintf(<<<'EOSQL' -# osCommerce, Open Source E-Commerce Solutions -# http://www.oscommerce.com +# CE Phoenix, E-Commerce made Easy +# https://phoenixcart.org # # Database Backup For %s # Copyright (c) %d %s diff --git a/admin/includes/application_top.php b/admin/includes/application_top.php index eb811bd11..246e6e763 100644 --- a/admin/includes/application_top.php +++ b/admin/includes/application_top.php @@ -34,7 +34,7 @@ $OSCOM_Hooks->generate('system', 'startApplication'); // Define the project version --- obsolete, now retrieved with tep_get_version() - define('PROJECT_VERSION', 'OSCOM CE Phoenix'); + define('PROJECT_VERSION', 'CE Phoenix'); // set the type of request (secure or not) $request_type = (getenv('HTTPS') === 'on') ? 'SSL' : 'NONSSL'; diff --git a/admin/includes/footer.php b/admin/includes/footer.php index 0cc3f0327..5d7b7740c 100644 --- a/admin/includes/footer.php +++ b/admin/includes/footer.php @@ -14,6 +14,6 @@ diff --git a/admin/includes/languages/english.php b/admin/includes/languages/english.php index 4fe16762c..273028584 100644 --- a/admin/includes/languages/english.php +++ b/admin/includes/languages/english.php @@ -32,7 +32,7 @@ const CHARSET = 'utf-8'; // page title -const TITLE = 'OSCOM CE Phoenix Administration Tool'; +const TITLE = 'CE Phoenix Administration Tool'; // header text in includes/header.php const HEADER_TITLE_ONLINE_CATALOG = 'Your Shop'; diff --git a/admin/includes/languages/english/administrators.php b/admin/includes/languages/english/administrators.php index db82cb92a..8c794396a 100644 --- a/admin/includes/languages/english/administrators.php +++ b/admin/includes/languages/english/administrators.php @@ -27,8 +27,8 @@ define('ERROR_ADMINISTRATOR_EXISTS', 'Error: Administrator already exists.'); -define('HTPASSWD_INFO', 'Additional Protection With htaccess/htpasswd

This OSCOM CE Phoenix Administration Tool installation is not additionally secured through htaccess/htpasswd means.

Enabling the htaccess/htpasswd security layer will automatically store administrator username and passwords in a htpasswd file when updating administrator password records.

Please note, if this additional security layer is enabled and you can no longer access the Administration Tool, please make the following changes and consult your hosting provider to enable htaccess/htpasswd protection:

1. Edit this file:

' . DIR_FS_ADMIN . '.htaccess

Remove the following lines if they exist:

%s

2. Delete this file:

' . DIR_FS_ADMIN . '.htpasswd_oscommerce

'); -define('HTPASSWD_SECURED', 'Additional Protection With htaccess/htpasswd

This OSCOM CE Phoenix Administration Tool installation is additionally secured through htaccess/htpasswd means.

'); -define('HTPASSWD_PERMISSIONS', 'Additional Protection With htaccess/htpasswd

This OSCOM CE Phoenix Administration Tool installation is not additionally secured through htaccess/htpasswd means.

The following files need to be writable by the web server to enable the htaccess/htpasswd security layer:

Reload this page to confirm if the correct file permissions have been set.

'); +define('HTPASSWD_INFO', 'Additional Protection With htaccess/htpasswd

This CE Phoenix Administration Tool installation is not additionally secured through htaccess/htpasswd means.

Enabling the htaccess/htpasswd security layer will automatically store administrator username and passwords in a htpasswd file when updating administrator password records.

Please note, if this additional security layer is enabled and you can no longer access the Administration Tool, please make the following changes and consult your hosting provider to enable htaccess/htpasswd protection:

1. Edit this file:

' . DIR_FS_ADMIN . '.htaccess

Remove the following lines if they exist:

%s

2. Delete this file:

' . DIR_FS_ADMIN . '.htpasswd_oscommerce

'); +define('HTPASSWD_SECURED', 'Additional Protection With htaccess/htpasswd

This CE Phoenix Administration Tool installation is additionally secured through htaccess/htpasswd means.

'); +define('HTPASSWD_PERMISSIONS', 'Additional Protection With htaccess/htpasswd

This CE Phoenix Administration Tool installation is not additionally secured through htaccess/htpasswd means.

The following files need to be writable by the web server to enable the htaccess/htpasswd security layer:

Reload this page to confirm if the correct file permissions have been set.

'); define('IMAGE_INSERT_NEW_ADMIN', 'New Admin User'); diff --git a/admin/includes/languages/english/modules/cfg_modules/cfgm_currencies.php b/admin/includes/languages/english/modules/cfg_modules/cfgm_currencies.php index c41134fda..3c95d650b 100644 --- a/admin/includes/languages/english/modules/cfg_modules/cfgm_currencies.php +++ b/admin/includes/languages/english/modules/cfg_modules/cfgm_currencies.php @@ -1,17 +1,13 @@ An update for OSCOM CE Phoenix is available!'); +const MODULE_ADMIN_DASHBOARD_VERSION_CHECK_UPDATE_AVAILABLE = ' An update for CE Phoenix is available!'; +const MODULE_ADMIN_DASHBOARD_VERSION_CHECK_IS_LATEST = ' You are using the latest CE Phoenix!'; diff --git a/admin/includes/languages/english/modules/security_check/extended/shopside_osc.php b/admin/includes/languages/english/modules/security_check/extended/shopside_osc.php index 5e559d0ef..ad0b6bf81 100644 --- a/admin/includes/languages/english/modules/security_check/extended/shopside_osc.php +++ b/admin/includes/languages/english/modules/security_check/extended/shopside_osc.php @@ -1,19 +1,15 @@ Tools > Version Checker for more detailed information.'); +define('MODULE_SECURITY_CHECK_EXTENDED_SHOPSIDE_OSC_TITLE', 'Versioning - Phoenix'); +define('MODULE_SECURITY_CHECK_EXTENDED_SHOPSIDE_OSC_MESSAGE', 'Your shop is based on CE Phoenix v%s, see Tools > Version Checker for more detailed information.'); diff --git a/admin/includes/languages/english/modules/security_check/github_directory.php b/admin/includes/languages/english/modules/security_check/github_directory.php index 0fe62368c..b8e0123af 100644 --- a/admin/includes/languages/english/modules/security_check/github_directory.php +++ b/admin/includes/languages/english/modules/security_check/github_directory.php @@ -1,17 +1,13 @@ CE Phoenix v%s'; -define('VERSION_RUNNING_LATEST', 'You are running the latest version of CE Phoenix.'); -define('VERSION_UPGRADES_AVAILABLE', 'A new version is available for download! (CE Phoenix v%s)
Certified Developers and detailed "Do It Yourself" instructions are available in the Phoenix Club.'); -define('ERROR_COULD_NOT_CONNECT', 'Could not connect to the CE Phoenix website to check for new versions.'); +const VERSION_RUNNING_LATEST = 'You are running the latest version of CE Phoenix.'; +define('VERSION_UPGRADES_AVAILABLE', 'CE Phoenix %s is the latest version available for you!
Certified Developers and detailed "Do It Yourself" instructions are available in the Phoenix Club.'); diff --git a/admin/includes/modules/dashboard/d_latest_news.php b/admin/includes/modules/dashboard/d_latest_news.php deleted file mode 100644 index 59d2b8775..000000000 --- a/admin/includes/modules/dashboard/d_latest_news.php +++ /dev/null @@ -1,94 +0,0 @@ -enabled ) { - $this->content_width = (int)MODULE_ADMIN_DASHBOARD_LATEST_NEWS_CONTENT_WIDTH; - } - } - - function getOutput() { - $feed = Web::load_xml('https://feeds.feedburner.com/osCommerceNewsAndBlogs'); - - $output = ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - - $count = 0; - foreach ($feed->channel->item as $item) { - $output .= ''; - $output .= ''; - $output .= ''; - $output .= ''; - - $count++; - if ($count == (int)MODULE_ADMIN_DASHBOARD_LATEST_NEWS_DISPLAY) { - break; - } - } - - $output .= ''; - $output .= '
' . MODULE_ADMIN_DASHBOARD_LATEST_NEWS_TITLE . ''. MODULE_ADMIN_DASHBOARD_LATEST_NEWS_DATE . '
' . $item->title . '' . date("F j, Y", strtotime($item->pubDate)) . '
'; - - $output .= '
'; - $output .= '' . tep_image('images/icon_phoenix.png', 'Phoenix') . ' '; - $output .= '' . tep_image('images/icon_oscommerce.png', MODULE_ADMIN_DASHBOARD_LATEST_NEWS_ICON_NEWS) . ' '; - $output .= ' '; - $output .= ' '; - $output .= ' '; - $output .= ' '; - $output .= '
'; - - return $output; - } - - protected function get_parameters() { - return [ - 'MODULE_ADMIN_DASHBOARD_LATEST_NEWS_STATUS' => [ - 'title' => 'Enable Latest News Module', - 'value' => 'True', - 'desc' => 'Do you want to show the latest osCommerce News on the dashboard?', - 'set_func' => "tep_cfg_select_option(['True', 'False'], ", - ], - 'MODULE_ADMIN_DASHBOARD_LATEST_NEWS_DISPLAY' => [ - 'title' => 'Items to display', - 'value' => '5', - 'desc' => 'This number of items will display, ordered by latest published.', - ], - 'MODULE_ADMIN_DASHBOARD_LATEST_NEWS_CONTENT_WIDTH' => [ - 'title' => 'Content Width', - 'value' => '6', - 'desc' => 'What width container should the content be shown in? (12 = full width, 6 = half width).', - 'set_func' => "tep_cfg_select_option(['12', '11', '10', '9', '8', '7', '6', '5', '4', '3', '2', '1'], ", - ], - 'MODULE_ADMIN_DASHBOARD_LATEST_NEWS_SORT_ORDER' => [ - 'title' => 'Sort Order', - 'value' => '700', - 'desc' => 'Sort order of display. Lowest is displayed first.', - ], - ]; - } - - } diff --git a/admin/includes/modules/dashboard/d_phoenix_addons.php b/admin/includes/modules/dashboard/d_phoenix_addons.php index cbebdcd86..0312686fa 100644 --- a/admin/includes/modules/dashboard/d_phoenix_addons.php +++ b/admin/includes/modules/dashboard/d_phoenix_addons.php @@ -53,8 +53,8 @@ function getOutput() { $output .= ''; $output .= '
'; - $output .= '' . tep_image('images/icon_phoenix.png', 'Phoenix') . ' '; - $output .= '' . MODULE_ADMIN_DASHBOARD_PHOENIX_JOIN_CLUB . ''; + $output .= '' . tep_image('images/icon_phoenix.png', 'Phoenix') . ' '; + $output .= '' . MODULE_ADMIN_DASHBOARD_PHOENIX_JOIN_CLUB . ''; $output .= '
'; $output .= tep_draw_bootstrap_button(MODULE_ADMIN_DASHBOARD_PHOENIX_VIEW_ALL, 'far fa-list-alt', tep_href_link('certified_addons.php'), null, null, 'btn btn-success btn-block mb-2'); diff --git a/admin/includes/modules/dashboard/d_version_check.php b/admin/includes/modules/dashboard/d_version_check.php index d864286b3..d8f6ea5b2 100644 --- a/admin/includes/modules/dashboard/d_version_check.php +++ b/admin/includes/modules/dashboard/d_version_check.php @@ -2,103 +2,81 @@ /* $Id$ - osCommerce, Open Source E-Commerce Solutions - http://www.oscommerce.com + CE Phoenix, E-Commerce made Easy + https://phoenixcart.org - Copyright (c) 2019 osCommerce + Copyright (c) 2021 Phoenix Cart Released under the GNU General Public License */ - class d_version_check { - var $code = 'd_version_check'; - var $title; - var $description; - var $sort_order; - var $enabled = false; - var $content_width = 6; + class d_version_check extends abstract_module { - function __construct() { - $this->title = MODULE_ADMIN_DASHBOARD_VERSION_CHECK_TITLE; - $this->description = MODULE_ADMIN_DASHBOARD_VERSION_CHECK_DESCRIPTION; + const CONFIG_KEY_BASE = 'MODULE_ADMIN_DASHBOARD_VERSION_CHECK_'; - if ( defined('MODULE_ADMIN_DASHBOARD_VERSION_CHECK_STATUS') ) { - $this->sort_order = MODULE_ADMIN_DASHBOARD_VERSION_CHECK_SORT_ORDER; - $this->enabled = (MODULE_ADMIN_DASHBOARD_VERSION_CHECK_STATUS == 'True'); - $this->content_width = (int)MODULE_ADMIN_DASHBOARD_VERSION_CHECK_CONTENT_WIDTH; + const REQUIRES = []; + + public $content_width = 6; + + public function __construct() { + parent::__construct(); + + if ($this->enabled) { + $this->content_width = (int)(self::get_constant('MODULE_ADMIN_DASHBOARD_VERSION_CHECK_CONTENT_WIDTH') ?? 6); } } function getOutput() { - $cache_file = DIR_FS_CACHE . 'oscommerce_version_check.cache'; $current_version = tep_get_version(); - $new_version = false; - $output = null; - - if (file_exists($cache_file)) { - $date_last_checked = tep_datetime_short(date('Y-m-d H:i:s', filemtime($cache_file))); - - $releases = unserialize(implode('', file($cache_file))); - - foreach ($releases as $version) { - $version_array = explode('|', $version); - - if (version_compare($current_version, $version_array[0], '<')) { - $new_version = true; - break; - } - } - } else { - $date_last_checked = MODULE_ADMIN_DASHBOARD_VERSION_CHECK_NEVER; - } - - $output .= ''; + $feed = Web::load_xml('https://feeds.feedburner.com/phoenixUpdate'); + $compared_version = preg_replace('/[^0-9.]/', '', $feed->channel->item[0]->title); + + $output = '
'; $output .= ''; $output .= ''; - $output .= ''; - $output .= ''; + $output .= ''; $output .= ''; $output .= ''; $output .= ''; - - if ($new_version == true) { - $output .= ''; - $output .= ''; - $output .= ''; - } - + if (version_compare($current_version, $compared_version, '<')) { $output .= ''; - $output .= ''; - $output .= ''; + $output .= ''; + $output .= ''; $output .= ''; - + } + else { + $output .= ''; + $output .= ''; + $output .= ''; + } $output .= ''; $output .= '
' . MODULE_ADMIN_DASHBOARD_VERSION_CHECK_TITLE . ''. MODULE_ADMIN_DASHBOARD_VERSION_CHECK_DATE . '' . MODULE_ADMIN_DASHBOARD_VERSION_CHECK_TITLE . '
' . MODULE_ADMIN_DASHBOARD_VERSION_CHECK_UPDATE_AVAILABLE . '
' . MODULE_ADMIN_DASHBOARD_VERSION_CHECK_CHECK_NOW . '' . $date_last_checked . '' . MODULE_ADMIN_DASHBOARD_VERSION_CHECK_UPDATE_AVAILABLE . '' . MODULE_ADMIN_DASHBOARD_VERSION_CHECK_CHECK_NOW . '
' . MODULE_ADMIN_DASHBOARD_VERSION_CHECK_IS_LATEST . '
'; return $output; } - function isEnabled() { - return $this->enabled; - } - - function check() { - return defined('MODULE_ADMIN_DASHBOARD_VERSION_CHECK_STATUS'); + public function get_parameters() { + return [ + 'MODULE_ADMIN_DASHBOARD_VERSION_CHECK_STATUS' => [ + 'title' => 'Enable Version Check Module', + 'value' => 'True', + 'desc' => 'Do you want to show the version check results on the dashboard?', + 'set_func' => "tep_cfg_select_option(['True', 'False'], ", + ], + 'MODULE_ADMIN_DASHBOARD_VERSION_CHECK_CONTENT_WIDTH' => [ + 'title' => 'Content Width', + 'value' => '6', + 'desc' => 'What width container should the content be shown in? (12 = full width, 6 = half width).', + 'set_func' => "tep_cfg_select_option(['12', '11', '10', '9', '8', '7', '6', '5', '4', '3', '2', '1'], ", + ], + 'MODULE_ADMIN_DASHBOARD_VERSION_CHECK_SORT_ORDER' => [ + 'title' => 'Sort Order', + 'value' => '0', + 'desc' => 'Sort order of display. Lowest is displayed first.', + ], + ]; } - function install() { - tep_db_query("insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable Version Check Module', 'MODULE_ADMIN_DASHBOARD_VERSION_CHECK_STATUS', 'True', 'Do you want to show the version check results on the dashboard?', '6', '1', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())"); - tep_db_query("insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Content Width', 'MODULE_ADMIN_DASHBOARD_VERSION_CHECK_CONTENT_WIDTH', '6', 'What width container should the content be shown in? (12 = full width, 6 = half width).', '6', '3', 'tep_cfg_select_option(array(\'12\', \'11\', \'10\', \'9\', \'8\', \'7\', \'6\', \'5\', \'4\', \'3\', \'2\', \'1\'), ', now())"); - tep_db_query("insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort Order', 'MODULE_ADMIN_DASHBOARD_VERSION_CHECK_SORT_ORDER', '900', 'Sort order of display. Lowest is displayed first.', '6', '0', now())"); - } - - function remove() { - tep_db_query("delete from configuration where configuration_key in ('" . implode("', '", $this->keys()) . "')"); - } - - function keys() { - return array('MODULE_ADMIN_DASHBOARD_VERSION_CHECK_STATUS', 'MODULE_ADMIN_DASHBOARD_VERSION_CHECK_CONTENT_WIDTH', 'MODULE_ADMIN_DASHBOARD_VERSION_CHECK_SORT_ORDER'); - } } \ No newline at end of file diff --git a/admin/login.php b/admin/login.php index 7fb59d87a..8199f1fd7 100644 --- a/admin/login.php +++ b/admin/login.php @@ -156,7 +156,7 @@
- +
diff --git a/admin/modules.php b/admin/modules.php index 8480a45df..b60a85406 100644 --- a/admin/modules.php +++ b/admin/modules.php @@ -331,10 +331,6 @@ $contents[] = ['class' => 'text-center', 'text' => tep_draw_bootstrap_button(IMAGE_EDIT, 'fas fa-plus', tep_href_link('modules.php', 'set=' . $set . '&module=' . $mInfo->code . '&action=edit'), null, null, 'btn-warning mr-2') . tep_draw_bootstrap_button(IMAGE_MODULE_REMOVE, 'fas fa-minus', tep_href_link('modules.php', 'set=' . $set . '&module=' . $mInfo->code . '&action=remove'), null, null, 'btn-warning')]; - if (isset($mInfo->signature) && (list($scode, $smodule, $sversion, $soscversion) = explode('|', $mInfo->signature))) { - $contents[] = ['text' => '' . TEXT_INFO_VERSION . ' ' . $sversion . ' (' . TEXT_INFO_ONLINE_STATUS . ')']; - } - if (isset($mInfo->api_version)) { $contents[] = ['text' => '' . TEXT_INFO_API_VERSION . ' ' . $mInfo->api_version]; } @@ -345,10 +341,6 @@ if (isset($mInfo)) { $contents[] = ['class' => 'text-center', 'text' => tep_draw_bootstrap_button(IMAGE_MODULE_INSTALL, 'fas fa-plus', tep_href_link('modules.php', 'set=' . $set . '&module=' . $mInfo->code . '&action=install'), null, null, 'btn-warning')]; - if (isset($mInfo->signature) && (list($scode, $smodule, $sversion, $soscversion) = explode('|', $mInfo->signature))) { - $contents[] = ['text' => '' . TEXT_INFO_VERSION . ' ' . $sversion . ' (' . TEXT_INFO_ONLINE_STATUS . ')']; - } - if (isset($mInfo->api_version)) { $contents[] = ['text' => '' . TEXT_INFO_API_VERSION . ' ' . $mInfo->api_version]; } diff --git a/admin/modules_content.php b/admin/modules_content.php index 3bca9888d..81d709655 100644 --- a/admin/modules_content.php +++ b/admin/modules_content.php @@ -357,10 +357,6 @@ function _sortContentModuleFiles($a, $b) { if ($action == 'list_new') { $contents[] = ['class' => 'text-center', 'text' => tep_draw_bootstrap_button(IMAGE_MODULE_INSTALL, 'fas fa-plus', tep_href_link('modules_content.php', 'module=' . $mInfo->code . '&action=install'), null, null, 'btn-warning')]; - if (isset($mInfo->signature) && (list($scode, $smodule, $sversion, $soscversion) = explode('|', $mInfo->signature))) { - $contents[] = ['text' => ' ' . TEXT_INFO_VERSION . ' ' . $sversion . ' (' . TEXT_INFO_ONLINE_STATUS . ')']; - } - if (isset($mInfo->api_version)) { $contents[] = ['text' => ' ' . TEXT_INFO_API_VERSION . ' ' . $mInfo->api_version]; } @@ -402,10 +398,6 @@ function _sortContentModuleFiles($a, $b) { $contents[] = ['class' => 'text-center', 'text' => tep_draw_bootstrap_button(IMAGE_EDIT, 'fas fa-plus', tep_href_link('modules_content.php', 'module=' . $mInfo->code . '&action=edit'), null, null, 'btn-warning mr-2') . tep_draw_bootstrap_button(IMAGE_MODULE_REMOVE, 'fas fa-minus', tep_href_link('modules_content.php', 'module=' . $mInfo->code . '&action=remove'), null, null, 'btn-warning')]; - if (isset($mInfo->signature) && (list($scode, $smodule, $sversion, $soscversion) = explode('|', $mInfo->signature))) { - $contents[] = ['text' => ' ' . TEXT_INFO_VERSION . ' ' . $sversion . ' (' . TEXT_INFO_ONLINE_STATUS . ')']; - } - if (isset($mInfo->api_version)) { $contents[] = ['text' => ' ' . TEXT_INFO_API_VERSION . ' ' . $mInfo->api_version]; } diff --git a/admin/reviews.php b/admin/reviews.php index 5c0d2bf8b..74ff5f9f3 100644 --- a/admin/reviews.php +++ b/admin/reviews.php @@ -36,7 +36,7 @@ $OSCOM_Hooks->call('reviews', 'updateAction'); - tep_redirect(tep_href_link('reviews.php', 'rID=' . $reviews_id(isset($_GET['page']) ? '&page=' . (int)$_GET['page'] : ''))); + tep_redirect(tep_href_link('reviews.php', 'rID=' . $reviews_id . (isset($_GET['page']) ? '&page=' . (int)$_GET['page'] : ''))); break; case 'deleteconfirm': $reviews_id = Text::input($_GET['rID']); diff --git a/admin/security_checks.php b/admin/security_checks.php index 8565e3867..7e1bd3e8d 100644 --- a/admin/security_checks.php +++ b/admin/security_checks.php @@ -83,7 +83,6 @@ function tep_sort_secmodules($a, $b) { -   @@ -119,7 +118,6 @@ function tep_sort_secmodules($a, $b) { echo ' ' . htmlspecialchars($module['title']) . ''; echo '' . htmlspecialchars($module['code']) . ''; echo '' . $output . ''; - echo '' . (empty($secCheck->has_doc) ? '' : '') . ''; echo ''; } ?> diff --git a/admin/server_info.php b/admin/server_info.php index 39060d662..266d9b9e6 100644 --- a/admin/server_info.php +++ b/admin/server_info.php @@ -19,57 +19,7 @@ $info = tep_get_system_information(); break; - case 'submit': - $target_host = 'usage.oscommerce.com'; - $target_path = '/submit.php'; - - $encoded = base64_encode(serialize(tep_get_system_information())); - - $response = false; - - if (function_exists('curl_init')) { - $data = ['info' => $encoded]; - - $ch = curl_init(); - curl_setopt($ch, CURLOPT_URL, 'http://' . $target_host . $target_path); - curl_setopt($ch, CURLOPT_POST, 1); - curl_setopt($ch, CURLOPT_POSTFIELDS, $data); - curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); - $response = trim(curl_exec($ch)); - curl_close($ch); - } else { - if ($fp = @fsockopen($target_host, 80, $errno, $errstr, 30)) { - $data = 'info=' . $encoded; - - fputs($fp, "POST " . $target_path . " HTTP/1.1\r\n"); - fputs($fp, "Host: " . $target_host . "\r\n"); - fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n"); - fputs($fp, "Content-length: " . strlen($data) . "\r\n"); - fputs($fp, "Connection: close\r\n\r\n"); - fputs($fp, $data."\r\n\r\n"); - - $response = ''; - - while (!feof($fp)) { - $response .= fgets($fp, 4096); - } - - fclose($fp); - - $response = trim(substr($response, strrpos($response, "\r\n\r\n"))); - } - } - - if ($response != 'OK') { - $messageStack->add_session(ERROR_INFO_SUBMIT, 'error'); - } else { - $messageStack->add_session(SUCCESS_INFO_SUBMIT, 'success'); - } - - tep_redirect(tep_href_link('server_info.php')); - break; - - case 'save': + case 'save': $info = tep_get_system_information(); $info_file = 'server_info-' . date('YmdHis') . '.txt'; header('Content-type: text/plain'); @@ -101,8 +51,6 @@ echo tep_draw_bootstrap_button(BUTTON_SAVE_TO_DISK, 'fas fa-save', tep_href_link('server_info.php', 'action=save'), 'primary', null, 'btn-success btn-block btn-lg my-2'); - echo tep_draw_bootstrap_button(BUTTON_SEND_TO_OSCOMMERCE, 'fas fa-file-upload', tep_href_link('server_info.php', 'action=submit'), 'primary', null, 'btn-light'); - } else { $server = parse_url(HTTP_SERVER); ?> diff --git a/admin/version_check.php b/admin/version_check.php index e7b5e0ae1..ca466efb1 100644 --- a/admin/version_check.php +++ b/admin/version_check.php @@ -1,88 +1,36 @@ channel->item as $item) { + $compared_version = preg_replace('/[^0-9.]/', '', $item->title); - if (!empty($response)) { - $releases = explode("\n", $response); - } - } else { - if ($fp = @fsockopen('www.oscommerce.com', 80, $errno, $errstr, 30)) { - $header = 'GET /version/online_merchant/ce/phoenix/' . $major_version . ' HTTP/1.0' . "\r\n" . - 'Host: www.oscommerce.com' . "\r\n" . - 'Connection: close' . "\r\n\r\n"; - - fwrite($fp, $header); - - $response = ''; - while (!feof($fp)) { - $response .= fgets($fp, 1024); - } - - fclose($fp); - - $response = explode("\r\n\r\n", $response); // split header and content - - if (isset($response[1]) && !empty($response[1])) { - $releases = explode("\n", trim($response[1])); - } + if (version_compare($current_version, $compared_version, '<')) { + $new_versions[] = $item; } } - if (is_array($releases) && !empty($releases)) { - $serialized = serialize($releases); - if ($f = @fopen(DIR_FS_CACHE . 'oscommerce_version_check.cache', 'w')) { - fwrite ($f, $serialized, strlen($serialized)); - fclose($f); - } - - foreach ($releases as $version) { - $version_array = explode('|', $version); - - if (version_compare($current_version, $version_array[0], '<')) { - $new_versions[] = $version_array; - } - } - - if (!empty($new_versions)) { - $check_message = ['class' => 'alert alert-danger', 'message' => sprintf(VERSION_UPGRADES_AVAILABLE, $new_versions[0][0])]; - } else { - $check_message = ['class' => 'alert alert-success', 'message' => VERSION_RUNNING_LATEST]; - } + if (!empty($new_versions)) { + $check_message = ['class' => 'alert alert-danger', 'message' => sprintf(VERSION_UPGRADES_AVAILABLE, $new_versions[0]->title)]; } else { - $check_message = ['class' => 'alert alert-warning', 'message' => ERROR_COULD_NOT_CONNECT]; + $check_message = ['class' => 'alert alert-success', 'message' => VERSION_RUNNING_LATEST]; } require('includes/template_top.php'); @@ -90,7 +38,7 @@

-

OSCOM CE Phoenix v' . $current_version . '' ?>

+

@@ -111,11 +59,12 @@ date); ?> - OSCOM CE Phoenix v' . $version[0] . '' ?> - - ' ?> + link . '" target="_blank" rel="noreferrer">' . $version->title . '' ?> + format('l jS F, Y') ?> + link . '" target="_blank" rel="noreferrer">' ?> +?> \ No newline at end of file diff --git a/includes/apps/paypal/OSCOM_PayPal.php b/includes/apps/paypal/OSCOM_PayPal.php index a8759a4fe..b313411cc 100644 --- a/includes/apps/paypal/OSCOM_PayPal.php +++ b/includes/apps/paypal/OSCOM_PayPal.php @@ -633,7 +633,7 @@ function getVersion() { if ( is_numeric($version) ) { $this->_version = $version; } else { - trigger_error('OSCOM APP [PAYPAL]: Could not read App version number.'); + trigger_error('APP [PAYPAL]: Could not read App version number.'); } } diff --git a/includes/apps/paypal/languages/english/admin/privacy.php b/includes/apps/paypal/languages/english/admin/privacy.php index 5bedb8a8d..70eb52be0 100644 --- a/includes/apps/paypal/languages/english/admin/privacy.php +++ b/includes/apps/paypal/languages/english/admin/privacy.php @@ -2,7 +2,7 @@ privacy_body =
API Credentials
-

The PayPal App for OSCOM CE Phoenix allows store owners to automatically setup and configure the App with their PayPal API credentials without the need to enter them manually. This is performed securely by granting osCommerce access to retrieve the API credentials from the store owners PayPal account.

+

The PayPal App for CE Phoenix allows store owners to automatically setup and configure the App with their PayPal API credentials without the need to enter them manually. This is performed securely by granting osCommerce access to retrieve the API credentials from the store owners PayPal account.

Granting osCommerce access allows the following limited information to be retrieved from the store owners PayPal account:

diff --git a/includes/functions/general.php b/includes/functions/general.php index 777e79f48..64f7860c0 100644 --- a/includes/functions/general.php +++ b/includes/functions/general.php @@ -692,7 +692,7 @@ function tep_get_prid($uprid) { // $email_text The text of the eMail, may contain HTML entities // $from_email_name The name of the sender, e.g. Shop Administration // $from_email_adress The eMail address of the sender, -// e.g. info@mytepshop.com +// e.g. test@example.com function tep_mail($to_name, $to_email_address, $email_subject, $email_text, $from_email_name, $from_email_address) { if (SEND_EMAILS !== 'true') { return false; diff --git a/includes/hooks/admin/siteWide/hMenu.php b/includes/hooks/admin/siteWide/hMenu.php index a17fe09c7..35f80b897 100644 --- a/includes/hooks/admin/siteWide/hMenu.php +++ b/includes/hooks/admin/siteWide/hMenu.php @@ -77,7 +77,7 @@ function tep_sort_h_boxes_links($a, $b) { } $output .= '