34 Commits

Author SHA1 Message Date
be150fdb84 update 2026-03-26 23:26:44 +01:00
ab1f682806 feat: Update product name handling in API and Cron classes to improve data consistency 2026-03-10 15:30:48 +01:00
9bca12a59a feat: Add Facebook Ads settings management with API integration and UI support 2026-03-07 19:37:07 +01:00
fd0db9b145 feat: Add Supplemental Feeds feature with UI and backend support
- Implemented the main view for Supplemental Feeds, displaying clients with Merchant Account IDs and their associated feed files.
- Added styling for the feeds page and its components, including headers, empty states, and dropdown menus for syncing actions.
- Created backend logic to generate supplemental feeds for clients, including file handling and data sanitization.
- Integrated new routes and views for managing feeds, ensuring proper data retrieval and display.
- Updated navigation to include the new Supplemental Feeds section.
- Added necessary documentation for CRON job management related to feed generation.
2026-02-26 20:17:13 +01:00
651d925b20 Add keyword status toggle functionality and styling
- Introduced a new button to toggle the status of keywords between PAUSED and ENABLED in the keywords table.
- Added corresponding styles for the toggle button to enhance user experience.
- Updated the keywords table rendering logic to display the status and toggle button correctly.
- Created a new migration to add a 'status' column to the 'campaign_keywords' table, defaulting to 'ENABLED'.
2026-02-24 23:31:17 +01:00
63857639ff feat: update FTP ignore list and add repository guidelines documentation 2026-02-23 13:57:32 +01:00
95cfb7a495 feat: add search and custom label filters to products view
- Added a search input for filtering products by name or ID.
- Introduced a custom label input for filtering by CL4.
- Implemented debounce functionality for both filters to optimize performance.
- Updated local storage handling to persist filter values.
- Modified styles for new filter groups in the product layout.

chore: add .serena configuration files

- Created .serena/.gitignore to exclude cache files.
- Added .serena/project.yml for project configuration.

fix: add status column to campaign_ad_groups table

- Altered the campaign_ad_groups table to include a status column with ENUM values 'active' and 'paused'./c
2026-02-22 11:59:20 +01:00
a07bbcb93e feat: enhance product URL validation logic in Cron class for better merchant URL handling 2026-02-21 23:00:34 +01:00
18d2c41d46 feat: optimize Facebook Ads synchronization logic for incremental updates 2026-02-21 17:10:43 +01:00
bc75eab439 feat: add logs page with filtering and data table
- Implemented a new logs page with filters for level, source, and date range.
- Added a data table to display logs with pagination and sorting capabilities.
- Created backend functionality to fetch logs data based on filters.
- Introduced a new Logs class for handling log data operations.
- Added a new database migration for the logs table.
- Enhanced UI with custom checkbox styles for better user experience.
- Updated navigation to include a link to the logs page.
2026-02-21 13:05:59 +01:00
b54a9a71b1 Add CLI script to fetch active Meta Ads insights for campaigns, adsets, and ads
- Implemented a new PHP script to retrieve insights for the last N days (default 30).
- Supports command-line options for token, account ID, days, API version, and output file.
- Fetches data at campaign, adset, and ad levels, with filtering for active statuses.
- Handles JSON output and optional file saving, including directory creation if necessary.
- Includes error handling for cURL requests and JSON responses.
2026-02-20 23:45:36 +01:00
167ced3573 feat: Enhance user settings with cron URL plan display
- Added a new field to display the cron URL plan in user settings.
- Updated JavaScript to handle the new plan data.

refactor: Unify product model and migrate data

- Migrated product data from `products_data` to `products` table.
- Added new columns to `products` for better data organization.
- Created `products_aggregate` table for storing aggregated product metrics.

chore: Drop deprecated products_data table

- Removed `products_data` table as data is now stored in `products`.

feat: Add merchant URL flags to products

- Introduced flags for tracking merchant URL status in `products` table.
- Normalized product URLs to handle empty or invalid values.

feat: Link campaign alerts to specific products

- Added `product_id` column to `campaign_alerts` table for better tracking.
- Created an index for efficient querying of alerts by product.

chore: Add debug scripts for client data inspection

