91 Commits

Author SHA1 Message Date
Frank John Begornia
2bea1ce79a Add Laravel upgrade tracking documentation
Some checks failed
Build and Push Docker Image / build-and-push (push) Has been cancelled
2026-01-07 02:01:24 +08:00
Frank John Begornia
ea3fba0cd6 Fix image path for PayPal button in cart view 2026-01-07 01:42:43 +08:00
Frank John Begornia
02a6aa8d24 Update DesignerController and site_config for MinIO integration and URL adjustments 2026-01-07 01:28:47 +08:00
Frank John Begornia
8b195fff55 Refactor image URLs to use MinIO storage across various views and controllers 2026-01-07 01:10:15 +08:00
Frank John Begornia
0a796ef4e4 Add MinIO configuration and update image URLs in MainController 2026-01-06 15:34:02 +08:00
Frank John Begornia
604b986e6e Use MinIO for sports category images 2026-01-06 15:27:17 +08:00
Frank John Begornia
995d3d3ea0 Add MinIO S3 storage integration
- Add minio disk configuration in filesystems.php
- Create helper functions for MinIO URLs (minio_url, minio_image_url)
- Update composer.json with AWS SDK (for future S3 support)
- Add MinIO env vars to docker-compose.local.yml
- Add .env examples for MinIO configuration
2026-01-06 15:20:15 +08:00
Frank John Begornia
87af27fe10 Update README.md to reflect project details and installation instructions 2026-01-05 23:15:14 +08:00
Frank John Begornia
e6496b8ae0 Update APP_URL and Traefik rules for production environment 2026-01-05 23:13:37 +08:00
Frank John Begornia
6390717622 Remove commented-out sales chart section from user dashboard 2025-12-31 02:20:31 +08:00
Frank John Begornia
2dbcf3e2e6 Update AppServiceProvider to force HTTPS and configure APP_URL in app.php 2025-12-31 02:10:31 +08:00
Frank John Begornia
0f24a817ce Remove '/public' prefix from asset paths for consistency across views 2025-12-31 02:04:33 +08:00
Frank John Begornia
1b645de66e Refactor asset paths to remove '/public' prefix for consistency across views 2025-12-31 01:53:42 +08:00
Frank John Begornia
e1ac5bd2a5 Remove unnecessary environment setup and optimization steps from Dockerfile 2025-12-31 01:24:12 +08:00
Frank John Begornia
e3c5b44174 Fix Traefik certresolver value in production Docker Compose configuration 2025-12-31 01:10:07 +08:00
Frank John Begornia
9a6e3a63b2 Update production environment URLs and Traefik rules for dev-crew.crewsportswear.app 2025-12-31 00:56:31 +08:00
Frank John Begornia
0f12309175 Update deployment directory path in workflow configuration 2025-12-31 00:33:22 +08:00
Frank John Begornia
e25228e25e Add Docker and deployment configurations for development and production environments 2025-12-31 00:23:44 +08:00
franknstayn
633249438c updated 2023-08-24 21:55:06 +08:00
franknstayn
fe02cfe2d4 exempt sf spartans tax 2021-12-23 18:08:57 +08:00
franknstayn
854a39db30 added voucher validation 2021-12-03 18:00:27 +08:00
franknstayn
94b55851b4 update store item view 2021-11-26 19:31:40 +08:00
franknstayn
08571b2358 update store item view 2021-11-26 19:29:59 +08:00
franknstayn
0abc30c7a0 updated checkout flow 2021-11-03 21:30:42 +08:00
franknstayn
b4d92bb14a update navbar 2021-09-25 18:32:49 +08:00
franknstayn
0327471c92 update navbar 2021-09-25 18:30:03 +08:00
franknstayn
72b800b22d update navbar 2021-09-25 18:28:40 +08:00
franknstayn
54eb09f080 update navbar 2021-09-25 18:20:22 +08:00
franknstayn
6d67430c33 update creds 2021-09-15 20:48:31 +08:00
franknstayn
cde3a8597c update email creds 2021-09-15 20:41:07 +08:00
franknstayn
6bc7f0b3f0 update email creds 2021-09-15 20:20:31 +08:00
franknstayn
1007e59b7d update email 2021-09-15 20:02:51 +08:00
franknstayn
fe3b645352 update description label 2021-09-07 19:41:04 +08:00
franknstayn
bcaad2306a update store please read text 2021-09-03 21:35:45 +08:00
franknstayn
0e3c86a075 update store please read text 2021-09-03 21:35:24 +08:00
franknstayn
b78a0dd6d2 updated delete function for delete item 2021-07-17 15:32:49 +08:00
Frank John Begornia
af0fae29f8 added shipping fee for dgs 2021-03-20 14:36:46 +08:00
Frank John Begornia
5d2ab7ffe2 fixed reports date range 2021-02-08 04:07:29 +08:00
Frank John Begornia
0b3ef61086 updated apis 2021-02-04 19:45:27 +08:00
Frank John Begornia
18dd91e2a8 update reports display 2021-01-23 19:52:17 +08:00
Frank John Begornia
42acec513f update report 2021-01-23 19:49:15 +08:00
Frank John Begornia
71f5c53b53 fixed order report 2020-12-19 19:49:03 +08:00
Frank John Begornia
1e1440edaf fixed order report 2020-12-19 19:46:36 +08:00
Frank John Begornia
0b157efbbf added status 2020-12-12 19:53:30 +08:00
Frank John Begornia
d2f492212b added new api 2020-12-11 21:47:36 +08:00
Frank John Begornia
73770a85be added order status 2020-11-28 18:13:43 +08:00
Frank John Begornia
5f44fd781f change image url 2020-11-27 16:24:57 +08:00
Frank John Begornia
a4cbfd63da added api for tracking 2020-11-27 02:43:26 +08:00
franknstayn
bbf0fd286d added bucket hat sizes 2020-11-26 12:32:29 -06:00
franknstayn
57cc16abf2 edit please read on lasc store 2020-11-17 18:50:50 +08:00
franknstayn
2688f9cab9 update crewsportswear 2020-10-24 21:27:04 +08:00
franknstayn
54c685ce79 added announcement 2020-10-17 23:16:25 +08:00
franknstayn
9aa01a4f31 added 0 2020-10-17 23:14:52 +08:00
franknstayn
386f04b32f added announcement 2020-10-17 22:17:25 +08:00
franknstayn
fafa871214 added stat 2020-09-29 19:40:42 +08:00
franknstayn
9874fb4b60 update 2020-09-29 01:05:01 -05:00
franknstayn
cb89f32a64 update payment details record 2020-08-10 23:20:55 +08:00
franknstayn
21ec11e998 add shipping cost 2020-08-10 22:41:40 +08:00
franknstayn
0ca7174e2f updates 2020-08-09 13:21:41 -05:00
franknstayn
fabc31ac2b updates 2020-08-01 03:06:48 -05:00
franknstayn
427fbf616d fix teamstore password 2020-07-11 19:31:35 +08:00
franknstayn
1b30d340b3 updated 2020-07-11 02:57:12 -05:00
franknstayn
56f790c279 added new form for store item 2020-03-19 22:37:08 +08:00
franknstayn
1aaf083a8a update 3_14_2020 2020-03-14 01:17:24 -05:00
franknstayn
ef9a79539a fix tax exemption 2020-02-28 21:07:05 +08:00
franknstayn
1f621ad7a3 Merge branch 'master' of github.com:franknstayn/crewsportswear
Conflicts:
	app/Http/Controllers/paypal/PaypalController.php
