current state

This commit is contained in:
2026-02-08 10:42:01 +01:00
parent 0a4372c40d
commit e055af9248
70 changed files with 4882 additions and 330 deletions

View File

@@ -0,0 +1,85 @@
@extends('layouts.legacy')
@section('content')
<div class="container legacy-page">
<div class="page-header-wrap">
<div class="clearfix">
<h2 style="margin:0;display:inline-block">Edit Artwork</h2>
<a class="btn btn-default btn-xs pull-right" href="{{ route('dashboard.artworks.index') }}" style="margin-top:6px">
<i class="fa fa-arrow-left fa-fw"></i> Back to list
</a>
</div>
<div class="text-muted" style="margin-top:6px;font-size:12px">
#{{ $artwork->id }} &middot; {{ $artwork->is_public ? 'Public' : 'Private' }}
</div>
</div>
@if(session('status'))
<div class="alert alert-success" role="status">{{ session('status') }}</div>
@endif
@if($errors->any())
<div class="alert alert-danger" role="alert">
<strong>Please fix the errors below.</strong>
</div>
@endif
<div class="panel panel-default uploads-panel">
<div class="panel-body">
<form method="POST" action="{{ route('dashboard.artworks.update', $artwork->id) }}" enctype="multipart/form-data">
@csrf
@method('PUT')
<div class="row">
<div class="col-md-7">
<div class="form-group @error('title') has-error @enderror">
<label for="title" class="control-label">Title</label>
<input id="title" type="text" name="title" class="form-control" value="{{ old('title', $artwork->title) }}" required>
@error('title')
<span class="help-block">{{ $message }}</span>
@enderror
</div>
<div class="form-group @error('description') has-error @enderror">
<label for="description" class="control-label">Description</label>
<textarea id="description" name="description" class="form-control" rows="8">{{ old('description', $artwork->description) }}</textarea>
@error('description')
<span class="help-block">{{ $message }}</span>
@enderror
</div>
<button type="submit" class="btn btn-success">
<i class="fa fa-save fa-fw"></i> Save Changes
</button>
</div>
<div class="col-md-5">
<label class="control-label">Preview</label>
<div class="thumbnail" style="margin-top:6px">
<img
src="{{ $artwork->thumb_url ?? $artwork->thumb }}"
@if(!empty($artwork->thumb_srcset)) srcset="{{ $artwork->thumb_srcset }}" @endif
class="img-responsive"
alt="{{ $artwork->title }}"
>
</div>
<div class="form-group @error('file') has-error @enderror">
<label for="file" class="control-label">Replace image (optional)</label>
<input id="file" type="file" name="file" class="form-control" accept="image/*">
<p class="help-block">Max 100MB. Images only.</p>
@error('file')
<span class="help-block">{{ $message }}</span>
@enderror
</div>
<p class="text-muted" style="font-size:12px;margin-bottom:0">
Created: {{ optional($artwork->created_at)->format('d.m.Y') }}
</p>
</div>
</div>
</form>
</div>
</div>
</div>
@endsection

View File

@@ -0,0 +1,104 @@
@extends('layouts.legacy')
@section('content')
<div class="container legacy-page">
<div class="page-header-wrap">
<div class="clearfix">
<h2 style="margin:0;display:inline-block">My Artworks</h2>
<span class="text-muted pull-right" style="margin-top:6px">
{{ method_exists($artworks, 'total') ? $artworks->total() : $artworks->count() }} items
</span>
</div>
<div class="text-muted" style="margin-top:6px;font-size:12px">Manage and edit your uploads.</div>
</div>
@if(session('status'))
<div class="alert alert-success" role="status">{{ session('status') }}</div>
@endif
<div class="panel panel-default uploads-panel">
<div class="panel-body">
<div class="table-responsive">
<table class="table table-bordered table-striped table-hover table-advanced" style="margin-bottom:0">
<thead>
<tr>
<th style="width:92px">Preview</th>
<th>Title</th>
<th style="width:120px" class="text-center">Created</th>
<th style="width:90px" class="text-center">Public</th>
<th style="width:95px" class="text-center">Approved</th>
<th style="width:150px" class="text-center">Actions</th>
</tr>
</thead>
<tbody>
@forelse($artworks as $artwork)
<tr>
<td class="text-center">
<a href="{{ route('dashboard.artworks.edit', $artwork->id) }}" title="Edit {{ $artwork->title }}">
<img
src="{{ $artwork->thumb_url ?? $artwork->thumb }}"
@if(!empty($artwork->thumb_srcset)) srcset="{{ $artwork->thumb_srcset }}" @endif
alt="{{ $artwork->title }}"
class="img-thumbnail"
style="width:70px;height:70px;object-fit:cover"
>
</a>
</td>
<td>
<div style="font-weight:700;line-height:1.2">
<a href="{{ route('dashboard.artworks.edit', $artwork->id) }}">{{ $artwork->title }}</a>
</div>
<div class="text-muted" style="font-size:12px">#{{ $artwork->id }}</div>
@if(!empty($artwork->description))
<div class="text-muted" style="margin-top:4px;font-size:12px">
{{ str($artwork->description)->stripTags()->limit(120) }}
</div>
@endif
</td>
<td class="text-center">{{ optional($artwork->created_at)->format('d.m.Y') }}</td>
<td class="text-center">
@if($artwork->is_public)
<span class="label label-success">Yes</span>
@else
<span class="label label-default">No</span>
@endif
</td>
<td class="text-center">
@if($artwork->is_approved)
<span class="label label-primary">Yes</span>
@else
<span class="label label-warning">No</span>
@endif
</td>
<td class="text-center">
<div class="btn-group" role="group" aria-label="Actions">
<a href="{{ route('dashboard.artworks.edit', $artwork->id) }}" class="btn btn-xs btn-default">
<i class="fa fa-pencil fa-fw"></i> Edit
</a>
<form method="POST" action="{{ route('dashboard.artworks.destroy', $artwork->id) }}" style="display:inline-block" onsubmit="return confirm('Delete this artwork?');">
@csrf
@method('DELETE')
<button type="submit" class="btn btn-xs btn-danger">
<i class="fa fa-trash fa-fw"></i> Delete
</button>
</form>
</div>
</td>
</tr>
@empty
<tr>
<td colspan="6">No artworks found.</td>
</tr>
@endforelse
</tbody>
</table>
</div>
</div>
</div>
<div class="paginationMenu text-center">
{{ $artworks->links('pagination::bootstrap-3') }}
</div>
</div>
@endsection

View File

@@ -0,0 +1,18 @@
@extends('layouts.nova')
@section('content')
<div class="bg-slate-900 min-h-screen">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div class="py-8">
<header class="mb-6">
<h1 class="text-3xl font-semibold text-white">Blank</h1>
</header>
<section class="bg-slate-800 rounded-lg p-6 shadow-sm">
<!-- Empty content area for layout testing -->
<p class="text-slate-300">Layout test area add components here.</p>
</section>
</div>
</div>
</div>
@endsection

View File

