update
This commit is contained in:
38
.paul/PROJECT.md
Normal file
38
.paul/PROJECT.md
Normal file
@@ -0,0 +1,38 @@
|
||||
# Project: szkoleniauryzaj.pl
|
||||
|
||||
## What This Is
|
||||
|
||||
Serwis edukacyjny na WordPressie z katalogiem szkoleń, systemem rezerwacji i płatnościami online.
|
||||
|
||||
## Core Value
|
||||
|
||||
Strona internetowa na WordPress ze szkoleniami — użytkownicy mogą przeglądać katalog szkoleń, rezerwować miejsca i płacić online.
|
||||
|
||||
## Current State
|
||||
|
||||
| Attribute | Value |
|
||||
|-----------|-------|
|
||||
| Version | 0.0.0 |
|
||||
| Status | Prototype |
|
||||
| Last Updated | 2026-04-26 |
|
||||
|
||||
## Requirements
|
||||
|
||||
### Must Have
|
||||
- [To be defined during planning]
|
||||
|
||||
### Should Have
|
||||
- [To be defined during planning]
|
||||
|
||||
### Nice to Have
|
||||
- [To be defined during planning]
|
||||
|
||||
## Constraints
|
||||
- [To be identified during planning]
|
||||
|
||||
## Success Criteria
|
||||
- Użytkownicy mogą przeglądać katalog szkoleń, rezerwować miejsca i płacić online
|
||||
- [To be refined during planning]
|
||||
|
||||
---
|
||||
*Created: 2026-04-26*
|
||||
24
.paul/ROADMAP.md
Normal file
24
.paul/ROADMAP.md
Normal file
@@ -0,0 +1,24 @@
|
||||
# Roadmap: szkoleniauryzaj.pl
|
||||
|
||||
## Overview
|
||||
|
||||
Serwis edukacyjny na WordPressie z katalogiem szkoleń, systemem rezerwacji i płatnościami online.
|
||||
|
||||
## Current Milestone
|
||||
|
||||
**v0.1 Initial Release** (v0.1.0)
|
||||
Status: Not started
|
||||
Phases: 0 of TBD complete
|
||||
|
||||
## Phases
|
||||
|
||||
| Phase | Name | Plans | Status | Completed |
|
||||
|-------|------|-------|--------|-----------|
|
||||
| 1 | TBD | TBD | Not started | - |
|
||||
|
||||
## Phase Details
|
||||
|
||||
Phases will be defined during `/paul:plan`.
|
||||
|
||||
---
|
||||
*Roadmap created: 2026-04-26*
|
||||
48
.paul/STATE.md
Normal file
48
.paul/STATE.md
Normal file
@@ -0,0 +1,48 @@
|
||||
# Project State
|
||||
|
||||
## Project Reference
|
||||
|
||||
See: .paul/PROJECT.md (updated 2026-04-26)
|
||||
|
||||
**Core value:** Strona internetowa na WordPress ze szkoleniami
|
||||
**Current focus:** Project initialized — ready for planning
|
||||
|
||||
## Current Position
|
||||
|
||||
Milestone: v0.1 Initial Release
|
||||
Phase: Not yet defined
|
||||
Plan: None yet
|
||||
Status: Ready to create roadmap and first PLAN
|
||||
Last activity: 2026-04-26 — Project initialized
|
||||
|
||||
Progress:
|
||||
- Milestone: [░░░░░░░░░░] 0%
|
||||
|
||||
## Loop Position
|
||||
|
||||
Current loop state:
|
||||
```
|
||||
PLAN ──▶ APPLY ──▶ UNIFY
|
||||
○ ○ ○ [Ready for first PLAN]
|
||||
```
|
||||
|
||||
## Accumulated Context
|
||||
|
||||
### Decisions
|
||||
None yet.
|
||||
|
||||
### Deferred Issues
|
||||
None yet.
|
||||
|
||||
### Blockers/Concerns
|
||||
None yet.
|
||||
|
||||
## Session Continuity
|
||||
|
||||
Last session: 2026-04-26
|
||||
Stopped at: Project initialization complete
|
||||
Next action: Run /paul:plan to define phases and first plan
|
||||
Resume file: .paul/PROJECT.md
|
||||
|
||||
---
|
||||
*STATE.md — Updated after every significant action*
|
||||
94
.paul/codebase/architecture.md
Normal file
94
.paul/codebase/architecture.md
Normal file
@@ -0,0 +1,94 @@
|
||||
# Architecture
|
||||
|
||||
> Generated by /paul:map-codebase — 2026-04-26
|
||||
|
||||
## Overview
|
||||
|
||||
Production e-learning platform. Courses are WooCommerce products. Users browse, reserve/buy spots, and join a bbPress forum community. All page layouts are built via Divi Visual Builder; PHP customizations live in the child theme.
|
||||
|
||||
## Directory Structure
|
||||
|
||||
```
|
||||
szkoleniauryzaj.pl/
|
||||
├── wp-config.php — DB config, WP settings, filesystem perms
|
||||
├── .htaccess — Apache rewrites + Wordfence WAF rules
|
||||
├── .user.ini — Wordfence WAF auto_prepend_file
|
||||
├── cron-products.php — CUSTOM: auto-unpublish products past offer end date
|
||||
├── wp-content/
|
||||
│ ├── themes/
|
||||
│ │ ├── body-relax/ — ACTIVE child theme (all custom code here)
|
||||
│ │ ├── Divi/ — Parent theme (53 MB, do NOT edit)
|
||||
│ │ └── twentytwentytwo/ — Inactive
|
||||
│ ├── plugins/ — 45 plugins (~200 MB total)
|
||||
│ ├── mu-plugins/
|
||||
│ │ └── installatron_hide_status_test.php — Disables WP auto-update nag
|
||||
│ └── uploads/ — Media (server-only, not in repo)
|
||||
├── .vscode/
|
||||
│ ├── ftp-kr.json — FTP deployment config
|
||||
│ ├── sftp.json — SFTP alternative config
|
||||
│ └── settings.json — SCSS compiler config
|
||||
└── .paul/ — Project management (not deployed)
|
||||
```
|
||||
|
||||
## Active Child Theme: body-relax
|
||||
|
||||
```
|
||||
body-relax/
|
||||
├── functions.php — WooCommerce hooks, button text, stock display
|
||||
├── style.css — Theme header + responsive CSS (981/768/480px breakpoints)
|
||||
├── screenshot.jpg — Theme preview
|
||||
└── divi-children-engine/
|
||||
├── divi_children_engine.php — Loader (includes all engine files)
|
||||
├── css/
|
||||
│ └── custom-metabox.css — Admin metabox styling
|
||||
└── includes/
|
||||
├── divi_children_functions.php — 2060 lines: Divi customizer extensions, CSS injection
|
||||
├── custom_codes.php — Admin UI for CSS classes/IDs + "magic codes"
|
||||
└── divi-mods/
|
||||
└── divi_mod_functions.php — Overrides et_pb_blog and et_pb_cta shortcodes
|
||||
```
|
||||
|
||||
## Customization Layers (top → bottom)
|
||||
|
||||
1. **Divi Visual Builder** — Page/post content (drag-drop, stored as post meta)
|
||||
2. **body-relax/functions.php** — WooCommerce filters (stock text, CTA button labels)
|
||||
3. **divi-children-engine** — Customizer extensions, admin UI, Divi shortcode overrides
|
||||
4. **Divi parent theme** — Core styling, builder components, page templates
|
||||
5. **WooCommerce** — Product system (courses = products, bookings = orders)
|
||||
6. **45 Plugins** — SEO, analytics, payments, security, media feeds
|
||||
7. **WordPress core** — Database, hook system, REST API
|
||||
|
||||
## Key Custom Functions
|
||||
|
||||
| File | Function | What it does |
|
||||
|------|----------|-------------|
|
||||
| `functions.php:30` | `wcs_custom_get_availability()` | Polish stock text: "Duża ilość wolnych miejsc", countdown for last 1-4 spots, "WSZYSTKIE MIEJSCA WYKUPIONE" |
|
||||
| `functions.php:92` | `bbloomer_custom_add_to_cart_single_product()` | Changes "Add to Cart" by category: webinar/book → "Kup teraz", course → "Rezerwuj miejsce" |
|
||||
| `functions.php:108` | `bbloomer_archive_custom_cart_button_text()` | Same logic for archive/shop pages |
|
||||
| `cron-products.php` | (standalone) | Reads ACF `end_date_of_the_offer`, sets product to draft when offer expires |
|
||||
|
||||
## Hooks Registered in functions.php
|
||||
|
||||
| Type | Hook | Function |
|
||||
|------|------|---------|
|
||||
| `add_action` | `wp_enqueue_scripts` | `dce_load_divi_stylesheet()` — enqueues Divi parent CSS |
|
||||
| `add_filter` | `woocommerce_get_availability` | `wcs_custom_get_availability()` |
|
||||
| `add_filter` | `woocommerce_product_single_add_to_cart_text` | `bbloomer_custom_add_to_cart_single_product()` |
|
||||
| `add_filter` | `woocommerce_product_add_to_cart_text` | `bbloomer_archive_custom_cart_button_text()` |
|
||||
|
||||
## Data Flow: Course Purchase
|
||||
|
||||
```
|
||||
User → Shop/Archive page
|
||||
→ WooCommerce product (course) with custom "Rezerwuj miejsce" button
|
||||
→ Cart → Checkout (with NIP field, custom fields)
|
||||
→ PayU payment gateway (BLIK/card/bank transfer)
|
||||
→ Order confirmation → bbPress forum access (community)
|
||||
```
|
||||
|
||||
## Database
|
||||
|
||||
- Name: `garbary_szkury`
|
||||
- Prefix: `wp_`
|
||||
- Host: localhost
|
||||
- Key custom data: ACF fields on products (e.g., `end_date_of_the_offer`)
|
||||
76
.paul/codebase/concerns.md
Normal file
76
.paul/codebase/concerns.md
Normal file
@@ -0,0 +1,76 @@
|
||||
# Concerns & Technical Debt
|
||||
|
||||
> Generated by /paul:map-codebase — 2026-04-26
|
||||
|
||||
## CRITICAL
|
||||
|
||||
### 1. Credentials committed to git
|
||||
- **wp-config.php**: DB password in version history
|
||||
- **.vscode/ftp-kr.json**: FTP credentials in version history (host, user, password, path)
|
||||
- **Action**: Rotate both passwords. Add `wp-config.php` and `.vscode/ftp-kr.json` to `.gitignore`.
|
||||
|
||||
### 2. FTP auto-upload to production with no staging
|
||||
- `autoUpload: true` in `.vscode/ftp-kr.json` — every file save goes live immediately
|
||||
- No review step, no staging environment
|
||||
- **Action**: Disable autoUpload for risky changes; test locally first.
|
||||
|
||||
### 3. bbPress — 100+ core plugin files modified
|
||||
- Git shows every file in `wp-content/plugins/bbpress/` as modified
|
||||
- Next bbPress update will silently overwrite all customizations
|
||||
- **Action**: Document what was changed and why. Move custom logic to a custom plugin or mu-plugin using bbPress hooks/filters.
|
||||
|
||||
## HIGH
|
||||
|
||||
### 4. No .gitignore
|
||||
- Sensitive files (wp-config.php, ftp-kr.json) are tracked
|
||||
- Uploads, cache, and build artifacts can be accidentally committed
|
||||
- **Files to add to .gitignore**: `wp-config.php`, `.vscode/ftp-kr.json`, `.vscode/sftp.json`, `wp-content/uploads/`, `wp-content/cache/`, `*.log`
|
||||
|
||||
### 5. Deprecated PHP in divi-children-engine
|
||||
- `extract(shortcode_atts(...))` in `divi-mods/divi_mod_functions.php:28` — deprecated PHP 8.0+, security risk
|
||||
- `query_posts()` in same file — deprecated, should use `WP_Query`
|
||||
- **Action**: Replace `extract()` with explicit variable assignments when touching this file.
|
||||
|
||||
### 6. AJAX handler without nonce verification
|
||||
- `custom_selectors_action_callback()` in `custom_codes.php` processes `$_POST['selector']` without sanitization or nonce check
|
||||
- **Action**: Add `check_ajax_referer()` and `sanitize_text_field()` before the `set_theme_mod()` call.
|
||||
|
||||
### 7. No error logging
|
||||
- `WP_DEBUG = false` with no `WP_DEBUG_LOG` — silent failures in production
|
||||
- **Action**: Enable `WP_DEBUG_LOG = true`, `WP_DEBUG_DISPLAY = false` to log errors server-side without exposing them.
|
||||
|
||||
## MEDIUM
|
||||
|
||||
### 8. Inline JavaScript using deprecated jQuery methods
|
||||
- `custom_codes.php` uses `.toggle()` (removed in jQuery 3.9+) via inline PHP-embedded JS
|
||||
- **Action**: Replace with `.slideToggle()` or vanilla JS when modifying this area.
|
||||
|
||||
### 9. Hardcoded Polish strings without i18n
|
||||
- `functions.php`: stock text, email address hardcoded as string literals
|
||||
- `cron-products.php`: hardcoded Polish date strings
|
||||
- No `.pot` / `.po` / `.mo` files; uses `woocommerce` text domain instead of `body-relax`
|
||||
- **Action**: Wrap new strings in `__('...', 'body-relax')`, create proper text domain.
|
||||
|
||||
### 10. Child theme author URL uses HTTP
|
||||
- `style.css` Author URI: `http://www.body-relax.baumer.vot.pl` (HTTP, not HTTPS)
|
||||
- Minor, but update to HTTPS when touching the file.
|
||||
|
||||
### 11. FTP over plain FTP (not SFTP)
|
||||
- `.vscode/ftp-kr.json` uses unencrypted FTP protocol
|
||||
- Credentials and file contents transmitted in plaintext
|
||||
- **Action**: Switch to SFTP (port 22) if host supports it.
|
||||
|
||||
## LOW
|
||||
|
||||
### 12. Poor git commit history
|
||||
- All recent commits are "Save" — no meaningful history for auditing or rollback
|
||||
- **Action**: Use conventional commit messages going forward.
|
||||
|
||||
### 13. Divi Children Engine version 1.0.4
|
||||
- Relatively old; last update date unclear
|
||||
- Non-standard approach that may conflict with Divi updates
|
||||
- Low urgency, but track for compatibility issues when Divi updates.
|
||||
|
||||
### 14. AUTOMATIC_UPDATER_DISABLED = true
|
||||
- All updates are manual; security patches may be missed
|
||||
- Acceptable if monitored; ensure a process exists to apply patches.
|
||||
71
.paul/codebase/conventions.md
Normal file
71
.paul/codebase/conventions.md
Normal file
@@ -0,0 +1,71 @@
|
||||
# Conventions
|
||||
|
||||
> Generated by /paul:map-codebase — 2026-04-26
|
||||
|
||||
## PHP Conventions
|
||||
|
||||
### Current state (in existing code)
|
||||
- **Style**: Procedural, no OOP
|
||||
- **Naming**: snake_case with descriptive prefixes (`wcs_`, `bbloomer_`, `Divichild_`) — inconsistent across files
|
||||
- **PHP version**: Basic PHP 5.x compatible constructs (no type hints, no match expressions)
|
||||
- **Comments**: Minimal; PHPDoc used in divi-children-engine but not in functions.php
|
||||
|
||||
### Convention to follow when adding new code
|
||||
- **Function prefix**: Use `szkolenia_` or `body_relax_` for all new functions
|
||||
- **Security**: Always sanitize input (`sanitize_text_field()`), verify nonces for AJAX (`wp_verify_nonce()`), escape output (`esc_html()`, `wp_kses_post()`)
|
||||
- **Hooks**: Register all hooks inside functions, not at file root level
|
||||
- **Translations**: Wrap all user-facing strings in `__()` / `_e()` — text domain: `body-relax`
|
||||
|
||||
## CSS Conventions
|
||||
|
||||
### Current state
|
||||
- Plain CSS (no preprocessor in production, SCSS compilation configured in VS Code)
|
||||
- No BEM; simple semantic class names (`.icon_tags`, `.icon_profile`)
|
||||
- ID-based selectors in admin CSS (anti-pattern)
|
||||
- Hard-coded hex colors
|
||||
- Breakpoints: 981px, 768px, 767px, 480px
|
||||
|
||||
### Convention to follow
|
||||
- Namespace custom classes with `br-` prefix (e.g., `.br-availability-message`)
|
||||
- Keep front-end CSS in `style.css`, admin CSS in `divi-children-engine/css/`
|
||||
- Use SCSS variables for colors if using the Live Sass compiler
|
||||
|
||||
## JavaScript Conventions
|
||||
|
||||
### Current state
|
||||
- Inline jQuery in PHP strings (no separate .js files in theme)
|
||||
- Uses deprecated `.toggle()` (removed in jQuery 3.9+)
|
||||
- References global `ajaxurl`
|
||||
|
||||
### Convention to follow
|
||||
- Put new JS in separate files under `wp-content/themes/body-relax/js/`
|
||||
- Enqueue via `wp_enqueue_script()` with jQuery dependency
|
||||
- Use `wp_localize_script()` to pass ajaxurl and nonces
|
||||
- Use `const`/`let`, avoid deprecated jQuery methods
|
||||
|
||||
## File Placement
|
||||
|
||||
| What to add | Where |
|
||||
|------------|-------|
|
||||
| WooCommerce filters/hooks | `wp-content/themes/body-relax/functions.php` |
|
||||
| Admin UI / metaboxes | `wp-content/themes/body-relax/divi-children-engine/includes/` |
|
||||
| Standalone cron scripts | Root of repo (like `cron-products.php`) |
|
||||
| New plugin | `wp-content/plugins/` with own directory |
|
||||
| Custom styles | `wp-content/themes/body-relax/style.css` |
|
||||
|
||||
## Git Conventions
|
||||
|
||||
### Current state
|
||||
- Commit messages are all "Save" (no meaningful history)
|
||||
- No `.gitignore` file
|
||||
|
||||
### Convention to follow
|
||||
- Use conventional commits: `feat:`, `fix:`, `chore:`, `style:`
|
||||
- Example: `feat: add availability countdown for last 3 spots`
|
||||
|
||||
## Deployment Notes
|
||||
|
||||
- FTP auto-upload is ON — every file save syncs to production immediately
|
||||
- Do not edit Divi parent theme files (overwritten on update)
|
||||
- Do not edit plugin files directly (overwritten on update) — use hooks/filters in theme instead
|
||||
- The bbPress plugin is currently an exception (100+ modified files) — this is a known risk
|
||||
69
.paul/codebase/db_schema.md
Normal file
69
.paul/codebase/db_schema.md
Normal file
@@ -0,0 +1,69 @@
|
||||
# Database Schema
|
||||
|
||||
> Generated by /paul:map-codebase — 2026-04-26
|
||||
> Note: WordPress core not in local repo — schema below is derived from config + plugin inventory.
|
||||
|
||||
## Connection
|
||||
|
||||
- **Database**: `garbary_szkury`
|
||||
- **Prefix**: `wp_`
|
||||
- **Host**: localhost
|
||||
- **Charset**: UTF-8
|
||||
|
||||
## Standard WordPress Tables
|
||||
|
||||
| Table | Purpose |
|
||||
|-------|---------|
|
||||
| `wp_posts` | All content: pages, posts, WooCommerce products, bbPress topics/replies |
|
||||
| `wp_postmeta` | Post custom fields (includes ACF fields, WooCommerce product data) |
|
||||
| `wp_users` | User accounts |
|
||||
| `wp_usermeta` | User meta (WooCommerce customer data, roles) |
|
||||
| `wp_options` | Site settings, theme mods, plugin config, Divi builder settings |
|
||||
| `wp_terms` | Categories, tags, product categories, bbPress forums |
|
||||
| `wp_term_taxonomy` | Taxonomy definitions |
|
||||
| `wp_term_relationships` | Post ↔ term relationships |
|
||||
| `wp_comments` | Comments |
|
||||
| `wp_commentmeta` | Comment meta |
|
||||
|
||||
## WooCommerce Tables
|
||||
|
||||
| Table | Purpose |
|
||||
|-------|---------|
|
||||
| `wp_woocommerce_sessions` | Customer sessions |
|
||||
| `wp_woocommerce_api_keys` | REST API keys |
|
||||
| `wp_woocommerce_attribute_taxonomies` | Product attribute definitions |
|
||||
| `wp_woocommerce_downloadable_product_permissions` | Digital product access |
|
||||
| `wp_woocommerce_order_items` | Order line items |
|
||||
| `wp_woocommerce_order_itemmeta` | Order item meta |
|
||||
| `wp_woocommerce_tax_rates` | Tax configuration |
|
||||
| `wp_woocommerce_tax_rate_locations` | Tax rate geo rules |
|
||||
| `wp_woocommerce_shipping_zones` | Shipping zones |
|
||||
| `wp_woocommerce_shipping_zone_locations` | Zone locations |
|
||||
| `wp_woocommerce_shipping_zone_methods` | Zone shipping methods |
|
||||
| `wp_woocommerce_payment_tokens` | Saved payment tokens (PayU) |
|
||||
| `wp_woocommerce_payment_tokenmeta` | Payment token meta |
|
||||
| `wp_wc_product_meta_lookup` | Product search/filter cache |
|
||||
| `wp_wc_tax_rate_classes` | Tax classes |
|
||||
| `wp_wc_webhooks` | WooCommerce webhooks |
|
||||
|
||||
## Key Custom Fields (ACF — stored in wp_postmeta)
|
||||
|
||||
| Field key | Post type | Purpose |
|
||||
|-----------|-----------|---------|
|
||||
| `end_date_of_the_offer` | `product` | Offer expiry date; read by `cron-products.php` to auto-unpublish |
|
||||
|
||||
## bbPress Tables
|
||||
|
||||
| Table | Purpose |
|
||||
|-------|---------|
|
||||
| Uses `wp_posts` | Forum, topic, reply post types |
|
||||
| Uses `wp_postmeta` | Forum/topic meta |
|
||||
| Uses `wp_terms` | Forum taxonomy |
|
||||
|
||||
## Notes
|
||||
|
||||
- Products (courses) are stored as `wp_posts` with `post_type = 'product'`
|
||||
- Course categories are `wp_terms` under `product_cat` taxonomy
|
||||
- Custom "Rezerwuj miejsce" / stock behavior driven by `wp_postmeta` stock fields + ACF `end_date_of_the_offer`
|
||||
- Divi page builder content stored as serialized shortcodes in `wp_posts.post_content`
|
||||
- Divi customizer settings (from divi-children-engine) stored in `wp_options` as `theme_mods_body-relax`
|
||||
56
.paul/codebase/integrations.md
Normal file
56
.paul/codebase/integrations.md
Normal file
@@ -0,0 +1,56 @@
|
||||
# External Integrations
|
||||
|
||||
> Generated by /paul:map-codebase — 2026-04-26
|
||||
|
||||
## Payment Processing
|
||||
|
||||
| Service | Plugin | Version | Notes |
|
||||
|---------|--------|---------|-------|
|
||||
| PayU | woo-payu-payment-gateway | 2.0.13 | Methods: card, BLIK, bank transfer, PayPo, Twisto, installments |
|
||||
|
||||
## Analytics & Marketing
|
||||
|
||||
| Service | Plugin | Version | Purpose |
|
||||
|---------|--------|---------|---------|
|
||||
| Google Analytics | Google Site Kit | 1.128.1 | Site analytics |
|
||||
| Google Tag Manager | GTM4WP | 1.22.3 | Tag container |
|
||||
| Facebook Pixel | PixelYourSite | — | Conversion tracking |
|
||||
| Google Shopping | Woo Product Feed PRO | 13.3.2 | Product feeds for Google, Bing, etc. |
|
||||
|
||||
## Social Media
|
||||
|
||||
| Service | Plugin | Version | Purpose |
|
||||
|---------|--------|---------|---------|
|
||||
| Instagram | Smash Balloon Instagram Feed | 6.1.6 | Feed display |
|
||||
| YouTube | Elfsight YouTube Gallery CC | 3.5.0 | Gallery embed |
|
||||
| YouTube | YouTube Feed Pro | — | Feed display |
|
||||
| Facebook Messenger | FB Messenger Live Chat | 1.5.0 | Live chat widget |
|
||||
|
||||
## Hosting & Infrastructure
|
||||
|
||||
| Service | Details |
|
||||
|---------|---------|
|
||||
| Hosting | Cyber-Folks shared hosting (`s165.cyber-folks.pl`) |
|
||||
| App management | Installatron (handles updates; auto-update disabled in WP) |
|
||||
| FTP deployment | ftp-kr VS Code extension, auto-upload enabled |
|
||||
| SSL | Really Simple SSL plugin + server certificate |
|
||||
|
||||
## Security
|
||||
|
||||
| Service | Method |
|
||||
|---------|--------|
|
||||
| Wordfence WAF | `.htaccess` + `.user.ini` auto_prepend_file |
|
||||
| GDPR Cookie consent | Beautiful & Responsive Cookie Consent plugin |
|
||||
| Spam protection | WP Armour / Honeypot |
|
||||
| Malware scanning | GoTMLS plugin |
|
||||
|
||||
## Email
|
||||
|
||||
- Contact email hardcoded in theme: `szkolenia@kursymasazu.com`
|
||||
- WooCommerce order emails (via WordPress mail / likely server sendmail)
|
||||
|
||||
## Scheduled Tasks
|
||||
|
||||
| Script | Trigger | Purpose |
|
||||
|--------|---------|---------|
|
||||
| `cron-products.php` | External cron call | Auto-unpublish WooCommerce products when ACF `end_date_of_the_offer` passes |
|
||||
71
.paul/codebase/stack.md
Normal file
71
.paul/codebase/stack.md
Normal file
@@ -0,0 +1,71 @@
|
||||
# Technology Stack
|
||||
|
||||
> Generated by /paul:map-codebase — 2026-04-26
|
||||
|
||||
## Core Platform
|
||||
|
||||
| Layer | Technology | Version |
|
||||
|-------|-----------|---------|
|
||||
| CMS | WordPress | Core deployed server-side (not in repo) |
|
||||
| PHP | Minimum 5.6.20, recommended 7.4+ | Runtime on Cyber-Folks |
|
||||
| Database | MySQL | DB: `garbary_szkury`, prefix `wp_`, host: localhost |
|
||||
| Web Server | Apache | .htaccess-based routing |
|
||||
|
||||
## Themes
|
||||
|
||||
| Theme | Role | Version | Path |
|
||||
|-------|------|---------|------|
|
||||
| body-relax | Active child theme | 1.0 | `wp-content/themes/body-relax/` |
|
||||
| Divi | Parent theme (ET) | Current on server | `wp-content/themes/Divi/` |
|
||||
| Divi Children Engine | Customizer extension | 1.0.4 | `wp-content/themes/body-relax/divi-children-engine/` |
|
||||
|
||||
## Key Plugins
|
||||
|
||||
### E-Commerce
|
||||
- **WooCommerce** v6.8.1 — Core e-commerce (courses as products)
|
||||
- **PayU Payment Gateway** v2.0.13 — Polish payment processor (card, BLIK, bank transfer, PayPo, Twisto)
|
||||
- **WooCommerce NIP** v1.1.0 — Polish tax ID field at checkout
|
||||
- **Flexible Checkout Fields** v3.4.2 — Custom checkout field management
|
||||
- **Checkout Field Editor** v1.9.1 — Additional field customization
|
||||
|
||||
### Content & SEO
|
||||
- **Advanced Custom Fields (ACF)** v6.2.1 — Custom fields (notably `end_date_of_the_offer` on products)
|
||||
- **Yoast SEO** v19.6.1 — SEO management
|
||||
- **Google Site Kit** v1.128.1 — Analytics integration
|
||||
- **GTM4WP** v1.22.3 — Google Tag Manager
|
||||
- **CMB2** v2.10.1 — Custom meta boxes framework
|
||||
|
||||
### Community
|
||||
- **bbPress** v2.6.9 — Forum software (NOTE: 100+ files modified — see concerns)
|
||||
|
||||
### Security
|
||||
- **Really Simple SSL** v5.3.4 — HTTPS / cookie hardening
|
||||
- **Wordfence WAF** — Web application firewall (via `.htaccess` + `.user.ini`)
|
||||
- **Password Protected** v2.7.1 — Site-wide password protection
|
||||
|
||||
### Media & Social
|
||||
- **Smash Balloon Instagram Feed** v6.1.6
|
||||
- **Elfsight YouTube Gallery CC** v3.5.0
|
||||
- **FB Messenger Live Chat** v1.5.0
|
||||
- **PixelYourSite** — Facebook/analytics pixel
|
||||
|
||||
### Admin Tools
|
||||
- **Loco Translate** v2.6.14 — Translation management
|
||||
- **WP-Optimize** v3.2.14 — DB/image/cache optimization
|
||||
- **Header/Footer Code Manager** — Custom code injection
|
||||
- **Supreme Modules Lite for Divi** v2.4.1 — Divi module extensions
|
||||
|
||||
## Build Tools
|
||||
|
||||
| Tool | Purpose | Config |
|
||||
|------|---------|--------|
|
||||
| Live Sass Compile (VS Code) | SCSS → CSS, compressed, autoprefixed | `.vscode/settings.json` |
|
||||
| FTP-KR (VS Code extension) | Auto-deploy to production | `.vscode/ftp-kr.json` |
|
||||
|
||||
## Deployment
|
||||
|
||||
- **Method**: FTP auto-upload (ftp-kr VS Code extension)
|
||||
- **Host**: s165.cyber-folks.pl
|
||||
- **Remote root**: `/domains/szkoleniauryzaj.pl/public_html/`
|
||||
- **Auto-upload**: ENABLED (any file save triggers upload)
|
||||
- **Excluded from sync**: `.git/`, `.vscode/`, `.serena/`, `.paul/`, `CLAUDE.md`
|
||||
34
.paul/codebase/testing.md
Normal file
34
.paul/codebase/testing.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# Testing
|
||||
|
||||
> Generated by /paul:map-codebase — 2026-04-26
|
||||
|
||||
## Current State
|
||||
|
||||
**No automated testing detected.**
|
||||
|
||||
- No PHPUnit configuration
|
||||
- No `tests/` directory in the theme or custom code
|
||||
- No CI/CD pipeline (no GitHub Actions, no Gitlab CI)
|
||||
- No linting configuration (no `.editorconfig`, `phpcs.xml`, `.eslintrc`)
|
||||
- No staging environment detected (direct FTP to production)
|
||||
|
||||
## Manual Testing
|
||||
|
||||
Deployment is done via FTP auto-upload directly to production. All testing is effectively manual QA on the live site.
|
||||
|
||||
## Risk Areas Without Tests
|
||||
|
||||
| Area | Risk |
|
||||
|------|------|
|
||||
| WooCommerce filters (stock text, button labels) | Regressions visible to customers |
|
||||
| cron-products.php | Silent failures leave expired products published |
|
||||
| PayU gateway | Payment failures affect revenue |
|
||||
| bbPress (modified) | Plugin updates will overwrite custom changes without notice |
|
||||
|
||||
## Recommended First Steps
|
||||
|
||||
If adding testing to this project:
|
||||
1. Add a local WordPress environment (LocalWP or DDEV)
|
||||
2. Add PHPUnit + wp-env or Brain Monkey for unit tests on custom functions
|
||||
3. Add PHP_CodeSniffer with WordPress coding standards for static analysis
|
||||
4. Add a staging FTP target in ftp-kr.json before going live with changes
|
||||
4
.paul/codebase/todo.md
Normal file
4
.paul/codebase/todo.md
Normal file
@@ -0,0 +1,4 @@
|
||||
# TODO
|
||||
|
||||
> Luźny parking pomysłów, rzeczy do sprawdzenia, rzeczy które mogą nigdy nie być wdrożone.
|
||||
> Nie wymaga formalności — wrzucaj co chcesz.
|
||||
33
.paul/config.md
Normal file
33
.paul/config.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# Project Config
|
||||
|
||||
**Project:** szkoleniauryzaj.pl
|
||||
**Created:** 2026-04-26
|
||||
|
||||
## Project Settings
|
||||
|
||||
```yaml
|
||||
project:
|
||||
name: szkoleniauryzaj.pl
|
||||
version: 0.0.0
|
||||
```
|
||||
|
||||
## Integrations
|
||||
|
||||
### SonarQube
|
||||
|
||||
```yaml
|
||||
sonarqube:
|
||||
enabled: false
|
||||
reason: "User declined during init"
|
||||
```
|
||||
|
||||
## Preferences
|
||||
|
||||
```yaml
|
||||
preferences:
|
||||
auto_commit: false
|
||||
verbose_output: false
|
||||
```
|
||||
|
||||
---
|
||||
*Config created: 2026-04-26*
|
||||
3
.paul/docs/API.md
Normal file
3
.paul/docs/API.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# API
|
||||
|
||||
> Endpointy, kontrakty request/response, autentykacja.
|
||||
3
.paul/docs/ARCHITECTURE.md
Normal file
3
.paul/docs/ARCHITECTURE.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# ARCHITECTURE
|
||||
|
||||
> Struktura klas, modulow, przeplywow i zaleznosci w projekcie.
|
||||
3
.paul/docs/DB_SCHEMA.md
Normal file
3
.paul/docs/DB_SCHEMA.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# DB_SCHEMA
|
||||
|
||||
> Schemat bazy danych — tabele, kolumny, FK, indeksy.
|
||||
3
.paul/docs/DECISIONS.md
Normal file
3
.paul/docs/DECISIONS.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# DECISIONS
|
||||
|
||||
> Kluczowe decyzje techniczne i ich uzasadnienia.
|
||||
3
.paul/docs/STACK.md
Normal file
3
.paul/docs/STACK.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# STACK
|
||||
|
||||
> Stack technologiczny, wersje, zaleznosci, srodowisko.
|
||||
3
.paul/docs/TECH_CHANGELOG.md
Normal file
3
.paul/docs/TECH_CHANGELOG.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# TECH_CHANGELOG
|
||||
|
||||
> Chronologiczny log zmian technicznych — co i dlaczego.
|
||||
3
.paul/docs/TODO.md
Normal file
3
.paul/docs/TODO.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# TODO
|
||||
|
||||
> Luzny parking pomyslow, rzeczy do sprawdzenia.
|
||||
76
.paul/governance/governance_2026-04-26.jsonl
Normal file
76
.paul/governance/governance_2026-04-26.jsonl
Normal file
@@ -0,0 +1,76 @@
|
||||
{"ts":"2026-04-26T21:35:51Z","tool":"Bash","cmd":"mkdir -p .paul/phases .paul/codebase && echo \"Created\"\",\"description\":\"Create .paul directory structure\"},\"tool_response\":{\"stdout\":\"Created\",\"stderr\":\"\",\"interrupted\":false,\"isIma","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:36:37Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\codebase\\\\db_schema.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:36:42Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\codebase\\\\todo.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:36:49Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\PROJECT.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:36:55Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\ROADMAP.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:37:04Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\STATE.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:38:39Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\CLAUDE.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:39:52Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\config.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:03Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git status --short | head -30\"},\"tool_response\":{\"stdout\":\" M .vscode/ftp-kr.json\\n M .vscode/ftp-kr.sync.cache.json\\n M wp","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:09Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git diff wp-content/plugins/bbpress/bbpress.php | head -100\"},\"tool_response\":{\"stdout\":\"warning: in the working copy of 'wp-","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:14Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git diff --stat wp-content/plugins/bbpress/ | tail -20\"},\"tool_response\":{\"stdout\":\"warning: in the working copy of 'wp-conte","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:16Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && grep -r \"TODO\\\\|FIXME\\\\|HACK\" wp-content/themes/ 2>/dev/null | head -20\"},\"tool_response\":{\"stdout\":\"wp-content/themes/","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:18Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && find wp-content/themes -type f -name \"*.php\" -o -name \"*.js\" | xargs grep -l \"http://\" | head -10\"},\"tool_response\":{\"std","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:23Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins\" && for dir in */; do head -50 \"${dir%/}/${dir%/}.php\" 2>/dev/null | grep -E \"Plugin Name|Version|Description\" | head -3;","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:24Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && grep -r \"szkoleniauryzaj.pl\\\\|baumer.vot.pl\" wp-content/themes/body-relax/ 2>/dev/null\"},\"tool_response\":{\"stdout\":\"wp-co","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:26Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git diff .vscode/ftp-kr.json\"},\"tool_response\":{\"stdout\":\"diff --git a/.vscode/ftp-kr.json b/.vscode/ftp-kr.json\\nindex ae47","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:28Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && head -50 .vscode/ftp-kr.sync.cache.json\"},\"tool_response\":{\"stdout\":\"{\\n \"ftp://s165.cyber-folks.pl@garbary\": {\\n \"d","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:32Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && grep -r \"mysql_\\\\|ereg_\\\\|eval(\\\\|extract(\" wp-content/themes/body-relax/ 2>/dev/null | grep -v \".min.js\"\"},\"tool_respo","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:34Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git log --oneline -20\"},\"tool_response\":{\"stdout\":\"1b95f03 Save\\nd893e42 Save\\nce22917 Save\\n20c85ba Save\\n98e970c New co","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:34Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/woo-payu-payment-gateway\" && head -50 woocommerce-gateway-payu.php 2>/dev/null || head -50 woo-payu-payment-gateway.php 2>/de","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:36Z","tool":"Bash","cmd":"tree -L 3 \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl/wp-content/themes/body-relax/\" 2>/dev/null | head -80\"},\"tool_response\":{\"stdout\":\"\",\"stderr\":\"\",\"interrupted\":fals","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:38Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && wc -l .vscode/ftp-kr.sync.cache.json && du -h .vscode/ftp-kr.sync.cache.json\"},\"tool_response\":{\"stdout\":\"9162 .vscode/ftp-kr","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:38Z","tool":"Bash","cmd":"wc -l \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl/wp-content/themes/body-relax\"/*.php \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl/wp-content/themes/body-relax/divi-c","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:38Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && grep -c \"modified.*true\" .vscode/ftp-kr.sync.cache.json\"},\"tool_response\":{\"stdout\":\"5\",\"stderr\":\"\",\"interrupted\":fa","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:40Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/advanced-custom-fields\" && head -30 acf.php 2>/dev/null || head -30 advanced-custom-fields.php 2>/dev/null || find . -maxdept","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:40Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git diff wp-content/plugins/bbpress/bbpress.php | grep \"^+\" | head -30\"},\"tool_response\":{\"stdout\":\"warning: in the working","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:42Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/wordpress-seo\" && head -40 wp-seo.php 2>/dev/null || head -40 wp-seo-main.php 2>/dev/null || find . -maxdepth 1 -name \"*.php","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:44Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/google-site-kit\" && head -40 google-site-kit.php 2>/dev/null || find . -maxdepth 1 -name \"*.php\" -type f | head -1 | xargs ","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:44Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git diff --no-index /dev/null wp-content/plugins/bbpress/bbpress.php 2>&1 | grep -A 5 \"^@@\" | head -50\"},\"tool_response\":{\"st","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:46Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && file wp-content/plugins/bbpress/bbpress.php && file wp-content/plugins/bbpress/bbpress.php.orig 2>/dev/null || echo \"No orig file\","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:48Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git log --oneline wp-content/plugins/bbpress/bbpress.php | head -5\"},\"tool_response\":{\"stdout\":\"0d932ce first commit\",\"stde","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:49Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl\" && head -30 wp-load.php 2>/dev/null && echo \"---\" && head -30 wp-blog-header.php 2>/dev/null\"},\"tool_response\":{\"stdout\":\"<?php\\n/**\\","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:50Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && grep -n \"DB_PASSWORD\" wp-config.php\"},\"tool_response\":{\"stdout\":\"31:define('DB_PASSWORD', \"g)6(3B22]9%^iPT\");\",\"stderr\","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:55Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && find . -name \"wp-config.php\" -o -name \".env\" -o -name \".env.local\" 2>/dev/null | grep -v node_modules\"},\"tool_response\":{\","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:57Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git status | grep \"modified\" | wc -l\"},\"tool_response\":{\"stdout\":\"10660\",\"stderr\":\"\",\"interrupted\":false,\"isImage\"","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:57Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git log --oneline -10 2>/dev/null || echo \"Not a git repo or no commits\"\"},\"tool_response\":{\"stdout\":\"1b95f03 Save\\nd893e4","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:41:58Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git diff HEAD wp-content/plugins/bbpress/ --stat | tail -5\"},\"tool_response\":{\"stdout\":\"fatal: option '--stat' must come befo","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:00Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && grep -n \"query_posts\\\\|the_posts\\\\|wp_get_recent_posts\" wp-content/themes/body-relax/divi-children-engine/includes/divi-mods/","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:04Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git status --short | grep -E \"^\\\\s*M\" | wc -l\"},\"tool_response\":{\"stdout\":\"10660\",\"stderr\":\"\",\"interrupted\":false,","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:08Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl\" && grep -r \"\\\\$wp_version\" . --include=\"*.php\" 2>/dev/null | grep -v \"plugins\\\\|themes\" | head -5\"},\"tool_response\":{\"stdout\":\"","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:09Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && git config --get remote.origin.url 2>/dev/null\"},\"tool_response\":{\"stdout\":\"https://git.project-pro.pl/Project-Pro/szkoleniau","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:10Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/really-simple-ssl\" && head -30 rlrsssl-really-simple-ssl.php 2>/dev/null | grep -E \"Version|Plugin Name\"\"},\"tool_response","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:11Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl\" && git log --oneline | head -20\"},\"tool_response\":{\"stdout\":\"1b95f03 Save\\nd893e42 Save\\nce22917 Save\\n20c85ba Save\\n98e970c New comp","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:17Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl\" && find . -maxdepth 2 -type d | sort\"},\"tool_response\":{\"stdout\":\".\\n./.git\\n./.git/hooks\\n./.git/info\\n./.git/logs\\n./.git/objects\","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:20Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/themes\" && du -sh * 2>/dev/null\"},\"tool_response\":{\"stdout\":\"276K\\tbody-relax\\n53M\\tDivi\\n1,0K\\tindex.php\\n6,7M\\ttwentyt","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:21Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins\" && for plugin in */; do echo \"=== $plugin ===\" && head -20 \"${plugin%/}/${plugin%/}.php\" 2>/dev/null | grep -E \"Plugin ","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:23Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl\" && sed -n '14,25p' wp-settings.php\"},\"tool_response\":{\"stdout\":\" * @since 1.0.0\\n */\\ndefine( 'WPINC', 'wp-includes' );\\n\\n/**\\n * V","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:27Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins\" && du -sh */ 2>/dev/null | sort -rh | head -20\"},\"tool_response\":{\"stdout\":\"40M\\twoocommerce/\\n17M\\tadvanced-custom","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:27Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl\" && sed -n '25,50p' wp-settings.php\"},\"tool_response\":{\"stdout\":\" * @global string $wp_version The WordPress version string.\\","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:27Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl\" && head -100 wp-settings.php | tail -50\"},\"tool_response\":{\"stdout\":\"/**\\n * If not already configured, `$blog_id` will default to 1 in ","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:30Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins\" && ls -d */ | sed 's/\\\\///' | sort\"},\"tool_response\":{\"stdout\":\"advanced-custom-fields\\nbbpress\\nbeautiful-and-res","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:38Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl\" && head -30 cron-products.php\"},\"tool_response\":{\"stdout\":\"<?php\\r\\nrequire( dirname( __FILE__ ) . '/wp-load.php' );\\r\\n\\r\\n$curren","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:39Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/themes/Divi\" && head -20 style.css && echo \"---\" && ls functions.php 2>/dev/null && echo \"Divi has functions.php\"\"},\"tool_respo","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:43Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/cmb2\" && head -30 bootstrap.php 2>/dev/null | grep -E \"Version|Plugin Name|Version\" || head -30 init.php 2>/dev/null | grep","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:43Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/google-sitemap-plugin\" && head -40 google-sitemap-plugin.php 2>/dev/null | grep -E \"Version|Plugin Name|Description\"\"},\"t","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:47Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/woocommerce-nip\" && head -40 woocommerce-nip.php 2>/dev/null | grep -E \"Version|Plugin Name|Description|Author\"\"},\"tool_r","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:48Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/duracelltomi-google-tag-manager\" && head -40 duracelltomi-google-tag-manager-for-wordpress.php 2>/dev/null | grep -E \"Versio","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:49Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/woo-checkout-field-editor-pro\" && head -40 checkout-form-designer.php 2>/dev/null | grep -E \"Version|Plugin Name|Description","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:49Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/loco-translate\" && head -40 loco.php 2>/dev/null | grep -E \"Version|Plugin Name|Description\"\"},\"tool_response\":{\"stdout","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:52Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/woocommerce-product-stock-alert\" && head -50 product_stock_alert.php 2>/dev/null | grep -E \"Version|Plugin Name|Description\","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:53Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/woo-product-feed-pro\" && head -50 woocommerce-sea.php 2>/dev/null | grep -E \"Version|Plugin Name|Description\"\"},\"tool_res","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:53Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/pixelyoursite\" && head -50 pixelyoursite.php 2>/dev/null | grep -E \"Version|Plugin Name|Description\"\"},\"tool_response\":{","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:42:53Z","tool":"Bash","cmd":"cd \"C:/visual studio code/projekty/szkoleniauryzaj.pl/wp-content/plugins/popups\" && head -50 popups.php 2>/dev/null | grep -E \"Version|Plugin Name|Description\"\"},\"tool_response\":{\"stdout\":\" ","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:44:06Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && find wp-content/plugins -name \"*.php\" -exec grep -l \"eval\\\\|assert\\\\|create_function\" {} \\\\; 2>/dev/null | head -10\"},\"","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:44:08Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && grep -r \"define.*WP_DEBUG_LOG\\\\|define.*WP_DEBUG_DISPLAY\" wp-config.php\"},\"tool_response\":{\"stdout\":\"\",\"stderr\":\"\",\","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:44:08Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && ls -la .git 2>/dev/null | head -5\"},\"tool_response\":{\"stdout\":\"total 2297\\ndrwxr-xr-x 1 jacek 197121 0 kwi 26 23:42 .\","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:44:16Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && grep -n \"FS_METHOD\\\\|FS_CHMOD\" wp-config.php\"},\"tool_response\":{\"stdout\":\"58:define('FS_METHOD','direct');define('FS_CHMO","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:44:16Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && head -20 .gitignore 2>/dev/null || echo \"No .gitignore\"\"},\"tool_response\":{\"stdout\":\"No .gitignore\",\"stderr\":\"\",\"inte","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:44:16Z","tool":"Bash","cmd":"cd \"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\" && stat wp-config.php 2>&1 | head -10\"},\"tool_response\":{\"stdout\":\" File: wp-config.php\\n Size: 3677 \\tBlocks: 4 ","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:45:18Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\codebase\\\\stack.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:45:47Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\codebase\\\\architecture.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:46:05Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\codebase\\\\conventions.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:46:16Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\codebase\\\\integrations.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:46:24Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\codebase\\\\testing.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:46:46Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\codebase\\\\concerns.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
{"ts":"2026-04-26T21:47:03Z","tool":"Write","file":"C:\\\\visual studio code\\\\projekty\\\\szkoleniauryzaj.pl\\\\.paul\\\\codebase\\\\db_schema.md","cwd":"/c/visual studio code/projekty/szkoleniauryzaj.pl"}
|
||||
Reference in New Issue
Block a user