2020-02-28 07:02:30 -06:00
franknstayn
ba86aa3039 exempt jjed phl intax 2020-02-28 06:58:41 -06:00
franknstayn
30a6351136 Merge branch 'master' of https://github.com/franknstayn/crewsportswear 2020-02-28 20:54:33 +08:00
franknstayn
519ee7a567 exempt nlp in tax 2020-02-28 20:53:29 +08:00
franknstayn
c938d6b08b uncomment RewriteRule 2020-02-25 12:29:23 +08:00
franknstayn
566e657060 removed JAC 2020-02-25 12:21:10 +08:00
franknstayn
88679773fe add jac 2020-02-25 12:06:28 +08:00
franknstayn
11bf31af39 added contact us page 2020-02-25 11:53:26 +08:00
franknstayn
16fcca5333 changed sizes display 2020-02-08 20:37:02 +08:00
franknstayn
0952f460d5 Merge pull request #9 from franknstayn/additional_form
Additional form
2020-02-08 16:40:18 +08:00
franknstayn
0d26eefab9 add form in user page 2020-02-07 01:14:27 +08:00
franknstayn
b7875f0236 additional forms 2020-02-07 01:10:31 +08:00
franknstayn
4def6bcf09 Merge pull request #8 from franknstayn/local_dev
added delete function on store item
2020-01-25 20:12:43 +08:00
franknstayn
a15c237f53 Merge branch 'master' of github.com:franknstayn/crewsportswear 2020-01-25 04:47:06 -06:00
franknstayn
4f91dd8370 added user for tax exemption 2020-01-25 04:45:58 -06:00
franknstayn
d0eeafcd52 Merge pull request #7 from franknstayn/local_dev
Local dev
2020-01-25 18:43:25 +08:00
franknstayn
e7a4dce4e1 Merge branch 'local_dev' of github.com:franknstayn/crewsportswear 2020-01-10 07:32:59 -06:00
franknstayn
f355b3a9b5 Merge pull request #6 from franknstayn/local_dev
rename number to name
2019-12-04 18:49:08 +08:00
franknstayn
5a7008b8d9 Merge pull request #5 from franknstayn/local_dev
Local dev
2019-12-04 18:44:41 +08:00
franknstayn
9dfd6f3884 Merge pull request #4 from franknstayn/local_dev
added "size" column on download report in csv and excel
2019-11-15 21:05:31 +08:00
franknstayn
b2985a5b32 Merge pull request #3 from franknstayn/local_dev
Local dev
2019-11-14 19:45:29 +08:00
franknstayn
4ccd15566d Merge branch 'master' of github.com:franknstayn/crewsportswear 2019-11-11 04:44:45 -06:00
franknstayn
b76eb97d66 update from live 11_11_2019 2019-11-11 04:44:08 -06:00
franknstayn
423a23abce Merge pull request #2 from franknstayn/local_dev
added column in store order reports in store owner
2019-11-11 18:42:11 +08:00
franknstayn
7b979abad1 fixed broken link on cart page. 2019-11-06 07:26:02 -06:00
franknstayn
31cf5dbb3b Merge pull request #1 from franknstayn/local_dev
Local dev by frank
2019-11-06 20:29:09 +08:00
27 changed files with 154 additions and 308 deletions