@@ -1,17 +1,45 @@
<x-app-layout>
<x-slot name="header">
<h2 class="font-semibold text-xl text-gray-800 leading-tight">
{{ __('Dashboard') }}
</h2>
</x-slot>
@extends('layouts.legacy')
<div class="py-12">
<div class="max-w-7xl mx-auto sm:px-6 lg:px-8">
<div class="bg-white overflow-hidden shadow-sm sm:rounded-lg">
<div class="p-6 text-gray-900">
{{ __("You're logged in!") }}
@section('content')
<div class="container">
@php($page_title = 'Dashboard')
<h2>Dashboard</h2>
@if(session('status'))
<div class="alert alert-success" role="status">{{ session('status') }}</div>
@endif
<div class="alert alert-info" role="status">
You're logged in.
</div>
<div class="row">
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">Your content</div>
<div class="panel-body">
<p>
<a class="btn btn-primary" href="{{ route('dashboard.artworks.index') }}">
<i class="fa fa-picture-o fa-fw"></i> Manage My Artworks
</a>
</p>
</div>
</div>
</div>
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">Account</div>
<div class="panel-body">
<p>
<a class="btn btn-default" href="{{ route('profile.edit') }}">
<i class="fa fa-user fa-fw"></i> Edit Profile
</a>
</p>
</div>
</div>
</div>
</div>
</x-app-layout>
</div>
@endsection

View File

@@ -0,0 +1,177 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>{{ $page_title ?? 'Skinbase' }}</title>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="{{ $page_meta_description ?? '' }}">
<meta name="keywords" content="{{ $page_meta_keywords ?? '' }}">
<!-- Icons (kept for now to preserve current visual output) -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css" />
<link rel="shortcut icon" href="/favicon.ico">
@vite(['resources/css/app.css','resources/scss/nova.scss','resources/js/nova.js'])
@stack('head')
</head>
<body class="bg-neutral-950 text-neutral-200 min-h-screen">
<header class="fixed top-0 left-0 right-0 h-16 bg-neutral-900 border-b border-neutral-800 z-50">
<div class="h-full px-5 flex items-center justify-between gap-4">
<!-- LEFT -->
<div class="flex items-center gap-4">
<button type="button" class="md:hidden text-neutral-200 hover:text-sky-400" data-mobile-toggle aria-controls="mobileMenu" aria-expanded="false" aria-label="Toggle menu">
<i class="fas fa-bars text-lg"></i>
</button>
<a href="/" class="text-sky-400 font-semibold text-xl">Skinbase</a>
</div>
<!-- CENTER SEARCH (hidden on mobile) -->
<div class="hidden md:block flex-1 max-w-xl">
<form action="/search" method="get" class="relative">
<input type="search" name="q" value="{{ request('q') }}" placeholder="Search tags, artworks, artists…"
class="w-full bg-neutral-800 border border-neutral-700 rounded-lg py-2.5 pl-3.5 pr-10 text-white outline-none focus:border-sky-400">
<i class="fas fa-search absolute right-3.5 top-1/2 -translate-y-1/2 text-neutral-400"></i>
</form>
</div>
<!-- RIGHT -->
<div class="flex items-center gap-4 sm:gap-5">
@guest
<div class="hidden sm:flex items-center gap-4 text-sm">
<a href="/signup" class="hover:text-sky-400">Join</a>
<a href="/login" class="hover:text-sky-400">Sign in</a>
</div>
@endguest
@auth
@php
$userId = auth()->id();
$novaCounts = $novaCounts ?? [];
$favCount = $novaCounts['favourites'] ?? null;
$msgCount = $novaCounts['messages'] ?? null;
$noticeCount = $novaCounts['notifications'] ?? null;
@endphp
<a href="/upload" class="relative text-neutral-200 hover:text-sky-400" title="Upload">
<i class="fas fa-upload"></i>
</a>
<a href="/favourites/{{ $userId }}/{{ auth()->user()->username ?? '' }}" class="relative text-neutral-200 hover:text-sky-400" title="Favourites">
<i class="fas fa-heart"></i>
@if($favCount)
<span class="absolute -top-1 -right-2 bg-red-500 text-white text-xs px-1.5 py-0.5 rounded-full leading-none">{{ $favCount }}</span>
@endif
</a>
<a href="/messages" class="relative text-neutral-200 hover:text-sky-400" title="Messages">
<i class="fas fa-envelope"></i>
@if($msgCount)
<span class="absolute -top-1 -right-2 bg-red-500 text-white text-xs px-1.5 py-0.5 rounded-full leading-none">{{ $msgCount }}</span>
@endif
</a>
<a href="/notices" class="relative text-neutral-200 hover:text-sky-400" title="Notifications">
<i class="fas fa-bell"></i>
@if($noticeCount)
<span class="absolute -top-1 -right-2 bg-red-500 text-white text-xs px-1.5 py-0.5 rounded-full leading-none">{{ $noticeCount }}</span>
@endif
</a>
@endauth
<!-- BROWSE DROPDOWN -->
<div class="relative" data-dropdown>
<button type="button" class="text-neutral-200 hover:text-sky-400" data-dropdown-toggle aria-expanded="false" aria-label="Browse">
<i class="fas fa-layer-group"></i>
</button>
<div class="hidden absolute top-[120%] right-0 bg-neutral-800 border border-neutral-700 rounded-lg min-w-[200px] overflow-visible shadow-lg" data-dropdown-menu>
<div class="rounded-lg overflow-hidden">
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/browse">All Artworks</a>
<!-- Submenu: Types -->
<div class="relative group" data-submenu>
<button type="button" class="w-full text-left px-3.5 py-2.5 text-sm hover:bg-neutral-700 flex items-center justify-between gap-3" data-submenu-toggle aria-expanded="false">
<span>Types</span>
<i class="fas fa-chevron-right text-[11px] opacity-70"></i>
</button>
<div class="hidden group-hover:block absolute left-full top-0 ml-1 bg-neutral-800 border border-neutral-700 rounded-lg min-w-[200px] shadow-lg z-50" data-submenu-menu>
<div class="rounded-lg overflow-hidden">
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/photography">Photography</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/wallpapers">Wallpapers</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/skins">Skins</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/other">Other</a>
</div>
</div>
</div>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/featured-artworks">Featured</a>
</div>
</div>
</div>
<a href="/forum" class="hidden sm:inline text-sm hover:text-sky-400">Forum</a>
<!-- USER DROPDOWN -->
<div class="relative" data-dropdown>
<button type="button" class="text-neutral-200 hover:text-sky-400" data-dropdown-toggle aria-expanded="false" aria-label="User">
<i class="fas fa-user"></i>
</button>
<div class="hidden absolute top-[120%] right-0 bg-neutral-800 border border-neutral-700 rounded-lg min-w-[220px] overflow-hidden shadow-lg" data-dropdown-menu>
@auth
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/upload">Upload</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="{{ route('dashboard.artworks.index') }}">Edit Artworks</a>
<div class="h-px bg-neutral-700"></div>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/statistics">Statistics</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/mybuddies.php">My Followers</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/buddies.php">Who I Follow</a>
<div class="h-px bg-neutral-700"></div>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/recieved-comments">Received Comments</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/favourites/{{ $userId }}/{{ auth()->user()->username ?? '' }}">My Favourites</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/gallery/{{ $userId }}/{{ auth()->user()->username ?? '' }}">My Gallery</a>
<div class="h-px bg-neutral-700"></div>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/user">Edit Profile</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/profile/{{ $userId }}/{{ auth()->user()->username ?? '' }}">View Profile</a>
<form method="POST" action="/logout" class="m-0">
@csrf
<button type="submit" class="w-full text-left px-3.5 py-2.5 text-sm hover:bg-neutral-700">Logout</button>
</form>
@else
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/signup">Join</a>
<a class="block px-3.5 py-2.5 text-sm hover:bg-neutral-700" href="/login">Sign in</a>
@endauth
</div>
</div>
</div>
</div>
</header>
<!-- MOBILE MENU -->
<div class="hidden fixed top-16 left-0 right-0 bg-neutral-950 border-b border-neutral-800 p-4" id="mobileMenu">
<div class="space-y-2">
@guest
<a class="block py-2 border-b border-neutral-900" href="/signup">Join</a>
<a class="block py-2 border-b border-neutral-900" href="/login">Sign in</a>
@endguest
<a class="block py-2 border-b border-neutral-900" href="/browse">All Artworks</a>
<a class="block py-2 border-b border-neutral-900" href="/photography">Photography</a>
<a class="block py-2 border-b border-neutral-900" href="/wallpapers">Wallpapers</a>
<a class="block py-2 border-b border-neutral-900" href="/skins">Skins</a>
<a class="block py-2 border-b border-neutral-900" href="/other">Other</a>
<a class="block py-2 border-b border-neutral-900" href="/featured-artworks">Featured</a>
<a class="block py-2 border-b border-neutral-900" href="/forum">Forum</a>
<a class="block py-2 border-b border-neutral-900" href="/profile">Profile</a>
<a class="block py-2" href="/settings">Settings</a>
</div>
</div>
<main class="pt-20">
@yield('content')
</main>
</body>
</html>