- Created debug scripts to inspect client data from local and remote databases.
- Included error handling and output formatting for better readability.
2026-02-20 17:50:14 +01:00
0024a25bfb feat: add campaign alerts feature with alerts management and UI integration
- Introduced a new `CampaignAlerts` class for handling alerts logic.
- Added database migration for `campaign_alerts` table creation.
- Implemented methods for fetching, marking, and deleting alerts in the `CampaignAlerts` factory class.
- Created a new view for displaying campaign alerts with filtering options.
- Updated the main client view to include a badge for the number of alerts.
- Enhanced sync functionality to support campaigns and products separately.
- Adjusted styles for alert badges in the UI.
2026-02-20 01:33:53 +01:00
2c331fda07 feat: Enhance cron product synchronization with fetch skipped reasons and campaign type validation 2026-02-19 15:38:24 +01:00
38082c5bac feat: Implement campaign synchronization feature with dropdown UI
- Updated SCSS styles for new campaign sync buttons and dropdowns.
- Refactored main_view.php to replace the single select for campaigns with a multi-select dropdown.
- Added JavaScript functions to handle dropdown interactions and sync status updates.
- Introduced sync status bars for clients in main_view.php.
- Created new database migrations for client sync flags and cron sync status tracking.
2026-02-19 12:33:14 +01:00
a444fe4aa6 feat: Add dynamic client batch processing and configuration for cron products URLs 2026-02-19 00:30:48 +01:00
efbdcce08a feat: Add XML file management functionality
- Created XmlFiles control class for handling XML file views and regeneration.
- Implemented method to retrieve clients with XML feeds in the factory class.
- Added database migration to include google_merchant_account_id in clients table.
- Created migrations for products_keyword_planner_terms and products_merchant_sync_log tables.
- Added campaign_keywords table migration for managing campaign keyword data.
- Developed main view template for displaying XML files and their statuses.
- Introduced a debug script for analyzing product URLs and their statuses.
2026-02-18 21:23:53 +01:00
3dc06d505a feat: Enhance Google Ads API integration and add column visibility control in product view
- Updated GoogleAdsApi class to include new GAQL queries for Performance Max campaigns and fallback mechanisms.
- Refactored data collection logic to handle ad groups and asset groups more effectively.
- Modified get_campaigns_30_days and get_campaigns_all_time methods to accept an optional date parameter for improved date filtering.
- Introduced a new UI feature in the products main view to allow users to toggle column visibility, enhancing user experience.
- Implemented local storage functionality to remember user preferences for column visibility across sessions.
2026-02-18 01:50:08 +01:00
4635cefcbb feat: update font to Roboto across templates and add campaign/ad group filters in product views
- Changed font from Open Sans to Roboto in layout files.
- Added campaign and ad group filters in products main view.
- Enhanced product history to include campaign and ad group IDs.
- Updated migrations to support new campaign and ad group dimensions in product statistics.
- Introduced new migration files for managing campaign types and dropping obsolete columns.
2026-02-18 01:21:22 +01:00
5e491d626c feat: Dodaj moduł grup i fraz, oznaczanie wykluczonych na czerwono, CLAUDE.md
- Nowy moduł CampaignTerms z widokiem grup reklam, fraz wyszukiwanych i fraz wykluczających
- Frazy wyszukiwane dodane do wykluczonych oznaczane czerwonym kolorem w tabeli
- Instalator migracji (install.php) z obsługą schema_migrations
- Migracja 003 dla tabel campaign_ad_groups, campaign_search_terms, campaign_negative_keywords
- CLAUDE.md z dokumentacją architektury projektu
- Aktualizacja layoutu, stylów i konfiguracji

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 23:44:30 +01:00
afe9d6216d Add migrations for Google Ads settings and demo data
- Create migration for global settings table and add google_ads_customer_id and google_ads_start_date columns to clients table.
- Add migration to include product_url column in products_data table.
- Insert demo data for campaigns, products, and their history for client 'pomysloweprezenty.pl'.
- Implement client management interface with modals for adding and editing clients, including Google Ads Customer ID and data retrieval start date.
2026-02-15 17:46:32 +01:00
ad79773412 feat: Dodaj sprawdzenie istnienia klienta w metodach klasy Cron 2025-11-27 20:57:22 +01:00
5b6c6227c0 update 2025-11-23 16:16:53 +01:00
f5db5263ab feat: Add Google Taxonomy integration and product editing enhancements
- Implemented Google Taxonomy loading via AJAX in main_view.php, allowing users to select categories for products.
- Enhanced product editing modal to include fields for product title, description, and Google category selection.
- Updated AJAX calls to save product data, including custom title, description, and selected Google category.
- Added character count validation for product title input.
- Integrated Select2 for improved category selection UI.
- Created google-taxonomy.php to fetch and cache Google Taxonomy data, ensuring efficient retrieval and fallback mechanisms.
- Removed outdated custom feed XML file.
- Updated layout-logged.php to include necessary Select2 styles and scripts.
2025-11-20 23:46:21 +01:00
63727f5d76 Zaktualizuj zapytania SQL w klasie Products, aby umożliwić wyszukiwanie po 'offer_id' z użyciem operatora LIKE oraz popraw lmtime i rozmiar pliku class.Products.php w pliku ftp-kr.sync.cache.json. Dodatkowo, popraw formatowanie 'offer_id' w metodzie cron. 2025-08-26 23:44:32 +02:00
a4197dfad8 Merge branch 'main' of http://91.189.216.43:3000/jacek.pyziak/adsPRO 2025-05-14 14:55:56 +02:00
b237ad1fe7 Zaktualizuj logikę przypisywania etykiety 'bestseller' w klasie Cron, aby uwzględnić minimalny ROAS dla bestsellerów. 2025-05-14 14:55:30 +02:00
e1574a3730 Update file size and modification time for class.Cron.php; adjust product history count threshold in cron logic 2025-05-03 00:59:39 +02:00
1aa3c3a390 Update file sizes and modification times for class files in FTP sync cache 2025-04-27 11:32:15 +02:00
056559d0f3 Update ROAS calculations to include all-time values and adjust cache metadata 2025-04-24 00:17:36 +02:00
aeb7599811 Add functionality to manage and display minimum ROAS for bestsellers; implement AJAX calls for retrieval and saving 2025-04-08 00:18:57 +02:00
f32f40bc50 Add Allegro import functionality and enhance product history management 2025-01-01 23:34:52 +01:00
33442a110a Refactor product history retrieval in Cron and Products classes; optimize date handling and query logic 2024-12-21 21:32:38 +01:00
82a183fd18 first commit 2024-12-10 23:24:15 +01:00