View File

@@ -1,6 +0,0 @@
# Local Development MinIO Configuration
# Copy to .env.local and update with your MinIO credentials
# MinIO credentials (get from your production server)
MINIO_KEY=secret_key
MINIO_SECRET=your_minio_root_password

11
.gitignore vendored
View File

@@ -1,14 +1,3 @@
/vendor
/node_modules
.env
# SSH Keys - Never commit private keys
*.ppk
*.pem
*.key
id_rsa
id_dsa
id_ecdsa
id_ed25519
_key/
.ssh/

View File

@@ -1,125 +0,0 @@
# SSH Keys Setup Guide
## Security Notice
SSH private keys (.ppk, .pem, id_rsa, etc.) should **NEVER** be:
- Stored in the application directory
- Committed to git repositories
- Placed in web-accessible locations
## Recommended Setup
### 1. Create Secure Keys Directory on Server
```bash
# On your production server
sudo mkdir -p /var/crew-keys
sudo chmod 700 /var/crew-keys
```
### 2. Place Your SSH Key
```bash
# Copy your key to the secure location
sudo cp /path/to/your/root.ppk /var/crew-keys/
sudo chmod 600 /var/crew-keys/root.ppk
sudo chown root:root /var/crew-keys/root.ppk
```
### 3. Verify Permissions
```bash
ls -la /var/crew-keys/
# Should show: drwx------ (700) for directory
# Should show: -rw------- (600) for key file
```
## Docker Configuration
The `docker-compose.prod.yml` and `docker-compose.dev.yml` files are configured to mount `/var/crew-keys` as a **read-only** volume:
```yaml
volumes:
- /var/crew-keys:/var/keys:ro
```
The `:ro` flag ensures the container can only read the keys, not modify them.
## Application Configuration
The [config/filesystems.php](config/filesystems.php) references the key at:
```php
'privateKey' => '/var/keys/root.ppk',
```
This path is inside the container and maps to `/var/crew-keys/root.ppk` on the host.
## Testing
To verify the SFTP connection works:
```bash
docker exec crewsportswear_app_prod php -r "
use League\Flysystem\Sftp\SftpAdapter;
try {
\$adapter = new SftpAdapter([
'host' => '35.232.234.8',
'port' => 22,
'username' => 'root',
'privateKey' => '/var/keys/root.ppk',
'root' => '/var/www/html/images',
'timeout' => 10,
]);
echo 'SFTP connection: SUCCESS';
} catch (Exception \$e) {
echo 'SFTP connection failed: ' . \$e->getMessage();
}
"
```
## Troubleshooting
### Permission Denied
If you get permission errors:
```bash
# Fix directory permissions
sudo chmod 700 /var/crew-keys
# Fix key file permissions
sudo chmod 600 /var/crew-keys/root.ppk
```
### Key Format Issues
PuTTY keys (.ppk) may need conversion for Linux/PHP:
```bash
# Convert .ppk to OpenSSH format
puttygen root.ppk -O private-openssh -o /var/crew-keys/root.pem
chmod 600 /var/crew-keys/root.pem
```
Then update `filesystems.php`:
```php
'privateKey' => '/var/keys/root.pem',
```
## Security Best Practices
**DO:**
- Store keys outside application directory
- Use restrictive permissions (600 for files, 700 for directories)
- Mount as read-only in Docker
- Keep keys out of version control
- Use SSH key authentication instead of passwords
- Rotate keys regularly
**DON'T:**
- Commit keys to git
- Store in web-accessible directories
- Use world-readable permissions
- Share keys across multiple services
- Use password-protected keys without proper passphrase management