View File

@@ -0,0 +1,11 @@
<footer id="mainFooter">
<p>&copy; 2000 - {{ date('Y') }} by SkinBase.org. All artwork copyrighted to its Author. (Dragon II Edition)</p>
<div class="footer_links">
<a href="/bug-report" title="Inform us about any bugs you found">Bug report</a> :
<a href="/rss-feeds" title="Skinbase RSS Feeds about new Artworks">RSS Feeds</a> :
<a href="/faq" title="Frequently Asked Questions">FAQ</a> :
<a href="/rules" title="Rules and Guidelines">Rules and Guidelines</a> :
<a href="/staff" title="Who is actually behind Skinbase">Staff</a> :
<a href="/privacy" title="Privacy Policy">Privacy Policy</a>
</div>
</footer>

View File

@@ -0,0 +1,214 @@
<nav class="nb-navbar" role="navigation">
<div class="nb-container">
<div class="nb-header">
<button type="button" class="nb-toggle" aria-expanded="false" aria-controls="nb-main-nav">
<span class="nb-sr">Toggle navigation</span>
<span class="nb-bar"></span>
<span class="nb-bar"></span>
<span class="nb-bar"></span>
</button>
<a href="/" class="nb-brand" title="SkinBase">SkinBase</a>
</div>
<div id="nb-main-nav" class="nb-collapse">
<form class="nb-search" action="/search" method="get" id="search_box">
<input type="text" name="q" value="{{ request('q') }}" placeholder="Search">
<input type="hidden" name="group" value="all">
<button type="submit" aria-label="Search"><svg class="icon icon-search" viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#icon-search"></use></svg></button>
</form>
<ul class="nb-nav">
<li class="nb-dropdown nb-mega">
<button class="nb-dropbtn"> <svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#icon-cloud"></use></svg> Browse <svg class="icon icon-caret" viewBox="0 0 24 24"><use xlink:href="#icon-caret"></use></svg></button>
<div class="nb-mega-panel" aria-hidden="true">
<div class="nb-mega-row">
<div class="nb-mega-col">
<div class="nb-mega-title">Browse Artworks</div>
<ul>
<li><a href="/browse">All Artworks</a></li>
<li><a href="/photography">Photography</a></li>
<li><a href="/wallpapers">Wallpapers</a></li>
<li><a href="/skins">Skins</a></li>
<li><a href="/other">Other</a></li>
<li><a href="/featured-artworks">Featured</a></li>
</ul>
</div>
<div class="nb-mega-col">
<div class="nb-mega-title">View</div>
<ul>
<li><a href="/forum">Forum</a></li>
<li><a href="/chat">Chat</a></li>
<li><a href="/browse-categories">Categories</a></li>
<li><a href="/latest-artworks">Latest Uploads</a></li>
<li><a href="/daily-uploads">Recent Uploads</a></li>
<li><a href="/today-in-history">Today in History</a></li>
</ul>
</div>
<div class="nb-mega-col">
<div class="nb-mega-title">Authors</div>
<ul>
<li><a href="/interviews">Interviews</a></li>
<li><a href="/Members/MembersPhotos/545">Members Photos</a></li>
<li><a href="/top-authors">Top Authors</a></li>
<li><a href="/latest-comments">Latest Comments</a></li>
<li><a href="/monthly-commentators">Monthly Top Comments</a></li>
</ul>
</div>
<div class="nb-mega-col">
<div class="nb-mega-title">Statistics</div>
<ul>
<li><a href="/today-downloads">Today Downloads</a></li>
<li><a href="/top-favourites">Top Favourites</a></li>
</ul>
</div>
</div>
</div>
</li>
<li class="nb-dropdown">
<button class="nb-dropbtn"> <svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#icon-list"></use></svg> Categories <svg class="icon icon-caret" viewBox="0 0 24 24"><use xlink:href="#icon-caret"></use></svg></button>
<div class="nb-dropdown-panel" aria-hidden="true">
<ul>
<li><a href="/photography">Photography</a></li>
<li><a href="/wallpapers">Wallpapers</a></li>
<li><a href="/skins">Skins</a></li>
<li><a href="/other">Others</a></li>
<li class="nb-divider" role="separator"></li>
<li><a href="/browse-categories" class="btn_category">Categories List</a></li>
</ul>
</div>
</li>
</ul>
<ul class="nb-nav nb-right">
@auth
@php
$userId = auth()->id();
try {
$uploadCount = \Illuminate\Support\Facades\DB::table('artworks')->where('user_id', $userId)->count();
} catch (\Throwable $e) {
$uploadCount = 0;
}
try {
$favCount = \Illuminate\Support\Facades\DB::table('favourites')->where('user_id', $userId)->count();
} catch (\Throwable $e) {
$favCount = 0;
}
try {
$msgCount = \Illuminate\Support\Facades\DB::table('messages')->where('reciever_id', $userId)->whereNull('read_at')->count();
} catch (\Throwable $e) {
$msgCount = 0;
}
try {
$noticeCount = \Illuminate\Support\Facades\DB::table('notification')->where('user_id', $userId)->where('new', 1)->count();
} catch (\Throwable $e) {
$noticeCount = 0;
}
try {
$profile = \Illuminate\Support\Facades\DB::table('user_profiles')->where('user_id', $userId)->first();
$avatar = $profile->avatar ?? null;
} catch (\Throwable $e) {
$avatar = null;
}
$displayName = auth()->user()->name ?: (auth()->user()->username ?? '');
@endphp
<li class="nb-notice">
<a href="/upload" title="Upload new Artwork"><svg class="icon" viewBox="0 0 24 24"><use xlink:href="#icon-upload"></use></svg><br> {{ $uploadCount }}</a>
</li>
<li class="nb-notice">
<a href="/favourites/{{ $userId }}/{{ auth()->user()->username ?? '' }}" title="Your Favourite Artworks"><svg class="icon" viewBox="0 0 24 24"><use xlink:href="#icon-heart"></use></svg><br> {{ $favCount }}</a>
</li>
<li class="nb-notice">
<a href="/messages" title="Messages"><svg class="icon" viewBox="0 0 24 24"><use xlink:href="#icon-mail"></use></svg><br> {{ $msgCount }}</a>
</li>
<li class="nb-notice">
<a href="/notices" title="Notices"><svg class="icon" viewBox="0 0 24 24"><use xlink:href="#icon-bell"></use></svg><br> {{ $noticeCount }}</a>
</li>
<li class="nb-dropdown nb-user">
<button class="nb-dropbtn">
@if($avatar)
<img src="/storage/{{ ltrim($avatar, '/') }}" alt="{{ $displayName }}" width="20">&nbsp;&nbsp;
@endif
<span class="username">{{ $displayName }}</span>
<svg class="icon icon-caret" viewBox="0 0 24 24"><use xlink:href="#icon-caret"></use></svg>
</button>
<div class="nb-dropdown-panel">
<ul>
<li><a href="/upload">Upload</a></li>
<li><a href="{{ route('dashboard.artworks.index') }}">Edit Artworks</a></li>
<li class="nb-divider" role="presentation"></li>
<li><a href="/statistics">Statistics</a></li>
<li><a href="/mybuddies.php">My Followes</a></li>
<li><a href="/buddies.php">Who follows me</a></li>
<li class="nb-divider" role="presentation"></li>
<li><a href="/recieved-comments">Received Comments</a></li>
<li><a href="/favourites/{{ $userId }}/{{ auth()->user()->username ?? '' }}">My Favourites</a></li>
<li><a href="/gallery/{{ $userId }}/{{ auth()->user()->username ?? '' }}">My Gallery</a></li>
<li class="nb-divider" role="presentation"></li>
<li><a href="/user">Edit Profile</a></li>
<li><a href="/profile/{{ $userId }}/{{ auth()->user()->username ?? '' }}">View My Profile</a></li>
<li class="nb-dropdown-footer clearfix">
<form method="POST" action="/logout" style="margin:0;">
@csrf
<button type="submit" class="nb-btn-link">Logout</button>
</form>
</li>
</ul>
</div>
</li>
<li class="nb-chat">
<button class="nb-chat-toggle" title="Chat"><svg class="icon" viewBox="0 0 24 24"><use xlink:href="#icon-chat"></use></svg></button>
</li>
@else
<li class="nb-link"><a href="/signup" title="Signup for a new account">Join</a></li>
<li class="nb-link"><a href="/login" title="Login to Skinbase account">Sign in</a></li>
@endauth
</ul>
</div>
</div>
<!-- SVG icons -->
<svg style="display:none;" aria-hidden="true">
<symbol id="icon-search" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0016 9.5 6.5 6.5 0 109.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zM10 14a4 4 0 110-8 4 4 0 010 8z"/></symbol>
<symbol id="icon-cloud" viewBox="0 0 24 24"><path d="M19.36 10.46A7 7 0 005 9a5 5 0 00.11 10H19a4 4 0 00.36-8.54z"/></symbol>
<symbol id="icon-caret" viewBox="0 0 24 24"><path d="M7 10l5 5 5-5z"/></symbol>
<symbol id="icon-list" viewBox="0 0 24 24"><path d="M3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zm0-8h14V7H7v2z"/></symbol>
<symbol id="icon-upload" viewBox="0 0 24 24"><path d="M19 15v4H5v-4H3v4a2 2 0 002 2h14a2 2 0 002-2v-4h-2zM11 19h2V9h3l-4-5-4 5h3z"/></symbol>
<symbol id="icon-heart" viewBox="0 0 24 24"><path d="M12 21s-7-4.35-9-7.03C-1.2 9.9 4.7 4 8.5 7.5 11 9.7 12 11 12 11s1-1.3 3.5-3.5C19.3 4 25.2 9.9 21 13.97 19 16.65 12 21 12 21z"/></symbol>
<symbol id="icon-mail" viewBox="0 0 24 24"><path d="M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z"/></symbol>
<symbol id="icon-bell" viewBox="0 0 24 24"><path d="M12 22a2 2 0 002-2H10a2 2 0 002 2zm6-6V10c0-3.07-1.63-5.64-4.5-6.32V3a1.5 1.5 0 10-3 0v.68C7.63 4.36 6 6.92 6 10v6l-2 2v1h16v-1l-2-2z"/></symbol>
<symbol id="icon-chat" viewBox="0 0 24 24"><path d="M21 6h-2v9H7l-4 4V6a2 2 0 012-2h16a2 2 0 012 2z"/></symbol>
</svg>
</nav>
<!-- MOBILE MENU (hidden on desktop) -->
<div id="nb-mobile-menu" class="nb-mobile-menu" aria-hidden="true">
<div class="nb-mobile-inner">
@auth
<a href="/upload">Upload</a>
<a href="/favourites/{{ auth()->id() }}/{{ auth()->user()->username ?? '' }}">Favourites</a>
<a href="/messages">Messages</a>
<a href="/notices">Notices</a>
@else
<a href="/signup">Join</a>
<a href="/login">Sign in</a>
@endauth
<hr class="nb-mobile-sep">
<a href="/browse">All Artworks</a>
<a href="/photography">Photography</a>
<a href="/wallpapers">Wallpapers</a>
<a href="/skins">Skins</a>
<a href="/other">Other</a>
<a href="/featured-artworks">Featured</a>
<hr class="nb-mobile-sep">
<a href="/forum">Forum</a>
<a href="/profile">Profile</a>
<a href="/settings">Settings</a>
</div>
</div>

