Changeset 3223698
- Timestamp:
- 01/16/2025 03:51:02 PM (14 months ago)
- Location:
- visidea
- Files:
-
- 215 added
- 3 edited
-
tags/2.1.12 (added)
-
tags/2.1.12/README.md (added)
-
tags/2.1.12/admin (added)
-
tags/2.1.12/admin/class-visidea-admin.php (added)
-
tags/2.1.12/admin/images (added)
-
tags/2.1.12/admin/images/visidea-icon.png (added)
-
tags/2.1.12/admin/images/visidea-logo.png (added)
-
tags/2.1.12/includes (added)
-
tags/2.1.12/includes/class-visidea-activator.php (added)
-
tags/2.1.12/includes/class-visidea-deactivator.php (added)
-
tags/2.1.12/includes/class-visidea-i18n.php (added)
-
tags/2.1.12/includes/class-visidea-loader.php (added)
-
tags/2.1.12/includes/class-visidea.php (added)
-
tags/2.1.12/index.php (added)
-
tags/2.1.12/lang (added)
-
tags/2.1.12/lang/visidea-it_IT.mo (added)
-
tags/2.1.12/lang/visidea-it_IT.po (added)
-
tags/2.1.12/lang/visidea.pot (added)
-
tags/2.1.12/libraries (added)
-
tags/2.1.12/libraries/action-scheduler (added)
-
tags/2.1.12/libraries/action-scheduler/.editorconfig (added)
-
tags/2.1.12/libraries/action-scheduler/.gitattributes (added)
-
tags/2.1.12/libraries/action-scheduler/.github (added)
-
tags/2.1.12/libraries/action-scheduler/.github/release-drafter.yml (added)
-
tags/2.1.12/libraries/action-scheduler/.github/workflows (added)
-
tags/2.1.12/libraries/action-scheduler/.github/workflows/pr-unit-tests.yml (added)
-
tags/2.1.12/libraries/action-scheduler/.gitignore (added)
-
tags/2.1.12/libraries/action-scheduler/Gruntfile.js (added)
-
tags/2.1.12/libraries/action-scheduler/README.md (added)
-
tags/2.1.12/libraries/action-scheduler/action-scheduler.php (added)
-
tags/2.1.12/libraries/action-scheduler/changelog.txt (added)
-
tags/2.1.12/libraries/action-scheduler/classes (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_ActionClaim.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_ActionFactory.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_AdminView.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_AsyncRequest_QueueRunner.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_Compatibility.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_DataController.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_DateTime.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_Exception.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_FatalErrorMonitor.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_InvalidActionException.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_ListTable.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_LogEntry.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_NullLogEntry.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_OptionLock.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_QueueCleaner.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_QueueRunner.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_Versions.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_WPCommentCleaner.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/ActionScheduler_wcSystemStatus.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/WP_CLI (added)
-
tags/2.1.12/libraries/action-scheduler/classes/WP_CLI/ActionScheduler_WPCLI_Clean_Command.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/WP_CLI/ActionScheduler_WPCLI_QueueRunner.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/WP_CLI/ActionScheduler_WPCLI_Scheduler_command.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/WP_CLI/Migration_Command.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/WP_CLI/ProgressBar.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler_Abstract_ListTable.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler_Abstract_QueueRunner.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler_Abstract_RecurringSchedule.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler_Abstract_Schedule.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler_Abstract_Schema.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler_Lock.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler_Logger.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler_Store.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/abstracts/ActionScheduler_TimezoneHelper.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/actions (added)
-
tags/2.1.12/libraries/action-scheduler/classes/actions/ActionScheduler_Action.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/actions/ActionScheduler_CanceledAction.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/actions/ActionScheduler_FinishedAction.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/actions/ActionScheduler_NullAction.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/data-stores (added)
-
tags/2.1.12/libraries/action-scheduler/classes/data-stores/ActionScheduler_DBLogger.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/data-stores/ActionScheduler_DBStore.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/data-stores/ActionScheduler_HybridStore.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/data-stores/ActionScheduler_wpCommentLogger.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/data-stores/ActionScheduler_wpPostStore.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/data-stores/ActionScheduler_wpPostStore_PostStatusRegistrar.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/data-stores/ActionScheduler_wpPostStore_PostTypeRegistrar.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/data-stores/ActionScheduler_wpPostStore_TaxonomyRegistrar.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/ActionMigrator.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/ActionScheduler_DBStoreMigrator.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/BatchFetcher.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/Config.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/Controller.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/DryRun_ActionMigrator.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/DryRun_LogMigrator.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/LogMigrator.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/Runner.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/migration/Scheduler.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schedules (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schedules/ActionScheduler_CanceledSchedule.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schedules/ActionScheduler_CronSchedule.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schedules/ActionScheduler_IntervalSchedule.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schedules/ActionScheduler_NullSchedule.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schedules/ActionScheduler_Schedule.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schedules/ActionScheduler_SimpleSchedule.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schema (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schema/ActionScheduler_LoggerSchema.php (added)
-
tags/2.1.12/libraries/action-scheduler/classes/schema/ActionScheduler_StoreSchema.php (added)
-
tags/2.1.12/libraries/action-scheduler/codecov.yml (added)
-
tags/2.1.12/libraries/action-scheduler/composer.json (added)
-
tags/2.1.12/libraries/action-scheduler/composer.lock (added)
-
tags/2.1.12/libraries/action-scheduler/deprecated (added)
-
tags/2.1.12/libraries/action-scheduler/deprecated/ActionScheduler_Abstract_QueueRunner_Deprecated.php (added)
-
tags/2.1.12/libraries/action-scheduler/deprecated/ActionScheduler_AdminView_Deprecated.php (added)
-
tags/2.1.12/libraries/action-scheduler/deprecated/ActionScheduler_Schedule_Deprecated.php (added)
-
tags/2.1.12/libraries/action-scheduler/deprecated/ActionScheduler_Store_Deprecated.php (added)
-
tags/2.1.12/libraries/action-scheduler/deprecated/functions.php (added)
-
tags/2.1.12/libraries/action-scheduler/docs (added)
-
tags/2.1.12/libraries/action-scheduler/docs/CNAME (added)
-
tags/2.1.12/libraries/action-scheduler/docs/_config.yml (added)
-
tags/2.1.12/libraries/action-scheduler/docs/_layouts (added)
-
tags/2.1.12/libraries/action-scheduler/docs/_layouts/default.html (added)
-
tags/2.1.12/libraries/action-scheduler/docs/admin.md (added)
-
tags/2.1.12/libraries/action-scheduler/docs/android-chrome-192x192.png (added)
-
tags/2.1.12/libraries/action-scheduler/docs/android-chrome-256x256.png (added)
-
tags/2.1.12/libraries/action-scheduler/docs/api.md (added)
-
tags/2.1.12/libraries/action-scheduler/docs/apple-touch-icon.png (added)
-
tags/2.1.12/libraries/action-scheduler/docs/assets (added)
-
tags/2.1.12/libraries/action-scheduler/docs/assets/css (added)
-
tags/2.1.12/libraries/action-scheduler/docs/assets/css/style.scss (added)
-
tags/2.1.12/libraries/action-scheduler/docs/browserconfig.xml (added)
-
tags/2.1.12/libraries/action-scheduler/docs/faq.md (added)
-
tags/2.1.12/libraries/action-scheduler/docs/favicon-16x16.png (added)
-
tags/2.1.12/libraries/action-scheduler/docs/favicon-32x32.png (added)
-
tags/2.1.12/libraries/action-scheduler/docs/favicon.ico (added)
-
tags/2.1.12/libraries/action-scheduler/docs/google14ef723abb376cd3.html (added)
-
tags/2.1.12/libraries/action-scheduler/docs/index.md (added)
-
tags/2.1.12/libraries/action-scheduler/docs/mstile-150x150.png (added)
-
tags/2.1.12/libraries/action-scheduler/docs/perf.md (added)
-
tags/2.1.12/libraries/action-scheduler/docs/safari-pinned-tab.svg (added)
-
tags/2.1.12/libraries/action-scheduler/docs/site.webmanifest (added)
-
tags/2.1.12/libraries/action-scheduler/docs/usage.md (added)
-
tags/2.1.12/libraries/action-scheduler/docs/version3-0.md (added)
-
tags/2.1.12/libraries/action-scheduler/docs/wp-cli.md (added)
-
tags/2.1.12/libraries/action-scheduler/functions.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib (added)
-
tags/2.1.12/libraries/action-scheduler/lib/WP_Async_Request.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression_AbstractField.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression_DayOfMonthField.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression_DayOfWeekField.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression_FieldFactory.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression_FieldInterface.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression_HoursField.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression_MinutesField.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression_MonthField.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/CronExpression_YearField.php (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/LICENSE (added)
-
tags/2.1.12/libraries/action-scheduler/lib/cron-expression/README.md (added)
-
tags/2.1.12/libraries/action-scheduler/license.txt (added)
-
tags/2.1.12/libraries/action-scheduler/package-lock.json (added)
-
tags/2.1.12/libraries/action-scheduler/package.json (added)
-
tags/2.1.12/libraries/action-scheduler/phpcs.xml (added)
-
tags/2.1.12/libraries/action-scheduler/readme.txt (added)
-
tags/2.1.12/libraries/action-scheduler/tests (added)
-
tags/2.1.12/libraries/action-scheduler/tests/ActionScheduler_UnitTestCase.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/README.md (added)
-
tags/2.1.12/libraries/action-scheduler/tests/bin (added)
-
tags/2.1.12/libraries/action-scheduler/tests/bin/install.sh (added)
-
tags/2.1.12/libraries/action-scheduler/tests/bootstrap.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit.xml.dist (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/ActionScheduler_Mock_Async_Request_QueueRunner.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/ActionScheduler_Mocker.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/deprecated (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/deprecated/ActionScheduler_UnitTestCase.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/helpers (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/helpers/ActionScheduler_Callbacks.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/helpers/ActionScheduler_Compatibility_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/helpers/ActionScheduler_TimezoneHelper_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/jobs (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/jobs/ActionScheduler_Action_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/jobs/ActionScheduler_NullAction_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/jobstore (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/jobstore/AbstractStoreTest.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/jobstore/ActionScheduler_DBStoreMigrator_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/jobstore/ActionScheduler_DBStore_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/jobstore/ActionScheduler_HybridStore_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/jobstore/ActionScheduler_wpPostStore_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/lock (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/lock/ActionScheduler_OptionLock_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/logging (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/logging/ActionScheduler_DBLogger_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/logging/ActionScheduler_wpCommentLogger_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/migration (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/migration/ActionMigrator_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/migration/BatchFetcher_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/migration/Config_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/migration/Controller_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/migration/LogMigrator_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/migration/Runner_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/migration/Scheduler_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/procedural_api (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/procedural_api/procedural_api_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/procedural_api/wc_get_scheduled_actions_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/runner (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/runner/ActionScheduler_QueueCleaner_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/runner/ActionScheduler_QueueRunner_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/schedules (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/schedules/ActionScheduler_CronSchedule_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/schedules/ActionScheduler_IntervalSchedule_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/schedules/ActionScheduler_NullSchedule_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/schedules/ActionScheduler_SimpleSchedule_Test.php (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/versioning (added)
-
tags/2.1.12/libraries/action-scheduler/tests/phpunit/versioning/ActionScheduler_Versions_Test.php (added)
-
tags/2.1.12/public (added)
-
tags/2.1.12/public/class-visidea-public.php (added)
-
tags/2.1.12/readme.txt (added)
-
tags/2.1.12/visidea.php (added)
-
trunk/admin/class-visidea-admin.php (modified) (7 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/visidea.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
visidea/trunk/admin/class-visidea-admin.php
r3148770 r3223698 12 12 13 13 ini_set('max_execution_time', 3600); 14 ini_set('display_errors', 0);15 ini_set('display_startup_errors', 0);16 error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);14 // ini_set('display_errors', 0); 15 // ini_set('display_startup_errors', 0); 16 // error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED); 17 17 18 18 class Visidea_Admin { … … 126 126 127 127 public function cron_items_dump() { 128 // Initialize multilanguage 129 $multilanguage = $this->init_multilanguage(); 130 131 // Get plugin options and set file paths 132 $options = get_option('visidea_plugin_options'); 133 $option_filename = 'items_' . $options['private_token'] . '.tmp'; 134 $file_path = plugin_dir_path(__FILE__) . $option_filename; 135 $fp = fopen($file_path, 'a'); // Open in append mode 136 137 // Write the header only if the file is new 138 if (ftell($fp) === 0) { 139 $items_columns = "item_id;code;mpn;ean;name;brand_id;brand_name;price;market_price;discount;page_ids;page_names;url;images;stock;gender;description"; 140 141 if ($multilanguage['enabled']) { 142 foreach ($multilanguage['languages'] as $lang) { 143 if ($multilanguage['default'] != $lang) { 144 $lang_code = substr($lang, 0, 2); 145 $items_columns .= ";name_{$lang_code};description_{$lang_code};page_names_{$lang_code};url_{$lang_code}"; 146 } 147 } 148 } 149 150 fwrite($fp, $items_columns . "\n"); 151 } 152 153 // Set pagination and resume from the last processed page 154 $chunkSize = 500; // Adjust chunk size to balance performance 155 $page_marker_file = plugin_dir_path(__FILE__) . 'items_page_marker.txt'; 156 $page = file_exists($page_marker_file) ? (int)file_get_contents($page_marker_file) : 1; 157 158 while (true) { 159 // Fetch product IDs in chunks 160 $products = wc_get_products([ 161 'status' => 'publish', 162 'type' => ['simple', 'variable', 'external'], 163 'limit' => $chunkSize, 164 'page' => $page, 165 'return' => 'ids', 166 ]); 167 168 if (empty($products)) { 169 break; // No more products to process 170 } 171 172 // Process products 173 foreach ($products as $product_id) { 174 $item = wc_get_product($product_id); 175 176 // Prepare and write product buffer 177 $buffer = $this->prepare_product_buffer($item, $multilanguage); 178 fwrite($fp, $buffer); 179 180 unset($item); // Free memory 181 } 182 183 // Save progress and increment page 184 file_put_contents($page_marker_file, $page); 185 $page++; 186 } 187 188 // Clean up marker file and finalize output 189 if (file_exists($page_marker_file)) { 190 unlink($page_marker_file); 191 } 192 193 $old_filename = 'items_' . $options['private_token'] . '.csv'; 194 $hash_filename = 'items_' . $options['private_token'] . '.hash'; 195 unlink(plugin_dir_path(__FILE__) . $old_filename); 196 rename($file_path, plugin_dir_path(__FILE__) . $old_filename); 197 file_put_contents(plugin_dir_path(__FILE__) . $hash_filename, hash_file('md5', plugin_dir_path(__FILE__) . $old_filename)); 198 199 fclose($fp); // Close the file pointer 200 } 201 202 public function cron_items_dumpold() { 128 203 // Init multilanguage 129 204 $multilanguage = $this->init_multilanguage(); … … 386 461 } 387 462 388 public function cron_interactions_month() {389 }390 391 463 public function cron_interactions_dump() { 392 464 // error_log( 'fired cron_interactions_dump at ' . date( DATE_RFC2822 ) ); … … 398 470 $fp = fopen($file, 'w'); 399 471 400 // $logfile = plugin_dir_path(__FILE__) . 'log.txt';401 // $fp2 = fopen($logfile, 'w');402 403 472 // Write header 404 $interactions_columns = "item_id;action;user_id; timestamp\n";473 $interactions_columns = "item_id;action;user_id;price;quantity;timestamp\n"; 405 474 fwrite($fp, $interactions_columns); 406 475 … … 411 480 $today = strtotime( date('Y-m-d') ); 412 481 413 // fwrite($fp2, json_encode(array(414 // 'limit' => -1,415 // 'orderby' => 'date',416 // 'order' => 'DESC',417 // 'date_created' => ( $today - ( $days_delay * $one_day ) ).'...'.( $today - ( $days_delay * $one_day ) + $one_day ),418 // ))."\n");419 // fwrite($fp2, 'start:'.gmdate("Y-m-d\TH:i:s\Z",( $today - ( $start * $one_day ) ))."\n");420 // fwrite($fp2, 'end:'.gmdate("Y-m-d\TH:i:s\Z",( $today - ( $start * $one_day ) + $one_day ))."\n");421 422 482 $query = new WC_Order_Query( array( 423 483 'limit' => -1, … … 427 487 428 488 foreach ($orders as $order) { 429 // fwrite($fp2, 'order:'.$order->get_id()."\n");430 489 431 490 // Get customer ID 432 // $user_id = $order->get_billing_email();433 491 $user_id = $order->get_user_id(); 434 // if (empty($user_id)) {435 // $user_id = $this->vs_get_customer_id($order->get_billing_email());436 // if (empty($user_id)) {437 // $user_id = $order->get_billing_email();438 // } else {439 // $user_id = 'c_'.$user_id;440 // }441 // }442 492 443 493 // Loop through order items and write them in the opened file … … 452 502 else 453 503 $product_id = 0; 454 455 // fwrite($fp2, 'order:'.$order->get_id()."\n");456 // fwrite($fp2, 'mail:'.$order->get_billing_email()."\n");457 // fwrite($fp2, 'customer_id:'.$user_id."\n");458 // fwrite($fp2, 'product_id:'.$product_id."\n");459 504 460 505 // Get item price and quantity 506 $item_price = $item->get_total(); // Total price for this item (quantity * unit price) 507 $item_quantity = $item->get_quantity(); // Quantity of the item in the order 508 461 509 // If all is set create the buffer 462 510 if ($product_id > 0 && !empty($user_id)) { 463 // fwrite($fp2, 'write to file'."\n"); 464 465 $buffer = $product_id . ';"purchase";' . $user_id . ';"'.$order->get_date_created()->format(DateTime::ATOM) .'"'. "\n"; 511 512 $buffer = $product_id . 513 ';"purchase";' . 514 $user_id . ';' . 515 round($item_price, 2). ';' . 516 round($item_quantity) . ';' . 517 '"' . $order->get_date_created()->format(DateTime::ATOM) . '"' . "\n"; 466 518 467 519 // Write to file 468 520 fwrite($fp, $buffer); 521 469 522 } 470 523 -
visidea/trunk/readme.txt
r3211016 r3223698 6 6 Tested up to: 6.6 7 7 Requires PHP: 7.0 8 Stable tag: 2.1.1 18 Stable tag: 2.1.12 9 9 License: GPLv3 10 10 License URI: https://www.gnu.org/licenses/gpl-3.0.html … … 96 96 97 97 == Changelog == 98 99 = 2.1.12 2025-01-16 = 100 Export improvements 98 101 99 102 = 2.1.11 2024-12-20 = -
visidea/trunk/visidea.php
r3211016 r3223698 5 5 * Plugin URI: https://visidea.ai 6 6 * Description: Visidea is the search and recommendations plugin for WooCommerce. Visidea improves UX and increases the revenues of your website. 7 * Version: 2.1.1 17 * Version: 2.1.12 8 8 * Author: Inferendo 9 9 * Author URI: https://visidea.ai … … 27 27 * Current Visidea version. 28 28 */ 29 define('VISIDEA_VERSION', '2.1.1 1');29 define('VISIDEA_VERSION', '2.1.12'); 30 30 31 31 /**
Note: See TracChangeset
for help on using the changeset viewer.