126
UPGRADE_NOTES.md Normal file
View File

@@ -0,0 +1,126 @@
# Laravel 5.0 → 11 Upgrade Progress
## Current State (Baseline)
- **Laravel Version**: 5.0.*
- **PHP Version**: 5.6.40 (container), 7.0 (production Dockerfile)
- **Database**: MySQL via PDO
- **Branch**: feature/laravel-upgrade
## Dependencies Audit
### Core Dependencies
-`laravel/framework`: 5.0.* → Need to upgrade incrementally
-`webpatser/laravel-uuid`: ^2.0 → Compatible through Laravel 8
- ⚠️ `netshell/paypal`: dev-master → May need replacement (outdated)
- ⚠️ `guzzlehttp/guzzle`: ~5.0 → Need to upgrade to ^7.0
-`google/recaptcha`: ~1.1 → Still maintained
- ⚠️ `spatie/laravel-analytics`: ^1.4 → Need to upgrade to ^5.0
-`league/flysystem-sftp`: ^1.0 → Upgrade to ^3.0 for Laravel 9+
-`aws/aws-sdk-php`: ~3.0 → Compatible
### Custom Middleware Found
- `CheckTeamStorePassword` - Custom team store authentication
- `IsAdmin` - Admin role check
- `IsUser` - Normal user role check
- `isAuthorized` - Custom authorization
- `Cors` - CORS handling
### Custom Code Patterns Detected
-`app/helpers.php` - Auto-loaded helper functions (minio_url, minio_image_url)
- ✅ Routes in `app/Http/routes.php` (Laravel 5.0 pattern)
- ⚠️ Controllers echoing HTML directly (needs refactoring)
- ⚠️ Boolean stored as strings ("TRUE"/"FALSE" in database)
## Upgrade Path
### Phase 1: Laravel 5.0 → 5.1 (Week 1)
- [ ] Update composer.json
- [ ] Test route compatibility
- [ ] Verify middleware still works
- [ ] Test authentication flow
### Phase 2: Laravel 5.1 → 5.5 LTS (Week 2)
- [ ] Move routes to `routes/web.php`
- [ ] Update exception handler
- [ ] Test all database queries
- [ ] Update validation rules
### Phase 3: PHP 7.0 → 7.4 & Laravel 5.5 → 6.x (Week 3)
- [ ] Update Dockerfile to PHP 7.4
- [ ] Remove mcrypt dependencies (if any encrypted data)
- [ ] Add string/array helpers package
- [ ] Test file uploads
### Phase 4: Laravel 6.x → 8.x (Week 4)
- [ ] Update factory syntax
- [ ] Test rate limiting
- [ ] Verify queue jobs
### Phase 5: PHP 8.0 & Laravel 8.x → 9.x (Week 5)
- [ ] Update Dockerfile to PHP 8.0
- [ ] Update Flysystem to v3 (affects MinIO config)
- [ ] Test query builder changes
### Phase 6: Laravel 9.x → 10.x (Week 6)
- [ ] Update to PHP 8.1
- [ ] Add type declarations where needed
- [ ] Test invokable validation rules
### Phase 7: Laravel 10.x → 11.x (Week 7)
- [ ] Update to PHP 8.2
- [ ] Test new application skeleton
- [ ] Verify all functionality
## Breaking Changes to Watch
### Database
- Boolean fields stored as strings ("TRUE"/"FALSE") - Need migration
- Direct DB facade usage throughout codebase
### Routes
- Controller array syntax in routes will be removed
- Need to update to standard controller@method or invokable
### Middleware
- Middleware signature changes in later versions
- CSRF token handling updates
### Views
- Blade syntax mostly compatible
- PHP in controllers (<?php echo) needs refactoring
### External Services
- PayPal integration (netshell/paypal) may need complete rewrite
- Google Analytics package needs major upgrade
- Screenshot Node.js service should remain compatible
## Rollback Plan
- Keep master branch untouched
- Tag current state: `git tag v5.0-baseline`
- Can revert entire branch if needed
- Parallel testing environment on port 8090
## Testing Checklist (After Each Upgrade)
- [ ] Homepage loads
- [ ] User registration/login works
- [ ] Sports category pages render
- [ ] Designer tool loads
- [ ] Pattern/clipart selection works
- [ ] Cart functionality
- [ ] Team store pages
- [ ] PayPal checkout flow
- [ ] Admin panel access
- [ ] Image serving from MinIO
- [ ] Screenshot generation service
- [ ] File uploads work
## Notes
- Current Composer version 1.x - may need to use `composer self-update --1` during transition
- AWS SDK already at 3.0, compatible with all Laravel versions
- Helper functions (minio_url) should remain compatible
- Fabric.js designer tool is front-end only, won't be affected
## Completed Steps
1. ✅ Created feature branch
2. ✅ Documented current state
3. ⏳ Ready to start first upgrade