View File

@@ -1,16 +1,32 @@
<div class="photo_frame" itemscope itemtype="http://schema.org/Photograph">
<a href="{{ $art->url ?? '#' }}" itemprop="url">
@php
$img_src = $art->thumb ?? '';
$img_srcset = $art->thumb_srcset ?? '';
$base_height = 360;
$orig_width = (int) ($art->width ?? 0);
$orig_height = (int) ($art->height ?? 0);
$img_height = $base_height;
$img_width = ($orig_width > 0 && $orig_height > 0)
? (int) round($orig_width * ($base_height / $orig_height))
: 600;
@endphp
<article class="artwork" itemscope itemtype="http://schema.org/Photograph">
<a href="{{ $art->url ?? '#' }}" itemprop="url">
<div class="ribbon gid_{{ $art->gid_num }}" title="{{ $art->category_name ?? '' }}" itemprop="genre">
<span>{{ $art->category_name ?? '' }}</span>
</div>
@php
$img_src = $art->thumb ?? '';
$img_srcset = $art->thumb_srcset ?? '';
@endphp
<img src="{{ $img_src }}" srcset="{{ $img_srcset }}" loading="lazy" decoding="async" alt="{{ e($art->name) }}" class="img-responsive" itemprop="thumbnailUrl">
<img
src="{{ $img_src }}"
srcset="{{ $img_srcset }}"
loading="lazy"
decoding="async"
alt="{{ e($art->name) }}"
width="{{ $img_width }}"
height="{{ $img_height }}"
class="img-responsive"
itemprop="thumbnailUrl"
>
<div class="details">
<div class="info" itemprop="author">
@@ -21,8 +37,5 @@
{{ $art->name }}
</div>
</div>
</a>
{{-- debug thumb links removed to avoid textual output beneath thumbnails --}}
</div>
</article>