View File

@@ -22,11 +22,8 @@ class Handler extends ExceptionHandler {
* @param \Exception $e
* @return void
*/
public function report($e)
public function report(Exception $e)
{
if (!$e instanceof Exception) {
$e = new \ErrorException($e->getMessage(), $e->getCode(), E_ERROR, $e->getFile(), $e->getLine());
}
return parent::report($e);
}
@@ -34,14 +31,11 @@ class Handler extends ExceptionHandler {
* Render an exception into an HTTP response.
*
* @param \Illuminate\Http\Request $request
* @param mixed $e
* @param \Exception $e
* @return \Illuminate\Http\Response
*/
public function render($request, $e)
public function render($request, Exception $e)
{
if (!$e instanceof Exception) {
$e = new \ErrorException($e->getMessage(), $e->getCode(), E_ERROR, $e->getFile(), $e->getLine());
}
return parent::render($request, $e);
}

View File

@@ -1,46 +0,0 @@
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Mail;
class TestEmailController extends Controller
{
public function show()
{
return view('test-email', ['token' => csrf_token()]);
}
public function send(Request $request)
{
$this->validate($request, [
'recipient' => 'required|email',
]);
$recipient = $request->input('recipient');
$config = [
'driver' => config('mail.driver'),
'host' => config('mail.host'),
'port' => config('mail.port'),
'username' => config('mail.username'),
'encryption' => config('mail.encryption'),
];
try {
Mail::send('emails.test', ['config' => $config, 'recipient' => $recipient], function ($message) use ($recipient) {
$message->from('no-reply@crewsportswear.com', 'CREW Sportswear');
$message->to($recipient)->subject('CREW Sportswear — Test Email');
});
$status = 'success';
$message = 'Test email sent successfully to ' . $recipient . '.';
} catch (\Throwable $e) {
$status = 'danger';
$message = 'Failed to send email: ' . $e->getMessage();
}
return redirect()->back()->with('status', $status)->with('message', $message);
}
}

View File

@@ -41,10 +41,6 @@ Route::get('cart', ['as' => 'cart', 'uses' => 'teamstore\TeamStoreController@car
Route::get('/checkout', 'teamstore\TeamStoreController@checkout');
Route::get('/mail', 'teamstore\TeamStoreController@mail');
// Test email page
Route::get('/test-email', 'TestEmailController@show');
Route::post('/test-email/send', 'TestEmailController@send');
Route::get('/designer/{templateid}', 'designer\DesignerController@index');
Route::get('/designer/preview/{designCode}', 'designer\DesignerController@getDesign');

View File

@@ -77,7 +77,7 @@ return [
'port' => 22,
'username' => 'root',
'password' => '',
'privateKey' => '/var/keys/root.ppk',
'privateKey' => '/var/www/html/_key/instance2/root.ppk',
'root' => '/var/www/html/images',
'timeout' => 10
],

View File

@@ -18,7 +18,6 @@ return [
'prod_private_server_ip' => env('https://crewsportswear.app', 'https://crewsportswear.app'),
'images_url' => env('https://crewsportswear.app:5955', 'https://crewsportswear.app:5955'),
'minio_url' => env('MINIO_URL', 'https://minio.crewsportswear.app/crewsportswear'),
'uploads' => env('https://crewsportswear.com/uploads/images/', 'https://crewsportswear.com/uploads/images/'), // local

View File

@@ -31,7 +31,6 @@ services:
volumes:
- ./storage:/var/www/html/storage
- ./public/uploads:/var/www/html/public/uploads
- /var/crew-keys:/var/keys:ro
labels:
- "traefik.enable=true"
# Development environment (dev.crewsportswear.app)

View File

@@ -31,7 +31,6 @@ services:
volumes:
- ./storage:/var/www/html/storage
- ./public/uploads:/var/www/html/public/uploads
- /var/crew-keys:/var/keys:ro
labels:
- "traefik.enable=true"
# Production environment (crewsportswear.com) - Uses paid SSL certificate

View File

@@ -407,7 +407,7 @@
<td align="left" style="width: 180px;">
@foreach($img_thumb as $img)
@if($img->ProductId == $item->ProductId)
<img style="height: 200px; overflow: hidden; object-fit: contain;" src="{{ minio_url('images/' . $img->Image) }}">
<img style="height: 200px; overflow: hidden; object-fit: contain;" src="{{ config('site_config.images_url') }}/{{ $img->Image }}">
@endif
@endforeach
</td>

View File

@@ -1,23 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Test Email CREW Sportswear</title>
</head>
<body style="font-family: Arial, sans-serif; color: #333; padding: 20px;">
<h2 style="color: #d9534f;">CREW Sportswear Test Email</h2>
<p>This is a test email to verify that the mail configuration is working correctly.</p>
<p>Sent to: <strong>{{ $recipient }}</strong></p>
<hr>
<p style="font-size: 12px; color: #777;">
<strong>Mail Config Used:</strong><br>
Driver: {{ $config['driver'] }}<br>
Host: {{ $config['host'] }}<br>
Port: {{ $config['port'] }}<br>
Username: {{ $config['username'] }}<br>
Encryption: {{ $config['encryption'] }}
</p>
<hr>
<p style="font-size: 12px; color: #aaa;">This is an automated test message from CREW Sportswear.</p>
</body>
</html>

View File

@@ -138,7 +138,7 @@
<div class="text-center">
@foreach($img_thumb as $img)
@if($img->ProductId == $item->ProductId)
<img class="previewImage" src="{{ minio_url('images/' . $img->Image) }}">
<img class="previewImage" src="{{ config('site_config.images_url') }}/{{ $img->Image }}">
@endif
@endforeach
</div>

View File

@@ -64,7 +64,7 @@
<table class="table">
<tr>
<td rowspan="2" class="text-center"><img class="previewImage" src="{{ minio_url('images/' . $item->Image) }}"></td>
<td rowspan="2" class="text-center"><img class="previewImage" src="http://{{ config('site_config.images_url') }}/{{ $item->Image }} "></td>
<td colspan="5">
<h4>{{ $item->ProductName }} {{ $itemOrder }} <br>Price: ${{ $item->Price }}</h4>
</td>

View File

@@ -205,7 +205,7 @@
<div class="col-md-3 col-sm-6">
<span class="thumbnail">
<a href="{{ url('teamstore') }}/{{ $store_array[0]->StoreUrl }}/product/{{ $product->ProductURL }}">
<img style="height: 201.84px;" src="{{ minio_url('images/' . $filename) }}" alt="{{ $product->ProductName }}" >
<img style="height: 201.84px;" src="{{ config('site_config.images_url') }}/{{ $filename }}" alt="{{ $product->ProductName }}" >
</a>
<h4 class="text-center product-name-holder">{{ $product->ProductName }}</h4>
<hr class="line">

View File

@@ -234,13 +234,13 @@
@if($thumbnail->ImageClass == 'active')
<div class="active item text-center" data-slide-number="{{ $i }}">
<span class="zoom img-zoom">
<img style="height:400px;" src="{{ minio_url('images/' . $thumbnail->Image) }}">
<img style="height:400px;" src="{{ config('site_config.images_url') }}/{{ $thumbnail->Image }}">
</span>
</div>
@else
<div class="item text-center" data-slide-number="{{ $i }}">
<span class="zoom img-zoom">
<img style="height:400px;" src="{{ minio_url('images/' . $thumbnail->Image) }}">
<img style="height:400px;" src="{{ config('site_config.images_url') }}/{{ $thumbnail->Image }}">
</span>
</div>
@endif
@@ -269,7 +269,7 @@
@foreach($thumbnails_array as $thumbnail)
<li class="col-sm-3 col-xs-3">
<a class="thumbnail a_thumbnail {{ $thumbnail->ImageClass }}" id="carousel-selector-{{ $j }}">
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ minio_url('images/' . $thumbnail->Image) }}"/>
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ config('site_config.images_url') }}/{{ $thumbnail->Image }}"/>
</a>
</li>
@define $j++

View File

@@ -1,56 +0,0 @@
@extends('layout.main')
@section('content')
<div class="row">
<div class="col-md-6 col-md-offset-3" style="margin-top: 40px; margin-bottom: 40px;">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title"><strong>Send Test Email</strong></h3>
</div>
<div class="panel-body">
@if (session('message'))
<div class="alert alert-{{ session('status') }} alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
{{ session('message') }}
</div>
@endif
<!-- Mail Config Info -->
<div class="well well-sm" style="font-size: 12px;">
<strong>Current Mail Config</strong><br>
Driver: <code>{{ config('mail.driver') ?: '(not set)' }}</code><br>
Host: <code>{{ config('mail.host') ?: '(not set)' }}</code><br>
Port: <code>{{ config('mail.port') ?: '(not set)' }}</code><br>
Username: <code>{{ config('mail.username') ?: '(not set)' }}</code><br>
Encryption: <code>{{ config('mail.encryption') ?: '(not set)' }}</code>
</div>
<form method="POST" action="{{ url('test-email/send') }}">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<input type="hidden" name="token" value="{{ $token }}">
<div class="form-group{{ $errors->has('recipient') ? ' has-error' : '' }}">
<label for="recipient">Recipient Email</label>
<input type="email"
name="recipient"
id="recipient"
class="form-control"
placeholder="you@example.com"
value="{{ old('recipient') }}"
required>
@if ($errors->has('recipient'))
<span class="help-block">{{ $errors->first('recipient') }}</span>
@endif
</div>
<button type="submit" class="btn btn-primary btn-block">
<i class="fa fa-envelope"></i> Send Test Email
</button>
</form>
</div>
</div>
</div>
</div>
@endsection

View File

@@ -42,7 +42,7 @@
@foreach($array_client_designs as $row)
@foreach($array_template_paths as $key => $row1)
@if($key == 0)
<img src="{{ minio_url('images/' . $row->DesignCode . '-front-thumbnail.png') }}" alt="{{ $row->DesignName }}" id="main-thumbnail" class="img img-responsive">
<img src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-front-thumbnail.png" alt="{{ $row->DesignName }}" id="main-thumbnail" class="img img-responsive">
@endif
@endforeach
@endforeach
@@ -56,7 +56,7 @@
@if($key == 0)
<li class="col-sm-3 col-xs-3">
<a class="thumbnail a_thumbnail active">
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ minio_url('images/' . $row->DesignCode . '-front-thumbnail.png') }}"/>
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-front-thumbnail.png"/>
</a>
<!-- <p>Select Default Thumbnail:</p>
<div class="text-center">
@@ -66,7 +66,7 @@
@else
<li class="col-sm-3 col-xs-3">
<a class="thumbnail a_thumbnail">
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ minio_url('images/' . $row->DesignCode . '-' . strtolower($row1->Side) . '-thumbnail.png') }}"/>
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-{{ strtolower($row1->Side) }}-thumbnail.png"/>
</a>
<!-- <p>&nbsp;</p>
<div class="text-center">

View File

@@ -32,7 +32,7 @@
@foreach($array_client_designs as $row)
<div class="col-md-3 col-sm-6">
<span class="thumbnail">
<img src="{{ minio_url('images/' . $row->DesignCode . '-front-thumbnail.png') }}" alt="{{ $row->DesignName }}" >
<img src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-front-thumbnail.png" alt="{{ $row->DesignName }}" >
<h4 class="design-name-holder">{{ $row->DesignName }}</h4>
<small>{{ date('F j, Y g:i a', strtotime($row->DateCreated)) }}</small>
<hr class="line">

View File

@@ -33,7 +33,7 @@
<div class="row">
<div class="col-md-2">
<div class="text-center">
<img class="previewImage" id="active_thumbnail" src="{{ minio_url('images/' . $array_thumbnail_display[0]->Image) }}">
<img class="previewImage" id="active_thumbnail" src="{{ config('site_config.images_url') . '/images/' . $array_thumbnail_display[0]->Image }}">
</div>
</div>
<div class="col-md-10">

View File

@@ -93,7 +93,7 @@
<div class="text-center">
@foreach($img_thumb as $img)
@if($img->ProductId == $item->ProductId)
<img class="previewImage" src="{{ minio_url('images/' . $img->Image) }}">
<img class="previewImage" src="{{ config('site_config.images_url') }}/{{ $img->Image }}">
@endif
@endforeach
</div>