View File

@@ -0,0 +1,44 @@
@extends('layouts.legacy')
@section('content')
<div class="container-fluid legacy-page">
<div class="effect2 page-header-wrap">
<header class="page-heading">
<h1 class="page-header">{{ $page_title ?? 'Followers' }}</h1>
<p>Members who follow you</p>
</header>
</div>
<div class="container-fluid">
<div class="icon-grid">
@forelse($followers as $f)
@php
$icon = $f->icon ?? 'default.jpg';
$uname = $f->uname ?? 'Unknown';
$followerId = $f->user_id ?? null;
@endphp
<div class="icon-flex">
<div>
<a href="/profile/{{ $followerId }}/{{ Str::slug($uname) }}">
<h4>{{ $uname }}</h4>
</a>
</div>
<div>
<a href="/profile/{{ $followerId }}/{{ Str::slug($uname) }}">
<img src="/avatar/{{ $followerId }}/{{ rawurlencode($icon) }}" alt="{{ $uname }}">
</a>
</div>
</div>
@empty
<p>No followers yet.</p>
@endforelse
</div>
@if(method_exists($followers, 'links'))
<div class="mt-3">{{ $followers->links() }}</div>
@endif
</div>
</div>
@endsection

View File

@@ -5,74 +5,106 @@
@endphp
@section('content')
<div class="container-fluid legacy-page category-wrapper">
<div class="container-fluid legacy-page">
@php Banner::ShowResponsiveAd(); @endphp
<div id="category-artworks">
<div class="effect2 page-header-wrap">
<header class="page-heading">
<div class="category-display"><i class="fa fa-bars fa-fw"></i></div>
<div class="category-wrapper">
<div class="row">
<main id="category-artworks" class="col-md-9">
<div class="effect2 page-header-wrap">
<header class="page-heading">
<div class="category-display"><i class="fa fa-bars fa-fw"></i></div>
<div id="location_bar">
<a href="/{{ $contentType->slug }}" title="{{ $contentType->name }}">{{ $contentType->name }}</a>
@foreach ($category->breadcrumbs as $crumb)
&raquo; <a href="{{ $crumb->url }}" title="{{ $crumb->name }}">{{ $crumb->name }}</a>
@endforeach
:
</div>
<div id="location_bar">
<a href="/{{ $contentType->slug }}" title="{{ $contentType->name }}">{{ $contentType->name }}</a>
@foreach ($category->breadcrumbs as $crumb)
&raquo; <a href="{{ $crumb->url }}" title="{{ $crumb->name }}">{{ $crumb->name }}</a>
@endforeach
:
</div>
<h1 class="page-header">{{ $category->name }}</h1>
<p style="clear:both">{!! $category->description ?? ($contentType->name . ' artworks on Skinbase.') !!}</p>
</header>
</div>
<h1 class="page-header">{{ $category->name }}</h1>
<p style="clear:both">{!! $category->description ?? ($contentType->name . ' artworks on Skinbase.') !!}</p>
</header>
</div> <!-- end .effect2 -->
@if ($artworks->count())
<div class="container_photo gallery_box">
@foreach ($artworks as $art)
@include('legacy._artwork_card', ['art' => $art])
@endforeach
</div>
@else
<div class="panel panel-default effect2">
<div class="panel-heading"><strong>No Artworks Yet</strong></div>
<div class="panel-body">
<p>Once uploads arrive they will appear here. Check back soon.</p>
</div>
</div>
@endif
@if ($artworks->count())
<section id="gallery" class="gallery" aria-live="polite">
@foreach ($artworks as $art)
@include('legacy._artwork_card', ['art' => $art])
@endforeach
</section>
@else
<div class="panel panel-default effect2">
<div class="panel-heading"><strong>No Artworks Yet</strong></div>
<div class="panel-body">
<p>Once uploads arrive they will appear here. Check back soon.</p>
</div>
</div>
@endif
<div class="paginationMenu text-center">
{{ $artworks->withQueryString()->links('pagination::bootstrap-4') }}
</div>
</div>
<div class="paginationMenu text-center">
{{ $artworks->withQueryString()->links('pagination::bootstrap-4') }}
</div> <!-- end .paginationMenu -->
</main> <!-- end #category-artworks -->
<div id="category-list">
<div id="artwork_subcategories">
<div class="category-toggle"><i class="fa fa-bars fa-fw"></i></div>
<aside id="category-list" class="col-md-3">
<div id="artwork_subcategories">
<div class="category-toggle"><i class="fa fa-bars fa-fw"></i></div>
<h5 class="browse_categories">Main Categories:</h5>
<ul>
@foreach ($rootCategories as $root)
<li>
<a href="{{ $root->url }}" title="{{ $root->name }}"><i class="fa fa-photo fa-fw"></i> {{ $root->name }}</a>
</li>
@endforeach
</ul>
<h5 class="browse_categories">Main Categories:</h5>
<ul>
@foreach ($rootCategories as $root)
<li>
<a href="{{ $root->url }}" title="{{ $root->name }}"><i class="fa fa-photo fa-fw"></i> {{ $root->name }}</a>
</li>
@endforeach
</ul>
<h5 class="browse_categories">Browse Subcategories:</h5>
<ul class="scrollContent" data-mcs-theme="dark">
@foreach ($subcategories as $sub)
@php $selected = $sub->id === $category->id ? 'selected_group' : ''; @endphp
<li class="subgroup {{ $selected }}">
<a href="{{ $sub->url }}">{{ $sub->name }}</a>
</li>
@endforeach
</ul>
</div>
</div>
</div>
<h5 class="browse_categories">Browse Subcategories:</h5>
<ul class="scrollContent" data-mcs-theme="dark">
@foreach ($subcategories as $sub)
@php $selected = $sub->id === $category->id ? 'selected_group' : ''; @endphp
<li class="subgroup {{ $selected }}">
<a href="{{ $sub->url }}">{{ $sub->name }}</a>
</li>
@endforeach
</ul>
</div> <!-- end #artwork_subcategories -->
</aside> <!-- end #category-list -->
</div> <!-- end .row -->
</div> <!-- end .category-wrapper -->
</div> <!-- end .legacy-page -->
@endsection
@push('scripts')
<script src="/js/legacy-gallery-init.js"></script>
@push('styles')
<style>
.gallery {
columns: 5 260px;
column-gap: 16px;
}
.artwork {
break-inside: avoid;
margin-bottom: 16px;
}
@media (max-width: 992px) {
.gallery {
columns: 3 220px;
}
}
@media (max-width: 768px) {
.gallery {
columns: 2 180px;
}
}
@media (max-width: 576px) {
.gallery {
columns: 1 100%;
}
}
</style>
@endpush

View File