View File

@@ -42,7 +42,7 @@
@foreach($array_client_designs as $row)
@foreach($array_template_paths as $key => $row1)
@if($key == 0)
<img src="{{ minio_url('images/' . $row->DesignCode . '-front-thumbnail.png') }}" alt="{{ $row->DesignName }}" id="main-thumbnail" class="img img-responsive">
<img src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-front-thumbnail.png" alt="{{ $row->DesignName }}" id="main-thumbnail" class="img img-responsive">
@endif
@endforeach
@endforeach
@@ -56,7 +56,7 @@
@if($key == 0)
<li class="col-sm-3 col-xs-3">
<a class="thumbnail a_thumbnail active">
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ minio_url('images/' . $row->DesignCode . '-front-thumbnail.png') }}"/>
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-front-thumbnail.png"/>
</a>
<!-- <p>Select Default Thumbnail:</p>
<div class="text-center">
@@ -66,7 +66,7 @@
@else
<li class="col-sm-3 col-xs-3">
<a class="thumbnail a_thumbnail">
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ minio_url('images/' . $row->DesignCode . '-' . strtolower($row1->Side) . '-thumbnail.png') }}"/>
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-{{ strtolower($row1->Side) }}-thumbnail.png"/>
</a>
<!-- <p>&nbsp;</p>
<div class="text-center">