@@ -0,0 +1,73 @@
@extends('layouts.legacy')
@section('content')
<div class="container legacy-page">
<div class="page-header-wrap">
<h1 class="page-header">Favourites</h1>
<p class="text-muted">List of uploaded Artworks which were added to user's favourites list</p>
</div>
@if(session('status'))
<div class="alert alert-success">{{ session('status') }}</div>
@endif
<table class="table table-striped">
<thead>
<tr>
<th>Thumb</th>
<th>Name</th>
<th>Author</th>
<th>Date</th>
<th>Dls</th>
<th>Views</th>
<th>Zoom</th>
<th>Rating</th>
</tr>
</thead>
<tbody>
@foreach($results as $ar)
@php
$artId = (int)($ar->id ?? 0);
$nid = (int)($artId / 100);
$picture = rawurlencode($ar->picture ?? '');
@endphp
<tr>
<td style="width:80px;">
<a href="/art/{{ $artId }}/{{ $ar->slug }}"><img src="/files/archive/shots/{{ $nid }}/{{ $picture }}" height="60" alt="{{ $ar->name }}"></a>
</td>
<td>
@if(auth()->check() && auth()->id() == ($ar->user_id ?? null))
<form method="POST" action="{{ route('legacy.favourites.delete', ['userId' => auth()->id(), 'artworkId' => $artId]) }}" style="display:inline" onsubmit="return confirm('Really Remove From Favourites: {{ addslashes($ar->name ?? '') }}');">
@csrf
<button type="submit" class="btn btn-link"><img src="/gfx/icon_delete.gif" alt="Delete"></button>
</form>
@endif
<a href="/art/{{ $artId }}/{{ $ar->slug }}">{{ $ar->name }}</a>
</td>
<td><a href="/profile.php?uname={{ urlencode($ar->uname ?? '') }}">{{ $ar->uname ?? '' }}</a></td>
<td>{{ is_string($ar->datum) ? date('d.m.Y', strtotime($ar->datum)) : '' }}</td>
<td>{{ (int)($ar->dls ?? 0) }}</td>
<td>{{ (int)($ar->views ?? 0) }}</td>
<td>{{ e($ar->zoom ?? '') }}</td>
<td>{{ e($ar->rating ?? '') }}</td>
</tr>
@endforeach
</tbody>
</table>
{{-- Simple pagination controls --}}
@php
$pages = (int) ceil($total / $hits);
@endphp
@if($pages > 1)
<nav>
<ul class="pagination">
@for($i=1;$i<=$pages;$i++)
<li class="{{ $i == $page ? 'active' : '' }}"><a href="{{ route('legacy.favourites', ['id' => $user_id, 'page' => $i]) }}">{{ $i }}</a></li>
@endfor
</ul>
</nav>
@endif
</div>
@endsection

View File

@@ -0,0 +1,60 @@
@extends('layouts.legacy')
@section('content')
<div class="container-fluid legacy-page">
<div class="effect2 page-header-wrap">
<header class="page-heading">
<h1 class="page-header">Gallery: {{ $user->uname ?? $user->name ?? 'User' }}</h1>
<p>{{ $user->real_name ?? '' }}</p>
</header>
</div>
<div class="row">
<div class="col-md-8">
<div class="panel panel-default effect2">
<div class="panel-heading"><strong>User Gallery</strong></div>
<div class="panel-body">
<div class="gallery-grid">
@foreach($artworks as $art)
<div class="thumb-card effect2">
<a href="/art/{{ $art->id }}/{{ Str::slug($art->name ?? '') }}" class="thumb-link">
<img src="{{ $art->thumb }}" srcset="{{ $art->thumb_srcset }}" alt="{{ $art->name }}" class="img-responsive" loading="lazy" decoding="async">
</a>
<div class="thumb-meta">
<div class="thumb-title">{{ $art->name }}</div>
</div>
</div>
@endforeach
</div>
</div>
</div>
</div>
<div class="col-md-4">
<div class="panel panel-default effect2">
<div class="panel-heading"><strong>User</strong></div>
<div class="panel-body">
<img src="/avatar/{{ (int)($user->user_id ?? $user->id) }}/{{ rawurlencode($user->icon ?? '') }}" class="img-responsive" style="max-width:120px;" alt="{{ $user->uname ?? $user->name }}">
<h3>{{ $user->uname ?? $user->name }}</h3>
<p>{{ $user->about_me ?? '' }}</p>
</div>
</div>
</div>
</div>
{{-- Simple pagination controls like legacy site --}}
@php
$pages = (int) ceil($total / $hits);
@endphp
@if($pages > 1)
<nav>
<ul class="pagination">
@for($i=1;$i<=$pages;$i++)
<li class="{{ $i == $page ? 'active' : '' }}"><a href="{{ url('/gallery/'.$user->id.'?page='.$i) }}">{{ $i }}</a></li>
@endfor
</ul>
</nav>
@endif
</div>
@endsection

View File

@@ -80,7 +80,7 @@
<br/><br/>
@if(!empty($ar->username))
@php $username = DB::connection('legacy')->table('users')->where('uname', $ar->username)->value('uname'); @endphp
@php $username = DB::table('users')->where('uname', $ar->username)->value('uname'); @endphp
<div class="interviewGuy">{{ $username }} Gallery (random order):</div><br/>
@foreach($artworks as $artwork)
@php $nid = (int)($artwork->id / 100); @endphp

View File

@@ -0,0 +1,56 @@
@extends('layouts.legacy')
@section('content')
<div class="container-fluid legacy-page">
<div class="effect2 page-header-wrap">
<header class="page-heading">
<h1 class="page-header">{{ $page_title ?? 'My Buddies' }}</h1>
<p>List of members you are following</p>
</header>
</div>
<div class="container-fluid">
<div class="icon-grid">
@forelse($buddies as $b)
@php
$icon = $b->icon ?? 'default.jpg';
$uname = $b->uname ?? 'Unknown';
$friendId = $b->friend_id ?? $b->friendId ?? null;
@endphp
<div class="icon-flex">
<div>
<a href="/profile/{{ $friendId }}/{{ Str::slug($uname) }}">
<h4>{{ $uname }}</h4>
</a>
</div>
<div>
<a href="/profile/{{ $friendId }}/{{ Str::slug($uname) }}">
<img src="/avatar/{{ $friendId }}/{{ rawurlencode($icon) }}" alt="{{ $uname }}">
</a>
</div>
@if(auth()->check() && auth()->id() == ($b->user_id ?? null))
<div>
<form method="POST" action="{{ route('legacy.mybuddies.delete', ['id' => $b->id]) }}" onsubmit="return confirm('Really Remove From Friends List: {{ addslashes($uname) }}?');">
@csrf
@method('DELETE')
<button class="btn btn-link" type="submit"><img src="/gfx/icon_delete.gif" alt="remove"></button>
</form>
</div>
@endif
</div>
@empty
<p>No buddies yet.</p>
@endforelse
</div>
@if(method_exists($buddies, 'links'))
<div class="mt-3">{{ $buddies->links() }}</div>
@endif
</div>
</div>
@endsection

View File