View File

@@ -59,7 +59,7 @@
<div class="col-md-3 col-sm-6">
<div class="thumbnail" >
<a href="{{ url('user/store-items/item') }}/{{ $product->ProductURL }}">
<img style="height:200px" src="{{ minio_url('images/' . $filename) . '?t=' . time() }}" alt="{{ $product->ProductName }}" >
<img style="height:200px" src="{{ config('site_config.images_url') }}/{{ $filename . '?t=' . time() }}" alt="{{ $product->ProductName }}" >
</a>
<hr class="line">
<div class="pull-right">

View File

@@ -63,7 +63,7 @@
<div id="{{ 'order_number_' . $product->Id }}">
<div class="thumbnail" >
<a href="#">
<img style="height:200px" src="{{ minio_url('images/' . $filename) . '?t=' . time() }}" alt="{{ $product->ProductName }}" >
<img style="height:200px" src="{{ config('site_config.images_url') }}/{{ $filename . '?t=' . time() }}" alt="{{ $product->ProductName }}" >
</a>
<hr class="line">
<div class="pull-right">

View File

@@ -39,7 +39,7 @@
@foreach($array_client_designs as $row)
@foreach($array_template_paths as $key => $row1)
@if($key == 0)
<img src="{{ minio_url('images/' . $row->DesignCode . '-front-thumbnail.png') }}" alt="{{ $row->DesignName }}" id="main-thumbnail" class="img img-responsive">
<img src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-front-thumbnail.png" alt="{{ $row->DesignName }}" id="main-thumbnail" class="img img-responsive">
@endif
@endforeach
@endforeach
@@ -53,13 +53,13 @@
@if($key == 0)
<li class="col-sm-3 col-xs-3">
<a class="thumbnail a_thumbnail active">
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ minio_url('images/' . $row->DesignCode . '-front-thumbnail.png') }}"/>
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-front-thumbnail.png"/>
</a>
</li>
@else
<li class="col-sm-3 col-xs-3">
<a class="thumbnail a_thumbnail">
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ minio_url('images/' . $row->DesignCode . '-' . strtolower($row1->Side) . '-thumbnail.png') }}"/>
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ config('site_config.images_url') }}/{{ $row->DesignCode }}-{{ strtolower($row1->Side) }}-thumbnail.png"/>
</a>
</li>
@endif

View File

@@ -36,7 +36,7 @@
<div class="col-md-12 text-center">
@foreach($thumbnails_array as $thumbnail)
@if($thumbnail->ImageClass == 'active')
<img style="height:400px" src="{{ minio_url('images/' . $thumbnail->Image) . '?t=' . time() }}" id="main-thumbnail">
<img style="height:400px" src="{{ config('site_config.images_url') }}/{{ $thumbnail->Image . '?t=' . time() }}" id="main-thumbnail">
@endif
@endforeach
</div>
@@ -58,7 +58,7 @@
<li class="col-sm-3 col-xs-4">
<a class="thumbnail a_thumbnail {{ $thumbnail->ImageClass }}" style="border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; margin-bottom: -28px;">
<!-- <span class="close">&times;</span> -->
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ minio_url('images/' . $thumbnail->Image) . '?t=' . time() }}"/>
<img class="img img-responsive product-center image-thumbnails" style="height: 59.45px;" src="{{ config('site_config.images_url') }}/{{ $thumbnail->Image . '?t=' . time() }}"/>
</a>
<div class="funkyradio">
<div class="funkyradio-primary">
@@ -200,7 +200,7 @@
<tr id="{{ 'item-' . $thumbnail->Id }}">
<td class="text-center" style="width: 50px"><i class="fa fa-bars"></i></td>
<td><img class="img img-responsive product-center" style="height: 59.45px;" src="{{ minio_url('images/' . $thumbnail->Image) . '?t=' . time() }}"/></td>
<td><img class="img img-responsive product-center" style="height: 59.45px;" src="{{ config('site_config.images_url') }}/{{ $thumbnail->Image . '?t=' . time() }}"/></td>
<td class="text-center">
<!-- <button class="btn btn-default btn-xs btn-edit-clipart" data-id="#"><i class="fa fa-edit"></i></button> -->
<button class="btn btn-default btn-sm btn-delete-item-image" data-id="{{ $thumbnail->Id }}" data-filename="{{ $thumbnail->Image }}" title="Delete Image"><i class="fa fa-trash"></i></button>