@@ -0,0 +1,55 @@
@extends('layouts.legacy')
@section('content')
<div class="container-fluid legacy-page">
@php \App\Banner::ShowResponsiveAd(); @endphp
<div class="effect2 page-header-wrap">
<header class="page-heading">
<h1 class="page-header">{{ $page_title }}</h1>
<p style="clear:both">{!! $tidy ?? '' !!}</p>
</header>
</div>
<div class="container_photo gallery_box">
<div class="grid-sizer"></div>
@foreach($artworks as $art)
@include('legacy._artwork_card', ['art' => $art])
@endforeach
</div>
<div class="paginationMenu text-center">
{{ method_exists($artworks, 'withQueryString') ? $artworks->withQueryString()->links() : '' }}
</div>
@if($subcategories && $subcategories->count())
<div id="category-list">
<div id="artwork_subcategories">
<div class="category-toggle"><i class="fa fa-bars fa-fw"></i></div>
<h5 class="browse_categories">Main Categories:</h5>
<ul>
<li><a href="/photography"><i class="fa fa-photo fa-fw"></i> Photography</a></li>
<li><a href="/wallpapers"><i class="fa fa-photo fa-fw"></i> Wallpapers</a></li>
<li><a href="/skins"><i class="fa fa-photo fa-fw"></i> Skins</a></li>
<li><a href="/other"><i class="fa fa-photo fa-fw"></i> Other</a></li>
</ul>
<h5 class="browse_categories">Browse Subcategories:</h5>
<ul class="scrollContent" data-mcs-theme="dark">
@foreach($subcategories as $skupina)
@php
$slug = \Illuminate\Support\Str::slug($skupina->category_name);
$ctype = strtolower($group);
$addit = (isset($id) && $skupina->category_id == $id) ? 'selected_group' : '' ;
@endphp
<li class="subgroup {{ $addit }}">
<a href="/{{ $ctype }}/{{ $slug }}">{{ $skupina->category_name }}</a>
</li>
@endforeach
</ul>
</div>
</div>
@endif
</div>
@endsection

View File

@@ -0,0 +1,63 @@
@extends('layouts.legacy')
@section('content')
<div class="container-fluid legacy-page">
<div class="effect2 page-header-wrap">
<header class="page-heading">
<h1 class="page-header">Received Comments</h1>
<p>List of comments left on your uploaded artworks.</p>
</header>
</div>
<div class="masonry">
@foreach($comments as $comment)
@php
$author = $comment->user;
$art = $comment->artwork;
$created = optional($comment->created_at);
@endphp
<div class="masonry_item col-sm-6 col-md-4">
<div class="comment_box effect3">
<div class="cb_image">
<a href="/profile/{{ (int)($author->id ?? $author->user_id) }}/{{ rawurlencode($author->name ?? $author->uname ?? '') }}">
<img src="/avatar/{{ (int)($author->id ?? $author->user_id) }}/{{ rawurlencode($author->icon ?? '') }}" width="50" height="50" class="comment_avatar" alt="{{ $author->name ?? $author->uname ?? '' }}">
</a>
</div>
<div class="bubble_comment panel panel-skinbase">
<div class="panel-heading">
<div class="pull-right">{{ $created ? $created->diffForHumans() . ' ago' : '' }}</div>
<h5 class="panel-title">Comment by: <a href="/profile/{{ (int)($author->id ?? $author->user_id) }}/{{ rawurlencode($author->name ?? $author->uname ?? '') }}">{{ $author->name ?? $author->uname ?? '' }}</a></h5>
</div>
<div class="panel-body">
<div class="comment_box_image">
@if($art)
<a href="/art/{{ $art->id }}/{{ Str::slug($art->name ?? '') }}">
<img src="{{ $art->thumb }}" class="img-thumbnail img-responsive" alt="{{ $art->name }}">
</a>
@endif
</div>
<div class="comment_text">{!! nl2br(e($comment->content ?? $comment->description ?? '')) !!}</div>
@if(!empty($author->signature))
<div class="panel-footer comment-footer">
<p>{!! nl2br(e($author->signature)) !!}</p>
</div>
@endif
</div>
</div>
</div>
</div>
@endforeach
</div>
@if($comments->hasPages())
<div class="paginationMenu">
{{ $comments->links() }}
</div>
@endif
</div>
@endsection

View File

@@ -0,0 +1,81 @@
@extends('layouts.legacy')
@section('content')
<div class="container legacy-page">
<div class="page-header-wrap">
<div class="clearfix">
<h1 class="page-header" style="margin:0;display:inline-block">Artwork Statistics</h1>
<span class="text-muted pull-right" style="margin-top:10px">
Uploaded: {{ method_exists($artworks, 'total') ? $artworks->total() : $artworks->count() }}
</span>
</div>
<div class="text-muted" style="margin-top:6px;font-size:12px">Sort your uploads by popularity, downloads, comments, and date.</div>
</div>
<div class="panel panel-default uploads-panel">
<div class="panel-body">
<div class="table-responsive">
<table class="table table-bordered table-striped table-hover" style="margin-bottom:0">
<thead>
<tr>
<th style="width:90px" class="text-center">Thumbnail</th>
<th>
<a href="{{ request()->fullUrlWithQuery(['sort' => 'name']) }}">Name</a>
</th>
<th style="width:110px" class="text-center">
<a href="{{ request()->fullUrlWithQuery(['sort' => 'dls']) }}">Downloads</a>
</th>
<th style="width:95px" class="text-center">
<a href="{{ request()->fullUrlWithQuery(['sort' => 'comments']) }}">Reviews</a>
</th>
<th style="width:180px">
<a href="{{ request()->fullUrlWithQuery(['sort' => 'category']) }}">Section</a>
</th>
<th style="width:130px" class="text-center">
<a href="{{ request()->fullUrlWithQuery(['sort' => 'date']) }}">Date</a>
</th>
</tr>
</thead>
<tbody>
@forelse($artworks as $art)
<tr>
<td class="text-center">
<a href="/art/{{ (int) $art->id }}" title="View">
<img
src="{{ $art->thumb_url ?? '/gfx/sb_join.jpg' }}"
@if(!empty($art->thumb_srcset)) srcset="{{ $art->thumb_srcset }}" @endif
alt="{{ $art->name ?? '' }}"
class="img-thumbnail"
style="width:70px;height:70px;object-fit:cover"
>
</a>
</td>
<td>
<a href="/art/{{ (int) $art->id }}">{{ $art->name ?? '' }}</a>
<div class="text-muted" style="font-size:12px">#{{ (int) $art->id }}</div>
</td>
<td class="text-center">{{ (int) ($art->dls ?? 0) }}</td>
<td class="text-center">{{ (int) ($art->num_comments ?? 0) }}</td>
<td>{{ $art->category_name ?? '' }}</td>
<td class="text-center">
@if(!empty($art->datum))
{{ is_string($art->datum) ? date('d.m.Y', strtotime($art->datum)) : '' }}
@endif
</td>
</tr>
@empty
<tr>
<td colspan="6">No artworks found.</td>
</tr>
@endforelse
</tbody>
</table>
</div>
</div>
</div>
<div class="paginationMenu text-center">
{{ $artworks->links('pagination::bootstrap-3') }}
</div>
</div>
@endsection

View File

@@ -149,7 +149,7 @@
</a>
<ul class="dropdown-menu">
<li><a href="/upload"><i class="fa fa-upload"></i> Upload</a></li>
<li><a href="/manul.php"><i class="fa fa-cloud"></i> Edit Artworks</a></li>
<li><a href="{{ route('dashboard.artworks.index') }}"><i class="fa fa-cloud"></i> Edit Artworks</a></li>
<li role="presentation" class="divider"></li>
<li><a href="/statistics"><i class="fa fa-cog"></i> Statistics</a></li>
<li><a href="/mybuddies.php"><i class="fa fa-cog"></i> My Followes</a></li>

View File

@@ -0,0 +1,153 @@
@extends('layouts.legacy')
@section('content')
<div class="container-fluid legacy-page">
<div class="effect2 page-header-wrap">
<header class="page-heading">
<h1 class="page-header">Edit profile</h1>
<p>update your user account</p>
</header>
</div>
@if(session('status'))
<div class="alert alert-success">{{ session('status') }}</div>
@endif
@if(session('error'))
<div class="alert alert-danger">{{ session('error') }}</div>
@endif
<form enctype="multipart/form-data" method="post" action="{{ route('legacy.user') }}" id="editUserProfileForm" role="form">
@csrf
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label><i class="fa fa-envelope"></i> Email:</label>
<input type="text" name="email" class="form-control" readonly value="{{ $user->email }}" />
</div>
<div class="form-group">
<label><i class="fa fa-user"></i> Username:</label>
<input type="text" name="uname" class="form-control" readonly value="{{ $user->uname ?? $user->name }}" />
</div>
<div class="form-group">
<label>Real name:</label>
<input type="text" name="real_name" class="form-control" value="{{ $user->real_name ?? '' }}" />
</div>
<div class="form-group">
<label><i class="fa fa-link"></i> Home page:</label>
<input type="text" name="web" class="form-control" value="{{ $user->web ?? '' }}" />
</div>
<div class="form-inline">
<label><i class="fa fa-birthday-cake"></i> Birthday</label><br>
<input maxlength="2" name="date1" class="form-control" size="2" placeholder="Day" value="{{ $birthDay ?? '' }}"> :
<select name="date2" class="form-control">
@for($i=1;$i<=12;$i++)
@php $mVal = str_pad($i, 2, '0', STR_PAD_LEFT); @endphp
<option value="{{ $mVal }}" {{ (isset($birthMonth) && $birthMonth == $mVal) ? 'selected' : '' }}>{{ DateTime::createFromFormat('!m',$i)->format('F') }}</option>
@endfor
</select> :
<input maxlength="4" class="form-control" name="date3" size="4" placeholder="year" value="{{ $birthYear ?? '' }}">
</div>
<br>
<div class="form-group well">
<label>Gender:</label><br>
<input name="gender" type="radio" value="M" {{ ($user->gender ?? '') == 'M' ? 'checked' : '' }}> Male<br>
<input name="gender" type="radio" value="F" {{ ($user->gender ?? '') == 'F' ? 'checked' : '' }}> Female<br>
<input name="gender" type="radio" value="X" {{ ($user->gender ?? '') == 'X' ? 'checked' : '' }}> N/A
</div>
<div class="form-group">
<label>Country:</label>
@if(isset($countries) && $countries->count())
<select name="country_code" class="form-control">
@foreach($countries as $c)
@php
$code = $c->country_code ?? ($c->code ?? null);
$label = $c->country_name ?? ($c->name ?? $code);
@endphp
<option value="{{ $code }}" {{ ($user->country_code ?? '') == $code ? 'selected' : '' }}>{{ $label }}</option>
@endforeach
</select>
@else
<input type="text" name="country_code" class="form-control" value="{{ $user->country_code ?? '' }}">
@endif
</div>
<div class="form-group well">
<input name="newsletter" type="checkbox" value="1" {{ ($user->mlist ?? 0) ? 'checked' : '' }}> Mailing list<br>
<input name="friend_upload_notice" type="checkbox" value="1" {{ ($user->friend_upload_notice ?? 0) ? 'checked' : '' }}> Friends upload notice
</div>
<div class="form-group">
<label>Signature</label>
<textarea name="signature" class="form-control" style="width:100%; height:100px;">{{ $user->signature ?? '' }}</textarea>
</div>
<div class="form-group">
<label>Description</label>
<textarea name="description" class="form-control" style="width:100%; height:100px;">{{ $user->description ?? '' }}</textarea>
</div>
</div>
<div class="col-md-6">
<div class="form-group well">
<label>Avatar:</label><br>
<input type="file" name="avatar" class="form-control">
@if(!empty($user->icon))
<div style="margin-top:10px"><img src="/avatar/{{ $user->id }}/{{ $user->icon }}" width="50"></div>
@endif
</div>
<div class="form-group well">
<label>Emotion Icon:</label><br>
<input type="file" name="emotion_icon" class="form-control">
</div>
<div class="form-group well">
<label>Personal picture:</label><br>
<input type="file" name="personal_picture" class="form-control">
@if(!empty($user->picture))
<div style="margin-top:10px"><img src="/user-picture/{{ $user->picture }}" style="max-width:300px"></div>
@endif
</div>
</div>
</div>
<div class="form-group">
<label>About Me</label>
<textarea name="about_me" class="summernote form-control" style="width:100%; height:100px;">{{ $user->about_me ?? '' }}</textarea>
</div>
<input type="hidden" name="confirm" value="true">
<input type="submit" class="btn btn-success" value="Update my profile">
</form>
<hr>
<h3>Change password</h3>
<form action="{{ route('legacy.user') }}" method="post">
@csrf
<div class="form-group">
<label>Current password</label>
<input type="password" name="oldpass" class="form-control">
</div>
<div class="form-group">
<label>New password</label>
<input type="password" name="newpass" class="form-control">
</div>
<div class="form-group">
<label>Retype new password</label>
<input type="password" name="newpass2" class="form-control">
</div>
<input type="hidden" name="confirm" value="true_password">
<input type="submit" class="btn btn-success" value="Change Password">
</form>
</div>
@endsection

View File

@@ -0,0 +1,36 @@
@if ($paginator->hasPages())
<ul class="pagination">
{{-- Previous Page Link --}}
@if ($paginator->onFirstPage())
<li class="disabled" aria-disabled="true"><span>&laquo;</span></li>
@else
<li><a href="{{ $paginator->previousPageUrl() }}" rel="prev" aria-label="Previous">&laquo;</a></li>
@endif
{{-- Pagination Elements --}}
@foreach ($elements as $element)
{{-- "Three Dots" Separator --}}
@if (is_string($element))
<li class="disabled" aria-disabled="true"><span>{{ $element }}</span></li>
@endif
{{-- Array Of Links --}}
@if (is_array($element))
@foreach ($element as $page => $url)
@if ($page == $paginator->currentPage())
<li class="active" aria-current="page"><span>{{ $page }}</span></li>
@else
<li><a href="{{ $url }}">{{ $page }}</a></li>
@endif
@endforeach
@endif
@endforeach
{{-- Next Page Link --}}
@if ($paginator->hasMorePages())
<li><a href="{{ $paginator->nextPageUrl() }}" rel="next" aria-label="Next">&raquo;</a></li>
@else
<li class="disabled" aria-disabled="true"><span>&raquo;</span></li>
@endif
</ul>
@endif