server ver

This commit is contained in:
w0bm
2023-12-05 22:43:30 +00:00
parent b8e4b5fbfa
commit ac59ed6f81
75 changed files with 2175 additions and 1 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 695 KiB

After

Width:  |  Height:  |  Size: 171 KiB

View File

@@ -141,6 +141,7 @@ Route::group(["middleware" => "theme"], function() {
#Route::get('rulez', 'rulezController@index')->middleware('auth');
Route::get('todo', function() { return view('todo'); })->middleware('auth');
Route::get('contact', function() { return view('contact'); });
Route::get('change', function() { return view('change'); });
#Route::get('terms', function() { return view('tos'); })->middleware('auth');
Route::get('privacy', function() { return view('privacy'); });
Route::get('marderchen', function() { return view('marder'); });

12
public/css/w0bmvision.css vendored Normal file
View File

@@ -0,0 +1,12 @@
.footer {
position: absolute;
visibility: visible !important;
width: 100%;
background: #000000d9;
}
.vidinfo_topper {
padding-left: 5px;
padding-right: 5px;
}

View File

@@ -0,0 +1,65 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>RE: Content on w0bm</h3>
<p><i>For a happier future… or so I hope</i></p>
</div>
<div class="box">
<h4>Original in German</h4>
<div class="german">
<pre>
RE: Content on w0bm
Ich will keine Nachrichten, keine Politik, keinen Krieg und auch sonst keine zu mainstreamigen Sachen auf meiner Platform.
Ich möchte das w0bm eine Page ist die lustiges und kurioses gezielt zur Schau stellt.
Nnatürlich bin ich nicht alleiniger Entscheider darüber was potentiell als lustig, kurios oder anderweitig merkwürdig zu gelten hat,
jedoch behalte ich mir vor das ganze in einem gewissen Rahmen zu formen, so ist nun der Zeitpunkt gekommen,
an dem ich diese Formung verfestigen werde und in Futur 2 viele Uploads gelöscht haben werde.
Die Löschung hat betroffen:
Inhalte mit Nachrichten, Politik und Krieg.
Inhalte mit Gore.
Die vollständigen Kategorien:
politics, military, mett
sind entfernt worden
Ab sofort bitte keine Inhalte mit oben aufgeführten Kriterien mehr hochladen.
Liebe Grüße
die Administration
</pre>
</div>
<h4>English translation</h4>
<div class="usaenglish">
<pre>
RE: Content on w0bm
I don't want news, politics, war or anything too mainstream on my platform.
I want w0bm to be a site that showcases funny and curious content.
Of course, I am not the sole decider of what is potentially considered funny, curious or otherwise strange,
but I reserve the right to shape the whole thing within a certain framework, so now the time has come,
at which I will solidify this shaping and will have deleted many uploads in future tense 2.
The deletion has affected:
Content with news, politics and war.
Content with Gore.
The complete categories:
politics, military, mett
have been removed
From now on, please do not upload any content with the above criteria.
Kind regards
the administration
</pre>
</div>
</div>
@endsection

View File

@@ -0,0 +1,54 @@
<div style="visibility: hidden;" class="footer">
<div class="vidinfo_topper">
<span class="videoinfo_top">
{{$video->videotitle}} uploaded by {{ $video->user->username }} <a class="{{ $video->user->username }}" style="color: white" href="{{ url('user/' . $video->user->username) }}">{!! $video->user->displayName() !!}</a></span> <time class="timeago" data-toggle="tooltip" data-placement="top" datetime="{{$video->created_at->toIso8601String()}}" title="{{$video->created_at->toIso8601String()}}"></time>
<button title="Toggle comments" class="hidden-xs toggle-comments" id="toggle"><i class="fa fa-comments"></i> <span id="commentAmount">{{ $video->comments()->count() }}</span></button>
<button title="Toggle Background" class="hidden-xs bg-toggle" id="togglebg"><i style="color:#fff200;" class="fa fa-adjust"></i></button>
<button class="copylink" data-clipboard-text="{{url($video->id)}}" title="Copy URL!"><i class="fa fa-link"></i></button>
<div class="dropdown">
<button class="fa fa-download"
id="dlbutton"
style="cursor: pointer"
data-toggle="popover"
data-placement="top"
data-trigger="hover"
data-html="true"
title="Download"
data-content="
<div class='downloadvid'>
<ul class='downloadlist'>
<li><a class='file_size' href='{{ '/b/' . $video->file }}' download>WebM</a> <span class='filesize'> ({{HumanReadable::bytesToHuman($video->filesize()) }})</span></li>
</ul>
</div>"
</button>
</div>
@if(auth()->check())
<button title="Report WebM" id="webm_report" class="webm-report" data-toggle="modal" data-target="#webmreportmodal"><i class="fa fa-warning fa-md"></i></button>
@endif
<div class="favbutton">
@if(auth()->check())
@if(auth()->user()->hasFaved($video->id))
<a id="fav" href="{{url($video->id . '/fav')}}"><i style="color:#ff0094;" class="fa fa-heart"></i></a>
@else
<a id="fav" href="{{url($video->id . '/fav')}}"><i style="color:#ff0094;" class="fa fa-heart-o"></i></a>
@endif
@else
<a href="{{url($video->id . '/fav')}}"><i class="fa fa-heart-o"></i></a>
@endif
</div>
</button>
<button class="fa fa-info-circle"
id="infobox"
style="cursor: pointer"
data-toggle="popover"
data-placement="top"
data-trigger="hover"
data-html="true"
title="Information"
data-content="@include('popover-content')">
</button>
<span id="uploader">uploaded by <a class="{{ $video->user->username }}" style="color: white" href="{{ url('user/' . $video->user->username) }}">{!! $video->user->displayName() !!}</a></span> <time class="timeago" data-toggle="tooltip" data-placement="top" datetime="{{$video->created_at->toIso8601String()}}" title="{{$video->created_at->toIso8601String()}}"></time>@if(auth()->check() && (auth()->user()->can('edit_video') || auth()->user()->id == $video->user_id)) <a class="edit_video" href="#" data-toggle="modal" data-target="#webmeditmodal">[edit]</a>@endif @if(auth()->check() && auth()->user()->can('delete_video'))<a class="delete_video" href="#">[del]</a>@endif
</span>
</div>
</div>

View File

@@ -25,4 +25,5 @@ getLatestCommit();
getLastTenCommits()
?>
@endsection
@endsection
@include('footer')

View File

@@ -128,6 +128,7 @@
@section('aside')
<aside id="sidebar" class="aside panel hidden-xs">
<div><a href="/changes">RE: Content on w0bm</a></div>
@include('partials.flash')
@include('partials.comments')
@include('partials.tags')

View File

@@ -0,0 +1,6 @@
@extends('profilelayout')
@section('content')
{!!$blah!!}
@include('footer')
@endsection

View File

@@ -0,0 +1,7 @@
@extends('layout')
@section('content')
@include('partials.flash')
user limit reached 6969
@endsection

View File

@@ -0,0 +1 @@
closed, come back later

View File

@@ -0,0 +1,61 @@
@extends('layout')
@section('content')
@include('partials.flash')
<div class="page-header">
<h5>Register your w0bm.com Account</h5>
<p style="color:red;">Note: If you ever lose your password you are fucked, we will <b>NOT</b> reset it. To prevent this not only on w0bm.com but evrywhere we highly recommend the usage of a password manager such as <a href="https://keepassxc.org/">KeePassXC</a></p>
<p>Being a member of w0bm.com is <b>NOT</b> a right, it's privilege which can be revoked at any point in time.</p>
</div>
<div class="register">
<form class="form-horizontal" method="post" action="{{action('UserController@store')}}">
{!! csrf_field() !!}
<div class="form-group">
<div class="">
{!! Form::text('username', null, ['class' => 'form-control', 'placeholder' => 'Username']) !!}
</div>
</div>
<div class="form-group">
<div class="">
{!! Form::email('email', null, ['class' => 'form-control', 'placeholder' => 'Email | Must be valid! Confirmation will be sent out']) !!}
</div>
</div>
<div class="form-group">
<div class="">
{!! Form::email('email_confirmation', null, ['class' => 'form-control', 'placeholder' => 'Email Confirmation']) !!}
</div>
</div>
<div class="form-group">
<div class="">
{!! Form::password('password', ['class' => 'form-control', 'placeholder' => 'Password']) !!}
</div>
</div>
<div class="form-group">
<div class="">
{!! Form::password('password_confirmation', ['class' => 'form-control', 'placeholder' => 'Password Confirmation']) !!}
</div>
</div>
<div class="form-group">
{!!captcha_img('mini')!!} <input class="form-control" type="text" name="captcha" placeholder="Verify Captcha">
</div>
<div class="form-group terms">
<div style="text-align: center;">
<p><input type="checkbox" required name="terms"> I am at least 18 years or older and I have read and understand the <a href="/rules">Rules</a></p>
</div>
<div class="">
<button type="submit" class="btn btn-primary">Register</button>
</div>
</div>
</form>
</div>
<!-- <div class="form-group" style="
text-align: center;
background: rgba(0, 0, 0, 0.75);
margin-left: 5px;
margin-right: 5px;
">
<p>By clicking on "Register" you accept our <a href="/rules">Rules</a></p>
<p>Note: we do NOT reset passwords for now, make sure to save your password correctly</p>
</div>
-->
@endsection

View File

@@ -0,0 +1,25 @@
@extends('layout')
@section('content')
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">YOU ARE BANNED! ;_;</h3>
</div>
<div class="panel-body">
<div style="border:0;" class="panel panel-default">
<div class="panel-body">
@if($perm)
<p class="banned">Reason: {{ $user->banreason }}</p>
<p>Your ban is permanent fool and will <b>NOT</b> expire!</p>
<video class="banwidth" autoplay loop src="https://w0bm.com/b/1515965864.webm">You are banned</video>
@else
<p class="banned">Reason: {{ $user->banreason }}</p>
<p class="banned">Your ban will expire in {{ $user->banend->diffForHumans(null, true) }}</p>
<video class="banwidth" autoplay loop src="//b/1515965864.webm">You are banned</video>
@endif
</div>
</div>
<p>If you think you were banned by accident or dindu nuffin to deserve the ban contact an administrator in the <a href="/irc">IRC</a></p>
</div>
</div>
@endsection

View File

@@ -0,0 +1,22 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>Blog</h3>
</div>
<div class="box">
<small>30.06.2023</small>
<p>Dear friends and users of w0bm.com,</p>
<p>We will turn 8 years old on the 13th of Semptember!</p>
<p>Thank you for all the great years we had together, w0bm was from the very beginning a passion and fun project, mainly to learn a bit about hosting a website, when I first had this idea I didn't even know what "ssh" was, but it didn't stop me from learning about it.</p>
<p>w0bm is a community driven project maintained for the last 8 years by the same small circle of friends, we had ups and downs but the project somehow kept going.</p>
<p>I had some bad times myself where I just wanted to end this project but I always came back to the conclusion that it is something worth keeping and maintaining.</p>
<p>We have some great content on this website, sadly also a lot of very bad content, but for now it is what it is.</p>
<p>If it wasn't for you, our users and friends this website probably wouldn't have turned 8 years old.</p>
<p>We thank everyone who particicpated and still participates in this community, we also thank everyone that helped us with the coding of this project!</p>
<p>Let's hope for some more great years together :)</p>
<p>For this matter, we invite everyone to our <a href="/irc">IRC</a> to celebrate with us the 8th birthday of w0bm, come and have a nice chat with us, stay if you like it!</p>
<img src="logo.png" alt="The first official w0bm logo">
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,20 @@
@extends('layout')
@section('content')
<div class="page-header">
<h3>Categories</h3>
</div>
<div class="" id="categories">
@foreach($categories as $category)
<div id="category_box_{{$category->shortname}}" class="col-sm-6 col-md-4 category">
<div class="thumbnail">
<img src="{{ asset('/images/cat/' . $category->shortname . '.webp') }}" alt="{{$category->name}}">
<div class="caption">
<h3>{{$category->name}} <small>{{$category->videos()->count()}}</small></h3>
<p>{{$category->description}}</p>
<p><a href="{{$category->shortname}}" class="btn btn-primary" role="button">View</a></p>
</div>
</div>
</div>
@endforeach
</div>
@endsection

View File

@@ -0,0 +1,4 @@
#!/bin/bash
cd /home/sirx/web/w0bm.com/resources/views/
ln -sf registerclosed.blade.php register.blade.php
php ../../artisan view:clear

View File

@@ -0,0 +1,23 @@
@extends('profilelayout')
@section('content')
@include('partials.profileheader')
@include('partials.comlist')
<h3>Comments</h3>
@if(Auth::check())
<div class="row jkh">
<div class="col-md" id="list">
<div class="spinner">
<div class="cube1"></div>
<div class="cube2"></div>
</div>
</div>
<!--<div class="col-md-6" id="message"><h4>Select a comment to display content</h4></div>-->
</div>
@else
<div class="row jkh">
<i>Not logged in. Please log in to view comments!</i>
</div>
@endif
@endsection

View File

@@ -0,0 +1,13 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>Contact</h3>
</div>
<div class="box">
<img src="/images/cockfag.png" style="margin-left: 10px; width: 15%; height: 15%; float:right;">
<p>
For anything w0bm related you can either reach us via email: <code>admin@w0bm.com</code> or via our <a href="/irc">IRC</a>
</p>
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,8 @@
@extends('layout')
@section('content')
<h5>Sorry, this video is unavailable at the moment!</h5>
<img src="/images/404-video.png">
<p>Possible reasons: Your video was shit, broke a rule or the ID you tried to watch does not even exist (yet)</p>
<p>Go <a href="/">back</a> to the normal rotation</p>
@endsection

View File

@@ -0,0 +1,3 @@
<h3>Hello {{$username}}</h3>
<p>Welcome to <a href="https://w0bm.com">w0bm.com</a>.</p>
<p>To activate your account please click this <a href="https://w0bm.com/activate/{{$activation_token}}">link</a>.</p>

View File

@@ -0,0 +1,87 @@
<html>
<div style="width:100%;font-family:verdana;">
<h1>webm got reported!</h1>
<div>
<b>Link:</b>
<a href="{{$videoURL}}">{{$videoURL}}</a>
</div>
<br>
<div>
<table style="width:100%;border:1px solid black;border-collapse:collapse;">
<thead>
<tr style="border:1px solid black; padding:5px;">
<th style="background-color:#bbbbbb;border-right:1px solid black;">Report Reasons</th>
<th style="background-color:#bbbbbb;">Report Text</th>
</tr>
</thead>
<tbody>
<tr>
<td style="padding:10px;border-right:1px solid #bbbbbb;">
<ul>
{!! $reportReasons !!}
</ul>
</td>
<td style="padding:10px;">
{{$reportText}}
</td>
</tr>
</tbody>
</table>
</div>
<br>
<div>
<table style="width:100%; border-collapse:collapse;border:1px solid black;">
<tr style="border-bottom:1px solid black;">
<th style="border-right:1px solid black;padding:5px;width:200px;">Username</th>
<td>{!! $username !!}</td>
</tr>
<!--
<tr style="border-bottom:1px solid black;">
<th style="border-right:1px solid black;padding:5px;">Time reported</th>
<td></td>
</tr>
<tr style="border-bottom:1px solid black;">
<th style="border-right:1px solid black;padding:5px;">IP:</th>
<td></td>
</tr>-->
<tr style="border-bottom:1px solid black;">
<th style="border-right:1px solid black;padding:5px;">Video ID</th>
<td>{{$videoID}}</td>
</tr>
<!--
<tr style="border-bottom:1px solid black;">
<th style="border-right:1px solid black;padding:5px;">Video Title</th>
<td></td>
</tr>
<tr style="border-bottom:1px solid black;">
<th style="border-right:1px solid black;padding:5px;">Video Tags</th>
<td></td>
</tr>-->
</table>
</div>
<br>
<hr>
<!--
<div>
<h3>Debug Output:</h3>
<div style="color:green;font-family:consolas;background-color:black;">
<pre>
{{$debugOutput}}
</pre>
</div>
</div>
-->
</div>
</html>

View File

@@ -0,0 +1,7 @@
@extends('layout')
@section('content')
<div class="notfound">
<h1>404 - NOT FOUND</h1>
<img id="notfound-img" src="/404.gif">
</div>
@endsection

View File

@@ -0,0 +1,42 @@
@extends('profilelayout')
@section('content')
<style>
.sf-reset .block > pre {
background-color: #000000;
padding: 10px 28px;
margin-bottom: 20px;
-webkit-border-bottom-right-radius: 0;
-webkit-border-bottom-left-radius: 0;
-moz-border-radius-bottomright: 0;
-moz-border-radius-bottomleft: 0;
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
border-bottom: 1px solid #1faeac;
border-right: 1px solid #1faeac;
border-left: 1px solid #1faeac;
border-top: 1px solid #1faeac;
word-wrap: break-word;
color: green;
}
</style>
<h5>Oh shit! Something went wrong!</h5>
<div id="sf-resetcontent" class="sf-reset box">
<h6>Please don't send this fucking text to an admin, we have other problems.</h6>
<?php
$iv = openssl_random_pseudo_bytes(16);
?>
@if(!env('APP_DEBUG'))
<div class="block">
{{bin2hex($iv)}}<br>
{{openssl_encrypt($exception, 'aes128', env('APP_KEY'), 0, $iv)}}
</div>
@else
<div class="block">
<pre>{{$exception}}</pre>
</div>
@endif
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,47 @@
<!DOCTYPE html>
<html>
<head>
<title>Please Stand By we are just fucking this up</title>
<link href="https://fonts.googleapis.com/css?family=Lato:100" rel="stylesheet" type="text/css">
<style>
html, body {
height: 100%;
}
body {
margin: 0;
padding: 0;
width: 100%;
color: #B0BEC5;
display: table;
font-weight: 100;
font-family: 'Lato';
background-color: #161618;
}
.container {
text-align: center;
display: table-cell;
vertical-align: middle;
}
.content {
text-align: center;
display: inline-block;
}
.title {
font-size: 72px;
margin-bottom: 40px;
}
</style>
</head>
<body>
<div class="container">
<div class="content">
<div class="title">Short maintenance, brb!</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,6 @@
<nav class="navbar-fixed-bottom">
<div class="container futter">
@if(auth()->check())<a href="/about">About</a> | @endif<a href="/rules">Rules</a> | <a href="/contact">Contact</a> | <a href="/privacy">Privacy</a>@if(auth()->check()) | <a href="/stats">Stats</a>@endif
<p>Inspired by <a href="http://z0r.de">z0r.de</a> | © 2015 {{ date('Y') }} w0bm.com</p>
</div>
</nav>

View File

@@ -0,0 +1,59 @@
<div style="visibility: hidden;" class="footer">
<div class="vidinfo_topper">
<span class="videoinfo_top">
@if($video->videotitle)
[ <b>{{$video->videotitle}}</b> ]
@else
[ <b> / </b> ]
@endif
uploaded by <a class="{{ $video->user->username }}" style="color: white" href="{{ url('user/' . $video->user->username) }}">{!! $video->user->displayName() !!}</a></span> <time class="timeago" data-toggle="tooltip" data-placement="top" datetime="{{$video->created_at->toIso8601String()}}" title="{{$video->created_at->toIso8601String()}}"></time>
<button title="Toggle comments" class="hidden-xs toggle-comments" id="toggle"><i class="fa fa-comments"></i> <span id="commentAmount">{{ $video->comments()->count() }}</span></button>
<button title="Toggle Background" class="hidden-xs bg-toggle" id="togglebg"><i style="color:#fff200;" class="fa fa-adjust"></i></button>
<button class="copylink" data-clipboard-text="{{url($video->id)}}" title="Copy URL!"><i class="fa fa-link"></i></button>
<div class="dropdown">
<button class="fa fa-download"
id="dlbutton"
style="cursor: pointer"
data-toggle="popover"
data-placement="top"
data-trigger="hover"
data-html="true"
title="Download"
data-content="
<div class='downloadvid'>
<ul class='downloadlist'>
<li><a class='file_size' href='{{ '/b/' . $video->file }}' download>WebM</a> <span class='filesize'> ({{HumanReadable::bytesToHuman($video->filesize()) }})</span></li>
</ul>
</div>"
</button>
</div>
@if(auth()->check())
<button title="Report WebM" id="webm_report" class="webm-report" data-toggle="modal" data-target="#webmreportmodal"><i class="fa fa-warning fa-md"></i></button>
@endif
<div class="favbutton">
@if(auth()->check())
@if(auth()->user()->hasFaved($video->id))
<a id="fav" href="{{url($video->id . '/fav')}}"><i style="color:#ff0094;" class="fa fa-heart"></i></a>
@else
<a id="fav" href="{{url($video->id . '/fav')}}"><i style="color:#ff0094;" class="fa fa-heart-o"></i></a>
@endif
@else
<a href="{{url($video->id . '/fav')}}"><i class="fa fa-heart-o"></i></a>
@endif
</div>
</button>
<button class="fa fa-info-circle"
id="infobox"
style="cursor: pointer"
data-toggle="popover"
data-placement="top"
data-trigger="hover"
data-html="true"
title="Information"
data-content="@include('popover-content')">
</button>
</span>
</div>
</div>

View File

@@ -0,0 +1,29 @@
@extends('profilelayout')
@section('content')
<?php
function getLatestCommit() {
$latestCommit = shell_exec('git log -n 1');
$getcommitID = substr($latestCommit,0,48);
$commitID = substr($getcommitID, 7);
echo "<div class='box'>";
echo "<span>Latest commit</span>";
//echo "<h4><a style='color:white' href='https://git.lat/w0bm/w0bm/commit/$commitID' target='_blank'>$commitID</a></h4>";
echo "<pre>$latestCommit</pre>";
echo "</div>";
}
function getLastTenCommits() {
$lastTenCommits = shell_exec('git log -n 10');
echo "<div class='box'>";
echo "<span>Last 10 Commits</span>";
echo "<pre>$lastTenCommits</pre>";
echo "</div>";
}
getLatestCommit();
getLastTenCommits()
?>
@endsection
@include('footer')

View File

@@ -0,0 +1,7 @@
@extends('layout')
@section('content')
<div class="page-header">
<h2></h2>
</div>
@endsection

View File

@@ -0,0 +1,77 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3 id="index">Index <small>{{ $number_of_results }} results</small></h3>
<form method="get">
<button type="submit" class="suchbutton"><i style="color:white;" class="fa fa-search"></i></button>
{!! Form::text('q', isset($q) ? $q : null, ['class' => 'suchleiste', 'placeholder' => 'Search w0bm.com']) !!}
</form>
</div>
<table class="table table-hover table-condensed">
<thead>
<tr>
<th>ID</th>
<th>Video Title</th>
<th>Artist</th>
<th>Songtitle</th>
<th class="hidden-xs">Video Source</th>
<th>Category</th>
</tr>
</thead>
<tbody>
@foreach($videos as $video)
<?php
$thumb = str_replace(".webm","",$video->file);
?>
<tr data-thumb="{{$thumb}}" class="indexedit" data-vid="{{$video->id}}">
<td>
@if($edit = auth()->check() && auth()->user()->can('edit_video'))
<form action="/index/{{$video->id}}" method="post" id="edit_{{$video->id}}" class="indexform"></form>
@endif
<span class="vinfo vid"><a href="{{url($video->id)}}">{{$video->id}}</a></span>
@if($edit)
<input type="submit" class="btn btn-primary" value="Save" form="edit_{{$video->id}}">
@endif
</td>
<td>
<span class="vinfo vvideotitle">{{$video->videotitle or ''}}</span>
@if($edit)
<input class="form-control" type="text" name="videotitle" value="{{$video->videotitle or ''}}" form="edit_{{$video->id}}">
@endif
</td>
<td>
<span class="vinfo vinterpret">{{$video->interpret or ''}}</span>
@if($edit)
<input class="form-control" type="text" name="interpret" value="{{$video->interpret or ''}}" form="edit_{{$video->id}}">
@endif
</td>
<td>
<span class="vinfo vsongtitle">{{$video->songtitle or ''}}</span>
@if($edit)
<input class="form-control" type="text" name="songtitle" value="{{$video->songtitle or ''}}" form="edit_{{$video->id}}">
@endif
</td>
<td class="hidden-xs">
<span class="vinfo vimgsource">{{$video->imgsource or ''}}</span>
@if($edit)
<input class="form-control" type="text" name="imgsource" value="{{$video->imgsource or ''}}" form="edit_{{$video->id}}">
@endif
</td>
<td>
<span class="vinfo vcategory"><a href="{{url($video->category->shortname)}}">{{$video->category->name}}</a></span>
@if($edit)
<select class="form-control" name="category" form="edit_{{$video->id}}">
@foreach($categories as $cat)
<option value="{{$cat->id}}" @if($cat->shortname === $video->category->shortname) selected @endif>{{$cat->name}}</option>
@endforeach
</select>
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
<div class="page" style="position:relative;bottom:5px;">
{!! $videos->render() !!}
</div>
@endsection

View File

@@ -0,0 +1,23 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>IRC</h3>
</div>
<div class="irc-content">
{{--<div class="webchat">
@if(auth()->check())
<iframe src="https://n0xy.net/webirc/?nick={{Auth::user()->username}}&join=%23w0bm&username={{Auth::user()->username}}"></iframe>
@else
<iframe src="https://n0xy.net/webirc/?join=%23w0bm&"></iframe>
@endif
</div>--}}
<div class="irc-matrix-info">
<h5>IRC</h5>
<h6>irc.n0xy.net +6697 (ssl only) #w0bm</h6>
<p><a href="https://n0xy.net/webirc/?join=%23w0bm" target="about_blank">n0xy.net Webirc</a></p>
<p>More information: <a href="https://n0xy.net">n0xy.net</a></p>
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,116 @@
<!DOCTYPE html>
<!--RENDERED IN {{ (microtime(true) - LARAVEL_START) }} SECONDS-->
<html lang="en">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="theme-color" content="#161618">
<meta name="viewport"
content="width=device-width,initial-scale=1">
<meta charset="UTF-8">
<meta name="_token" content="{{csrf_token()}}">
<meta name="keywords" content="Random WebMs, WebMs, Internet Videos">
<meta name="robots" content="noindex">
@if(auth()->check())<meta name="Description" content="Tags:@if(isset($video)) {{ $video->getTagListAttribute() }} @endif">@endif
<meta name="description" content="@if(isset($video)) {{ $video->getTagListAttribute() }} @endif">
<meta property="og:site_name" content="w0bm.com" />
<meta property="og:title" content="@if(isset($video)){{$video->videotitle}}@endif">
<meta name="twitter:card" content="summary_large_image" />
@if(auth()->check())<meta property="og:description" content="Tags:@if(isset($video)) {{ $video->getTagListAttribute() }} @endif">@endif
@if(isset($video))
@if($video->isSfw())
<meta property="og:image" content="@if(isset($video))/thumbs/beta/{{str_replace(".webm","",$video->file)}}.png"@endif/>
<meta name="twitter:image" content="@if(isset($video))/thumbs/beta/{{str_replace(".webm","",$video->file)}}.png"@endif/>
@else
<meta property="og:image" content="@if(isset($video))/thumbs/blurred/{{str_replace(".webm","",$video->file)}}_blurred.png"@endif/>
<meta name="twitter:image" content="@if(isset($video))/thumbs/blurred/{{str_replace(".webm","",$video->file)}}_blurred.png"@endif/>
@endif
@endif
@if(auth()->check())<meta property="og:video" content="@if(isset($video))/b/{{ $video->file }} @endif">@endif
<meta property="og:url" content="@if(isset($video))/{{ $video->id }}@endif">
<meta property="og:video:type" content="video/webm">
<link rel="icon" href="/favicon.png">
<title>@if(isset($video)){{ $video->id }} -@endif w0bm.com</title>
<link rel="favicon" href="favicon.ico" type="image/ico">
<link rel="stylesheet" href="/css/style.css">
<link rel="stylesheet" href="/css/w0bmfonts.css">
<link rel="stylesheet" href="/css/font-awesome.min.css">
<link rel="stylesheet" href="/css/bootstrap-tagsinput.css">
<link rel="stylesheet" href="/css/video-js.min.css">
<link rel="stylesheet" href="/css/vjsnew.css">
<link rel="stylesheet" href="/css/w0bmcustom.css?v={{ filemtime("css/w0bmcustom.css") }}">
@if(auth()->check())
<link rel="alternate stylesheet" href="/css/w0bm_override.css?v={{ filemtime("css/w0bm_override.css") }}" title="DARK">
<link rel="alternate stylesheet" href="/css/chilledblue.css?v={{ filemtime("css/chilledblue.css") }}" title="Chilledblue">
<link rel="alternate stylesheet" href="/css/xayd.css?v={{ filemtime("css/xayd.css") }}" title="Xayd">
<link rel="alternate stylesheet" href="/css/glitch.css?v={{ filemtime("css/glitch.css") }}" title="Glitch">
<link rel="alternate stylesheet" href="/css/epilepsie.css?v={{ filemtime("css/epilepsie.css") }}" title="Epilepsie">
<link rel="stylesheet" href="/css/w0bmvision.css">
<script src="/js/styleswitcher.js"></script>
@else
@endif
</head>
<body>
@if(auth()->check())
@include('partials.report')
@include('partials.filterselect')
@if(isset($video) && (auth()->user()->can('edit_video') || auth()->user()->id == $video->user_id))
@include('partials.frontendedit')
@endif
@endif
@if(auth()->check())
<canvas class="hidden-xs" id="bg"></canvas>
@else
<!-- placeholder? -->
@endif
@include('partials.navigation')
<div class="wrapper">
@yield('aside')
<div class="LooLOut" style="width: auto; overflow: hidden; position: relative;">
<noscript><div class="no-js-mode" style="position: fixed;bottom: 0;right: 0;">nojs</div></noscript>
@include('footertwo')
<div class=" container">
@yield('content')
</div>
</div>
</div>
@if(auth()->check())
<script src="/js/jquery.min.js"></script>
<script src="/js/bootstrap.min.js"></script>
<script src="/js/bootstrap-tagsinput.min.js"></script>
<script src="/js/isotope.pkgd.min.js"></script>
<script src="/js/imagesloaded.pkgd.min.js"></script>
<script src="/js/jquery.timeago.js"></script>
<script src="/js/jquery.detectmobilebrowser.js"></script>
<script src="/js/video.min.js"></script>
<script src="/js/simplebar.js"></script>
<script src="/js/clipboard.min.js"></script>
<script>
var clipboard = new ClipboardJS('.copylink');
clipboard.on('success', function(e) {
console.info('Action:', e.action);
console.info('Text:', e.text);
console.info('Trigger:', e.trigger);
e.clearSelection();
});
clipboard.on('error', function(e) {
console.error('Action:', e.action);
console.error('Trigger:', e.trigger);
});
</script>
<script src="/js/w0bmscript.js?v={{ filemtime("js/w0bmscript.js") }}"></script>
@else
@endif
@if(isset($video))
@else
@endif
<p style="color: red">development version</p>
</body>
</html>

View File

@@ -0,0 +1,26 @@
@extends('layout')
@section('content')
@include('partials.flash')
<div class="centered">
<div class="modal-content col-md-5">
<div class="modal-header">
<h4 class="modal-title" id="filterModalTitle">Login</h4>
</div>
@include('partials.flash')
<div class="login_wrapper">
<div class="col-md">
<form action="{{action('UserController@login')}}" method="post" class="navbar-form">
{!! csrf_field() !!}
<input type="text" name="identifier" placeholder="Username" class="form-control usernamelogin"><br>
<input type="password" name="password" placeholder="Password" class="form-control passwordlogin"><br>
{{-- {!!captcha_img('login')!!} <input class="form-control" type="text" name="captcha" placeholder="Verify Captcha"> --}}
<button type="submit" class="btn btn-primary">Login</button> <input id="rememberme" checked type="checkbox" name="remember"> <span id="rember">Remember me?</span>
</form>
</div>
</div>
<div class="modal-footer">
<a href="/contact">Contact</a> | <a href="/irc">IRC</a>
</div>
</div>
</div>
@endsection

View File

@@ -0,0 +1,30 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<div class="page">
{!! $videos->render() !!}
<form method="get">
<button type="submit" class="suchbutton"><i style="color:white;" class="fa fa-search"></i></button>
{!! Form::text('q', isset($q) ? $q : null, ['class' => 'suchleiste', 'placeholder' => 'Search w0bm.com']) !!}
</form>
</div>
</div>
<div class="items">
@foreach($videos as $video)
<?php
$thumb = str_replace(".webm","",$video->file);
?>
<div class="main-item">
<a href="/{{$video->id}}">
{{-- MUSS UNBEDINGT NOCH ANGEPASST WERDEN!!! --}}
@if(file_exists(public_path() . '/thumbs/beta/'.$thumb.'.png'))
<img src="/thumbs/beta/{{$thumb}}.png">
@else
<img src="/small_404.gif" class="nothumb">
@endif
</a>
</div>
@endforeach
</div>
@endsection

View File

@@ -0,0 +1,24 @@
@extends('profilelayout')
@section('content')
<h3>Hello everyone!</h3>
<div class="box">
<img src="https://marderchen.totally.rip/marderchen.lima-city.de/marderchen.gif" style="float: right;" alt="">
<p>Today we have sad news, a beloved friend of us and one of our most unique members died.</p>
<p>Some of you may remember his unique and interesting and somewhat chaotic but cool videos.</p>
<p>Today we mourn the loss of our friend marderchen.</p>
<p>We sincerely hope you are at a better place now.</p>
<p>We thank you for the great time we had with you, you inspired many of us and brought joy to the IRC and to the website, you will be missed old friend.</p>
<p>To say it in your words: =^_^= MEOW</p>
<p>We have archived his long gone website, make sure to check it out! It is absolutely wild (only available in German)</p>
<p><a href="https://marderchen.totally.rip/marderchen.lima-city.de/index.html">https://marderchen.totally.rip/marderchen.lima-city.de/index.html</a></p>
<p>Also make sure to check out his uploads <a href="https://w0bm.com/main?q=marderchen">https://w0bm.com/main?q=marderchen</a> and enjoy it.</p>
<p><i>- w0bm staff</i></p>
</div>
@endsection

View File

@@ -0,0 +1,101 @@
<style type="text/css">
* {margin: 0; padding: 0}
body {background: #000;overflow:hidden;}
canvas {display: block;}
.matrix {
position: absolute;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
text-align: center;
font-family: monospace;
}
.matrix > .inner {
position: absolute;
color: white;
top: 40%;
}
.inner {
background: #000000b5;
padding: 5px;
}
#bluepill a {
width: 26px;
height: 10px;
display: inline-block;
color: blue;
background: blue;
border-radius: 5px;
}
#redpill a {
width: 26px;
height: 10px;
display: inline-block;
color: red;
background: red;
border-radius: 5px;
}
</style>
<div class="matrix">
<div class="inner">
<h3><p><b><i>Are you a slave {{Auth::user()->username}} ?</i></b></p></h3>
<br>
<p>Take control over your chats, leave Discord for good!</p>
<p>Join [matrix] today!</p>
<p>Why should you consider either running a [matrix] synapse yourself or start using someone elses:</p>
<p>Discord is evil, it took away the freedom you and I deserve, it makes you a slave to their services,<br> makes you obey their rules, includes you in a unwanted botnet where you have no freedom at all!</p>
<p><a target="_blank" href="/22424">Why you shouldn't use Discord</a></p>
<p>It's time to break free {{Auth::user()->username}}</p>
<p>Choose your fate</p>
<span id="bluepill"><a href="https://spyware.neocities.org/articles/discord.html"></a></span> <span id="redpill"><a href="https://github.com/matrix-org/synapse" target="_blank"></a></span>
<p><code>#w0bm:totally.rip</code></p>
<br>
<p><small>We are happy to help if you have any trouble setting up your synapse</small></p>
</div>
</div>
<canvas></canvas>
<audio src="/clubbed.mp3" autoplay loop></audio>
<script type="text/javascript">
// Initialising the canvas
var canvas = document.querySelector('canvas'),
ctx = canvas.getContext('2d');
// Setting the width and height of the canvas
canvas.width = window.innerWidth;
canvas.height = window.innerHeight;
// Setting up the letters
var letters = 'ABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVXYZ';
letters = letters.split('');
// Setting up the columns
var fontSize = 10,
columns = canvas.width / fontSize;
// Setting up the drops
var drops = [];
for (var i = 0; i < columns; i++) {
drops[i] = 1;
}
// Setting up the draw function
function draw() {
ctx.fillStyle = 'rgba(0, 0, 0, .1)';
ctx.fillRect(0, 0, canvas.width, canvas.height);
for (var i = 0; i < drops.length; i++) {
var text = letters[Math.floor(Math.random() * letters.length)];
ctx.fillStyle = '#0f0';
ctx.fillText(text, i * fontSize, drops[i] * fontSize);
drops[i]++;
if (drops[i] * fontSize > canvas.height && Math.random() > .95) {
drops[i] = 0;
}
}
}
// Loop the animation
setInterval(draw, 33);
</script>

View File

@@ -0,0 +1,16 @@
@extends('profilelayout')
@section('content')
@include('partials.msglist')
<div class="page-header">
<h3>Messages</h3>
</div>
<div class="">
<div class="col-md-6" id="list">
<div class="spinner">
<div class="cube1"></div>
<div class="cube2"></div>
</div>
</div>
<div class="col-md-6" id="message"><h4>Select a message to display content</h4></div>
</div>
@endsection

View File

@@ -0,0 +1,3 @@
<h3><a href="{{url('user/' . $user->username)}}">{{$user->username}}</a> answered on your comment.</h3>
<p><a href="{{url('user/' . $user->username)}}">{{$user->username}}</a> answered on your comment on the following video: <a href="{{url($video->id)}}">/{{$video->id}}</a></p>
@include('messages.commentpreview')

View File

@@ -0,0 +1,3 @@
<h3><a href="{{url('user/' . $user->username)}}">{{$user->username}}</a> mentioned you in a comment.</h3>
<p><a href="{{url('user/' . $user->username)}}">{{$user->username}}</a> mentioned you in a comment on the following video: <a href="{{url($video->id)}}">/{{$video->id}}</a></p>
@include('messages.commentpreview')

View File

@@ -0,0 +1,6 @@
<div class="panel panel-default">
<div class="panel-body">
@simplemd($comment->content)
</div>
<div class="panel-footer">by <a href="/user/{{$comment->user->username}}">{!! $comment->user->displayName() !!}</a> <small><time class="timeago" data-toggle="tooltip" data-placement="right" datetime="{{$comment->created_at}}+0000" title="{{$comment->created_at}}+0000"></time></small></div>
</div>

View File

@@ -0,0 +1,4 @@
<h3>A moderator deleted your comment.</h3>
<p>A moderator deleted your comment on the following video: <a href="{{url($video->id)}}">/{{$video->id}}</a></p>
<p><span style="font-weight:bold;">Reason:</span> {{$reason}}</p>
@include('messages.commentpreview')

View File

@@ -0,0 +1,4 @@
<h3>A moderator restored your comment.</h3>
<p>A moderator restored your comment on the following video: <a href="{{url($video->id)}}">/{{$video->id}}</a></p>
<p><span style="font-weight:bold;">Reason:</span> {{$reason}}</p>
@include('messages.commentpreview')

View File

@@ -0,0 +1,10 @@
<h3>A moderator deleted your video.</h3>
<p>A moderator deleted your video with the ID {{$video->id}}</p>
<span style="font-weight:bold;">Video Info:</span>
<ul>
@if(isset($videoinfo['artist'])) <li><span style="font-weight:bold;">Artist:</span> {{ $videoinfo['artist'] }}</li> @endif
@if(isset($videoinfo['songtitle'])) <li><span style="font-weight:bold;">Songtitle:</span> {{ $videoinfo['songtitle'] }}</li> @endif
@if(isset($videoinfo['video_source'])) <li><span style="font-weight:bold;">Video Source:</span> {{ $videoinfo['video_source'] }}</li> @endif
<li><span style="font-weight:bold;">Category:</span> {{ $videoinfo['category'] }}</li>
</ul>
<p><span style="font-weight:bold;">Reason:</span> {{$reason}}</p>

View File

@@ -0,0 +1,3 @@
<h3>New comment on your video <a href="{{url($video->id)}}">/{{$video->id}}</a></h3>
<p><a href="{{url('user/' . $user->username)}}">{{$user->username}}</a> made a comment on your video.</p>
@include('messages.commentpreview')

View File

@@ -0,0 +1,4 @@
#!/bin/bash
cd /home/sirx/web/devw0bm.com/resources/views/
ln -sf registeropen.blade.php register.blade.php
php ../../artisan view:clear

View File

@@ -0,0 +1,27 @@
<form id="banmenu" method="POST" action="/api/user/{{$user->username}}/ban">
{!! csrf_field() !!}
<div class="modal fade" id="banmenumodal" tabindex="-1" role="dialog" aria-labelledby="Ban user">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="filterModalTitle">Ban user</h4>
</div>
<div class="modal-body">
<div class="form-group">
<label for="reason">Reason</label>
<input class="form-control" type="text" name="reason" id="reason" placeholder="Reason">
</div>
<div class="form-group">
<label for="duration">Duration</label>
<input class="form-control" type="text" name="duration" id="duration" placeholder="Duration (-1 = permanent)">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>
<input type="submit" class="btn btn-danger" value="BAN!">
</div>
</div>
</div>
</div>
</form>

View File

@@ -0,0 +1,14 @@
<script id="comlist" type="text/x-handlebars-template">
{{#each data as |value key|}}
<div class="panel panel-default">
<div class="panel-body" style="word-wrap: break-word;" data-index="{{key}}" data-id="{{id}}">{{{rendered_view}}}</div>
<div class="panel-footer">Video: <a href="/{{video_id}}">/{{video_id}}</a> | <time class="timeago" data-toggle="tooltip" datetime="{{created_at}}+0000" title="{{created_at}}+0000"></time></div>
</div>
{{else}}
<div class="list-group-item">No comments</div>
{{/each}}
{{#if total}}
<div class="panel-footer" id="pagination">
</div>
{{/if}}
</script>

View File

@@ -0,0 +1,15 @@
<div class="panel @if($del = !is_null($comment->deleted_at)) panel-danger @else panel-default @endif" data-id="{{$comment->id}}" author="{{$comment->user->username}}">
<div class="panel-body" author="{{$comment->user->username}}">
@simplemd($comment->content)
</div>
<div class="panel-footer">by <a class="{{$comment->user->username}}" href="/user/{{$comment->user->username}}">{!! $comment->user->displayName() !!}</a> <small><time class="timeago" data-toggle="tooltip" data-placement="top" datetime="{{$comment->created_at}}+0000" title="{{$comment->created_at}}+0000"></time></small>
@if($mod)
@if($del)
<a href="#" onclick="restoreComment($(this))"><i style="color:green"; class="fa fa-refresh" aria-hidden="true"></i></a>
@else
<a class="delete_comment" href="#" onclick="deleteComment($(this))">[del]</a>
<a class="edit_comment" href="#" onclick="editComment($(this))">[edit]</a>
@endif
@endif
</div>
</div>

View File

@@ -0,0 +1,35 @@
<div id="commentForm" class="hidden-xs">
<form action="{{action('CommentController@store', ['id' => $video->id])}}" method="post">
{!! csrf_field() !!}
<div class="sees panel panel-default">
<div class="fickfackfoo panel-body">
{!! Form::textarea('comment', null, ['placeholder' => 'Write something', 'id' => 'cinput', 'class' => 'form-control', 'required' => 'required']) !!}
</div>
<div class="commbordersoos">
<div id="comment_tools" class="commentform-panel-footer"><button type="submit" class="btn btn-primary btn-sm">Post</button>
<div class="textmodifierss">
<a style="font-size: 14px;" class="rainbow" href="javascript:;" onclick="formatText ('rb');">[rb]</a>
<a style="font-size: 14px;" class="reich" href="javascript:;" onclick="formatText ('reich');">[reich]</a>
<a style="font-size: 14px;" class="anim" href="javascript:;" onclick="formatText ('krebs');">[krebs]</a>
<a style="font-size: 14px; color: white;" class="spoiler" href="javascript:;" onclick="formatText ('spoiler');">[spoiler]</a>
<div class="emoji-shit">
<div class="header"><span>😂</span></div>
</div>
</div>
</div>
</div>
<div style="display: none;" id="parent" class="emojis-box">
<div id="child" class="emojis">
<?php
$files = glob(public_path() . DIRECTORY_SEPARATOR . 'images/comments/*.webp', GLOB_BRACE);
$files = array_map(function ($f) { return pathinfo($f); }, $files);
?>
@foreach ($files as $file)
<a class="w0bm_emoji_anchor" title=":{{$file['filename']}}:" href="javascript:;" onclick="formatTextEmoji ('{{$file['filename']}}');"><img class="comment_emoji_small" loading="lazy" src="//w0bm.com/images/comments/{{$file['basename']}}"></a>
@endforeach
</div>
</div>
</div>
</form>
</div>

View File

@@ -0,0 +1,60 @@
<!--<div id="motd" class="panel panel-info hidden-xs">
@if(null === $banner)
<div class="panel-body motd">
<span style="color:red;">f0ck you!</span>
<iframe style="width: 342px; height: 50px; border: 0!important;display: flex;"src="/0x40"></iframe>
</div>
@else
<a href="{{ $banner->url }}" target="_blank" rel="noopener">
<div style="height: 50px; background-image:url('{{ $banner->image }}')" class="panel-body motd">
</div>
</a>
@endif
</div>-->
{{-- <div id="nutti">
<p>Please check out the overhauled <a href="https://w0bm.com/api/user/layout?layout=2">Njum</a> Layout and give me some feedback!</p>
</div> --}}
{{-- <div id="nutti">
<p>Next month w0bm turns 6 years old! Wouldn't be possible without all of you! Thanks</p>
</div> --}}
@if(Auth::check())
@if($video->id == '30186')
@include('partials.thread_closed')
@else
@include('partials.commentform')
@endif
@else
@endif
@if(Auth::check())
<div id="comment_container_scrollable" class="comments hidden-xs">
<div class="commentwrapper">
<?php
if($mod = (Auth::check() && Auth::user()->can('delete_comment'))) $comments = $video->comments()->withTrashed()->get();
else $comments = $video->comments;
?>
@if(count($comments) > 0)
@foreach($comments as $comment)
@include('partials.comment', ['comment' => $comment, 'mod' => $mod])
@endforeach
@else
<div class="panel panel-default nocomments">
<div class="panel-body">
No comments yet <br />
</div>
</div>
@endif
</div>
</div>
@else
<div class="comments hidden-xs">
<div class="commentwrapper">
<div class="panel panel-default ">
<div class="panel-body">
<p class="comment"><i>Please log in to view comments</i></p>
</div>
<div class="panel-footer">by w0bm </div>
</div>
</div>
</div>
@endif

View File

@@ -0,0 +1,19 @@
<div class="modal fade" id="filterselectmodal" tabindex="-1" role="dialog" aria-labelledby="Select filter">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="filterModalTitle">Add Tags to filter out</h4>
<p>When entering a tag you will no longer see videos with that tag.</p>
</div>
<div class="modal-body">
<input id="filter" type="text" class="form-control" placeholder="Input tags…" name="filter" data-role="tagsinput" value="{{ implode(',', auth()->user()->categories) }}">
{{--<input type="text" id="filter" data-role="tagsinput" value="{{ implode(',', auth()->user()->categories) }}">--}}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>
<button href="/filter" type="submit" id="submitfilter" class="btn btn-primary" value="Save">Save</button>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,36 @@
<div class="flashcontainer">
<div class="flash-inner">
@if($errors->count() > 0)
@foreach($errors->all() as $error)
<div class="alert alert-danger alert-dismissable" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
{{ $error }}
</div>
@endforeach
@endif
@if(Session::has('error'))
<div class="alert alert-danger alert-dismissable" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
{{ session('error') }}
</div>
@endif
@if(Session::has('success'))
<div class="alert alert-success alert-dismissable" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
{{ session('success') }}
</div>
@endif
@if(Session::has('info'))
<div class="alert alert-info alert-dismissable" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
{{ session('info') }}
</div>
@endif
@if(Session::has('warning'))
<div class="alert alert-warning alert-dismissable" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
{{ session('warning') }}
</div>
@endif
</div>
</div>

View File

@@ -0,0 +1,46 @@
@if(isset($video))
<form id="webmedit" method="POST" action="/index/{{$video->id}}">
{!! csrf_field() !!}
<div class="modal fade" id="webmeditmodal" tabindex="-1" role="dialog" aria-labelledby="Edit webm">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="filterModalTitle">Edit webm</h4>
</div>
<div class="modal-body frontendeditmodal">
<div class="form-group">
<div class="form-group">
<label for="imgsourceedit">Video Title</label>
<input class="form-control" type="text" name="videotitle" id="videotitleedit" value="{{ $video->videotitle or ''}}" placeholder="Video Title">
</div>
<label for="interpretedit">Artist</label>
<input class="form-control" type="text" name="interpret" id="interpretedit" value="{{ $video->interpret or ''}}" placeholder="Artist">
</div>
<div class="form-group">
<label for="songtitleedit">Songtitle</label>
<input class="form-control" type="text" name="songtitle" id="songtitleedit" value="{{ $video->songtitle or ''}}" placeholder="Songtitle">
</div>
<div class="form-group">
<label for="imgsourceedit">Video Source</label>
<input class="form-control" type="text" name="imgsource" id="imgsourceedit" value="{{ $video->imgsource or ''}}" placeholder="Video Source">
</div>
<div class="form-group">
<label for="categoryselect">Category</label>
<select class="form-control" name="category" id="categoryselect">
@foreach(\App\Models\Category::all() as $category)
<option value="{{$category->id}}" @if($video->category->id == $category->id) selected @endif>{{$category->name}}</option>
@endforeach
</select>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>
<input type="submit" class="btn btn-primary" value="Save">
</div>
</div>
</div>
</div>
</form>
@endif

View File

@@ -0,0 +1,22 @@
<script id="paginationtmpl" type="text/x-handlebars-template">
<nav class="mitte">
<ul class="pagination">
{{#paginate pagination type="first"}}
<li {{#if disabled}}class="disabled"{{/if}}><a href="#" data-page="{{n}}">First</a></li>
{{/paginate}}
{{#paginate pagination type="previous"}}
<li {{#if disabled}}class="disabled"{{/if}}><a href="#" data-page="{{n}}">&laquo;</a></li>
{{/paginate}}
{{#paginate pagination type="middle" limit="7"}}
<li {{#if active}}class="active"{{/if}}><a href="#" data-page="{{n}}">{{n}}</a></li>
{{/paginate}}
{{#paginate pagination type="next"}}
<li {{#if disabled}}class="disabled"{{/if}}><a href="#" data-page="{{n}}">&raquo;</a></li>
{{/paginate}}
{{#paginate pagination type="last"}}
<li {{#if disabled}}class="disabled"{{/if}}><a href="#" data-page="{{n}}">Last</a></li>
{{/paginate}}
</ul>
</nav>
<div class="clearfix"></div>
</script>

View File

@@ -0,0 +1,12 @@
<li role="presentation" class="layoutChanger" id="layoutSwitcher">
<a data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">
<span class="caret"></span> Layout
</a>
<ul class="dropdown-menu">
<div class="layoutblah">
<button class="layoutbutton" id="layout2">Njum</button>
<br>
<button class="layoutbutton" id="layout3">z0mb</button>
</div>
</ul>
</li>

View File

@@ -0,0 +1,25 @@
<div class="modal fade" id="loginmodal" tabindex="-1" role="dialog" aria-labelledby="Login">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="filterModalTitle">Login</h4>
</div>
<div class="login_wrapper">
<div class="col-md-9">
<form action="{{action('UserController@login')}}" method="post" class="navbar-form">
{!! csrf_field() !!}
<input type="text" name="identifier" placeholder="Username" class="form-control usernamelogin"><br>
<input type="password" name="password" placeholder="Password" class="form-control passwordlogin"><br>
<button type="submit" class="btn btn-primary">Login</button> <input id="rememberme" checked type="checkbox" name="remember"> <span id="rember">Remember me?</span>
</form>
</div>
</div>
<div class="modal-footer">
<p>Registration has been disabled and will stay closed until further notice.</p>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,31 @@
<script id="msglist" type="text/x-handlebars-template">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Messages</h3> <button class="btn btn-primary pull-right readall" onclick="readAll()">Read all</button>
</div>
<div class="list-group" id="listitems">
{{#each data as |value key|}}
<a href="#" data-index="{{key}}" data-id="{{id}}" class="list-group-item {{#unless read}}list-group-item-info{{/unless}}">{{subject}}</a>
{{else}}
<div class="list-group-item">No messages</div>
{{/each}}
</div>
{{#if total}}
<div class="panel-footer" id="pagination">
</div>
{{/if}}
</div>
</script>
<script id="msgtmpl" type="text/x-handlebars-template">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">{{subject}}</h3>
</div>
<div class="panel-body">
{{{content}}}
</div>
<div class="panel-footer"><time class="timeago" data-toggle="tooltip" datetime="{{created_at}}+0000" title="{{created_at}}+0000"></time></div>
</div>
</script>

View File

@@ -0,0 +1,55 @@
<nav class="navbar navbar-inverse navbar-static-top">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
@if(Auth::check())
<a class="navbar-brand" href="/main">
<img src="{{ asset('logo.svg') }}" alt="w0bm.com">
</a>
@else
<a class="navbar-brand" href="/">
<img src="{{ asset('logo.svg') }}" alt="w0bm.com">
</a>
@endif
</div>
<div class=" collapse navbar-collapse" id="bs-example-navbar-collapse-1">
@if(Auth::check())
<ul class="nav navbar-nav navbar-left">
<li><a href="{{url('categories')}}"><i class="fa fa-clone"></i><span class="hidden-sm"> Categories</span></a></li>
<li><a href="{{url('index')}}"><i class="fa fa-list"></i><span class="hidden-sm"> Index</span></a></li>
@include('partials.themechanger')
@endif
@if(Auth::check())
@include('partials.layoutchanger')
@endif
@include('partials.searchmodal')
<li><a href="#" data-toggle="modal" data-target="#searchmodal"><i class="fa fa-search"></i><span class="hidden-sm"> Find shit</span></a></li>
</ul>
@if(Auth::check())
<ul class="nav navbar-nav navbar-right">
<li><a href="{{url('messages')}}"><i class="fa fa-envelope"></i> <span class="badge message-badge">{{Auth::user()->messagesRecv()->unread()->count()}}</span></a></li>
<li><a href="#" data-toggle="modal" data-target="#filterselectmodal"><i class="fa fa-filter"></i><span class="hidden-sm"> Filter</span></a></li>
<li><a href="{{url('upload')}}"><i class="fa fa-cloud-upload"></i><span class="hidden-sm"> Upload</span></a></li>
<li><a href="{{url('user', Auth::user()->username)}}/favs"><i class="fa fa-heart"></i></a></li>
<li><a href="{{url('user', Auth::user()->username)}}"><i class="fa fa-user"></i> {{Auth::user()->username}}</a></li>
<li><a href="{{url('logout')}}"><i class="fa fa-sign-out"></i><span class="hidden-sm"> Logout</span></a></li>
</ul>
@else
<!-- Hier war mal der Login Kot -->
<ul class="nav navbar-nav navbar-right">
@if(Auth::check())
<li><a href="#" data-toggle="modal" data-target="#loginmodal"><i class="fa fa-sign-in"></i> Login</a></li>
@include('partials.loginmodal')
</ul>
@endif
@endif
</div>
</div>
</nav>

View File

@@ -0,0 +1,15 @@
<div class="page-header">
<h3 class="{{ $user->username }}">{!! rtrim(e($user->username) . ' ' . $user->activeIcon()) !!} <small>ID: {{ $user->id }}</small> @if($user->disabled && isset($user->banend) && (Carbon\Carbon::now() <= $user->banend || 1 >= $user->banend->timestamp)) <span style="color: grey; font-size: 15px;">(@if(Carbon\Carbon::now() <= $user->banend)Ban expires in <time class="timeago" data-toggle="tooltip" title="{{ $user->banend }}+0000" datetime="{{ $user->banend }}+0000"></time>@else permanently banned @endif)</span>@endif</h3>
<div class="admin-settings">
@if(auth()->check() && auth()->user()->can('edit_user'))<span id="pannade"><a href="#" data-toggle="modal" data-target="#banmenumodal"><i style="color:red;" class=""></i>[ban user]</a></span>
@endif
</div>
<span id="jointime">Joined: <time class="timeago" datetime="{{ $user->created_at }}+0000" title="{{ $user->created_at }}+0000" data-toggle="tooltip"></time></span>
<div class="profile-info">
<span id="count-upload"> <a href="/user/{{$user->username}}"> <i class="fa fa-cloud-upload"></i> {{ $user->uploads()->countScoped()->count() }} Uploads</a></span>
<span id="comments-user"> <a href="/user/{{$user->username}}/comments"><i class="fa fa-commenting"></i> {{ $user->comments()->count() }} Comments</a></span>
<span id="favs-user"><a href="/user/{{$user->username}}/favs/index"><i class="fa fa-heart"></i> {{ $user->favs()->countScoped()->count() }} Favorites</a></span>
</div>
</div>

View File

@@ -0,0 +1,62 @@
<div class="modal fade" id="registermodal" tabindex="-1" role="dialog" aria-labelledby="Register">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="filterModalTitle">Register</h4>
</div>
<div class="advantages">
<p>Registering on w0bm has some advantages...</p>
<p>With a account you can comment on WebMs, favor WebMs, upload WebMs, tag videos, filter out unwanted tags and watch NSFW WebMs!</p>
</div>
<div class="reg_wrapper">
<div class="register">
<div class="col-md-10">
<form class="form-horizontal" method="post" action="{{action('UserController@store')}}">
{!! csrf_field() !!}
<div class="form-group">
<div class="reg_username">
{!! Form::text('username', null, ['class' => 'form-control', 'placeholder' => 'Username']) !!}
</div>
</div>
<div class="form-group">
<div class="reg_password">
{!! Form::password('password', ['class' => 'form-control', 'placeholder' => 'Password']) !!}
</div>
</div>
<div class="form-group">
<div class="reg_password">
{!! Form::password('password_confirmation', ['class' => 'form-control', 'placeholder' => 'Password Confirmation']) !!}
</div>
</div>
<div class="form-group">
<div class="recaptcha">
{!! Recaptcha::render() !!}
</div>
</div>
<div class="form-group terms">
<div class="verify_rules">
<p><input type="checkbox" required name="terms"> I am at least 18 years or older and I have read and understand the <a href="/rules">Rules</a></p>
</div>
<div class="submit_registration">
<button type="submit" class="btn btn-primary">Register</button>
</div>
</div>
</form>
</div>
</div>
</div>
<div class="modal-footer">
<p>Back to <a href="#" data-toggle="modal" data-target="#loginmodal" data-dismiss="modal">Login?</a></p>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,40 @@
<!-- created by klee -->
@if(isset($video))
<form id="webmreport" method="POST" action="/report/{{$video->id}}">
{!! csrf_field() !!}
<div class="modal fade" id="webmreportmodal" tabindex="-1" role="dialog" aria-labelledby="Report webm">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="filterModalTitle">Report WebM</h4>
</div>
<div class="modal-body-report webmreportmodal">
So you want to report this webm? Tell us why:<br>
<br>
<div class="form-group">
<label for="reportReasons">
Reason(s)<br>
<em>(hold ctrl to select multiple)</em>
</label>
<select multiple class="form-control" id="reportReasons" name="reportReasons[]">
<option>Wrong rating (sfw/nsfw)</option>
<option>Shitpost</option>
<option>Low quality/effort video</option>
<option>Breaks a rule</option>
<option>Other</option>
<!-- breaks a rule, Wrong safe for rating -->
</select>
</div>
<label for="reportReasonText">Please explain a bit more detailed why you want to report this webm</label>
<textarea class="form-control" id="reportText" name="reportText" rows="3" required></textarea>
<p>Abuse of this form will be awarded with a permanent ban!</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Send Report</button>
</div>
</div>
</div>
</div>
</form>
@endif

View File

@@ -0,0 +1,10 @@
<div style="background:black;text-align:center;">
<span><a href="/blog">w0bm will turn 8 years old in a few months, thanks for all the great years!</a></span>
</div>
<div class="searchbar">
<form method="get" action="/main">
{!! Form::text('q', null, ['class' => 'suchleiste_video', 'placeholder' => 'Search w0bm.com']) !!}
<button type="submit" class="suchbutton_video"><i style="color:white;" class="fa fa-search"></i></button>
</form>
</div>

View File

@@ -0,0 +1,39 @@
<div class="modal fade" id="searchmodal" tabindex="-1" role="dialog" aria-labelledby="Login">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<div class="random_blah">
<?php
function random_array_picker($array) {
$count = count($array);
$random_index = rand(0, $count - 1);
return $array[$random_index];
}
$array = [
'We have the 👀',
'😂 We have funny videos',
'💎 We got gemmies',
'🤔 We dont even know man',
'🤮 we got this too',
'😎 we got the cool',
];
$random_element = random_array_picker($array);
echo "<h4 class='modal-title' id='filterModalTitle'>$random_element</h4>";
?>
</div>
</div>
<div class="searchbar">
<form method="get" action="/main">
{!! Form::text('q', null, ['class' => 'suchleiste_video', 'placeholder' => 'Search w0bm.com']) !!}
<button type="submit" class="suchbutton_video"><i style="color:white;" class="fa fa-search"></i></button>
</form>
</div>
<div class="modal-footer">
<i>& find some… </i>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,54 @@
<div class="tags hidden-xs">
<div class="tagtest">
@if(Auth::check())
<ul class="nav navbar-nav info-nav">
<label for="tag-add-toggle">
<li id="tagadder" class="addtagsy">[+Add Tag]</li>
</label>
<li class="addtagsy"><a href="/irc">IRC </a></li>
<li class="addtagsy"><a href="/about">About </a></li>
<li class="addtagsy"><a href="/contact">Contact </a></li>
<li class="addtagsy"><a href="/rules">Rules </a></li>
<li class="addtagsy"><a href="/stats">Stats</a></li>
<li class="addtagsy"><a href="/marderchen"></a></li>
</ul>
<input type="checkbox" id="tag-add-toggle">
<div id="tag-add">
<div class="input-group tag-input-open" style="margin-top: 4px;">
{{--<select multiple name="tags[]" data-role="tagsinput" class="form-control"></select>--}}
<input id="tags" type="text" class="" placeholder="Add new tag" name="tags" data-role="tagsinput">
<button href="/{{$video->id}}/tag" id="submittags" type="submit" class="">Submit</button>
</div>
</div>
@else
<ul class="nav navbar-nav info-nav">
<li class="addtagsy"><a href="/irc">IRC </a></li>
<li class="addtagsy"><a href="/about">About </a></li>
<li class="addtagsy"><a href="/contact">Contact </a></li>
<li class="addtagsy"><a href="/rules">Rules </a></li>
<li class="addtagsy"><a href="/stats">Stats</a></li>
<li class="addtagsy"><a href="/marderchen"></a></li>
</ul>
@endif
</div>
<div class="toggo tag-panel-body" style="">
<div id="tag-display" class="tag-panel-body">
@if(count($video->tags))
@foreach($video->tags as $tag)
<span class="label label-default"><a href="/main?q={{$tag->normalized}}" class="default-link">{{$tag->name}}</a>@if(Auth::check() && Auth::user()->can('edit_video')) <a class="delete-tag default-link" href="#"><i class="fa fa-times"></i></a>@endif</span>
@endforeach
@else
No tags yet ...
@endif
</div>
<div class="git">
<?php
$latestCommit = shell_exec('git log -n 1');
$getcommitID = substr($latestCommit,0,48);
$commitID = substr($getcommitID, 7);
echo "<a class='latestCommit' target='_blank' href='/git'>$commitID</a>"
?>
</div>
</div>
</div>

View File

@@ -0,0 +1,20 @@
<li role="presentation" class="">
<a data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">
<span class="caret"></span> Theme
</a>
<ul class="dropdown-menu">
<div id="switcher">
<button class="w0bmcustom-css" onclick="setActiveStyleSheet('w0bmcustom'); return false;">Default</button>
<br>
<button class="w0bm_override-css" onclick="setActiveStyleSheet('DARK'); return false;">DARK</button>
<br>
<button class="chilledblue-css" onclick="setActiveStyleSheet('Chilledblue'); return false;">Chilledblue</button>
<br>
<button class="xayd-css" onclick="setActiveStyleSheet('Xayd'); return false;">Xayd</button>
<br>
<button class="glitch-css" onclick="setActiveStyleSheet('Glitch'); return false;">Glitch</button>
<br>
<button class="epilepsie-css" onclick="alert('This theme can cause seizures and headaches, use with care!'); setActiveStyleSheet('Epilepsie'); return false;">Epilepsie</button>
</div>
</ul>
</li>

View File

@@ -0,0 +1,3 @@
<div class="thread_closed">
<span>Thread closed! ;__;</span>
</div>

View File

@@ -0,0 +1,4 @@
@if($video->interpret) Artist: {{ $video->interpret }}<br>@endif
@if($video->songtitle) Songtitle: {{ $video->songtitle }}<br>@endif
@if($video->imgsource) Video Source: {{ $video->imgsource }}<br>@endif
Category: {{ $video->category->name }}

View File

@@ -0,0 +1,26 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>Privacy</h3>
</div>
<div class="box">
<h5>What do we log?</h5>
<p>Our webserver does not log access log requests, we may log error logs from time to time if something breaks.</p>
<h5>3<sup>rd</sup> party links</h5>
<p>There are some 3rd party linkings on this website, be careful with clicking them we don't know whats inside the box blah blah blah, don't be stupid and don't trust the internet.</p>
<p>If you encounter a malicious link shared here on w0bm.com please notify an admin in the <a href="/irc">IRC</a></p>
<p>If you find a bug or a vulnerability, please notify an admin in the <a href="/irc">IRC</a></p>
<h5>Cookies</h5>
<p>Yes, we use cookies and if you don't like that don't come to our site! (or don't accept them in the first place) You can see the details of the cookies in your browser.</p>
<p>Spoiler: They are all relevant for the website to function properly!</p>
<ul>
<p>The following cookies are being set by the website:</p>
<li><code>remember_&lt;token&gt;</code> Well, it's used to remember you and so you don't have to re-login after like 5 minutes</li>
<li><code>style</code> This one is used to store your style preference</li>
<li><code>w0bm_session</code> Your session id</li>
<li><code>XSRF-TOKEN</code> The XSRF Token</li>
</ul>
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,36 @@
@extends('profilelayout')
@section('content')
@include('partials.profileheader')
<fieldset>
<legend><a href="/{{$user->baseurl()}}/">View {{ $title }}</a></legend>
<table class="table table-hover table-condensed">
<thead>
<tr>
<th>ID</th>
<th>Video Title</th>
<th>Artist</th>
<th>Songtitle</th>
<th class="hidden-xs">Video Source</th>
<th>Category</th>
</tr>
</thead>
<tbody>
@foreach($videos as $video)
<?php
$thumb = str_replace(".webm","",$video->file);
?>
<tr data-thumb="{{$thumb}}">
<td><a href="/{{$user->baseurl()}}/{{$video->id}}">{{$video->id}}</a></td>
<td>{{$video->videotitle or ''}}</td>
<td>{{$video->interpret or ''}}</td>
<td>{{$video->songtitle or ''}}</td>
<td class="hidden-xs">{{$video->imgsource or ''}}</td>
<td><a href="{{url($video->category->shortname)}}">{{$video->category->name}}</a></td>
</tr>
@endforeach
</tbody>
</table>
{!! $videos->render() !!}
</fieldset>
@endsection

View File

@@ -0,0 +1,74 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="theme-color" content="#161618">
<meta name="viewport"
content="width=device-width,initial-scale=1">
<meta charset="UTF-8">
<meta name="_token" content="{{csrf_token()}}">
<meta name="keywords" content="Random WebMs, WebMs, Internet Videos">
<link rel="icon" href="/favicon.png">
<title>w0bm.com - WebMs with sound!</title>
<link rel="stylesheet" href="/css/style.css">
<link rel="favicon"
type="image/ico"
href="favicon.ico" />
<link rel="stylesheet" href="/css/style.css">
<link rel="stylesheet" href="/css/w0bmfonts.css">
<link rel="stylesheet" href="/css/font-awesome.min.css">
<link rel="stylesheet" href="/css/bootstrap-tagsinput.css">
<link rel="stylesheet" href="/css/w0bmcustom.css?v={{ filemtime("css/w0bmcustom.css") }}">
@if(auth()->check())
<link rel="stylesheet" href="/css/video-js.min.css">
<link rel="stylesheet" href="/css/simplebar.css" />
<link rel="stylesheet" href="/css/vjsnew.css?v=1.1.1">
<link rel="alternate stylesheet" href="/css/w0bm_override.css?v={{ filemtime("css/w0bm_override.css") }}" title="DARK">
<link rel="alternate stylesheet" href="/css/chilledblue.css?v={{ filemtime("css/chilledblue.css") }}" title="Chilledblue">
<link rel="alternate stylesheet" href="/css/xayd.css?v={{ filemtime("css/xayd.css") }}" title="Xayd">
<link rel="alternate stylesheet" href="/css/glitch.css?v={{ filemtime("css/glitch.css") }}" title="Glitch">
<link rel="alternate stylesheet" href="/css/epilepsie.css?v={{ filemtime("css/epilepsie.css") }}" title="Epilepsie">
<script src="/js/styleswitcher.js"></script>
@else
@endif
</head>
<body>
@if(auth()->check())
@include('partials.handlebars')
@else
@endif
@if(auth()->check())
@include('partials.filterselect')
@if(isset($user) && auth()->user()->can('edit_user'))
@include('partials.banmenu')
@endif
@endif
@if(auth()->check())
<canvas id="bg" @if(!Session::get('background', true)) style="display: none;"@endif></canvas>
@else
@endif
@include('partials.navigation')
<div class="wrapper">
@yield('aside')
<div style="width: auto; overflow: hidden; position: relative;">
<div class="fucklaravel">
<noscript><div class="no-js-mode" style="position: fixed;bottom: 0;right: 0;">nojs</div></noscript>
@yield('content')
</div>
</div>
</div>
@if(auth()->check())
<script src="/js/jquery.min.js"></script>
<script src="/js/bootstrap.min.js"></script>
<script src="/js/bootstrap-tagsinput.min.js"></script>
<script src="/js/isotope.pkgd.min.js"></script>
<script src="/js/imagesloaded.pkgd.min.js"></script>
<script src="/js/handlebars.min.js"></script>
<script src="/js/jquery.timeago.js"></script>
<script src="/js/w0bmscript.js?v={{ filemtime("js/w0bmscript.js") }}"></script>
@else
@endif
</body>
</html>

View File

@@ -0,0 +1,39 @@
@extends('layout')
@section('content')
<div class="page-header">
<h3>Rulez</h3>
</div>
<div class="box">
<h5>General</h5>
<ol>
@foreach($generalrules as $rule)
<li>{{$rule->rule}}</li>
@endforeach
</ol>
</div>
<div class="box">
<h5>Uploading</h5>
<ol>
@foreach($uploadrules as $rule)
<li>{!!$rule->rule!!}</li>
@endforeach
</ol>
</div>
<div class="box">
<h5>Tagging</h5>
<ol>
@foreach($tagrules as $rule)
<li>{!!$rule->rule!!}</li>
@endforeach
</ol>
</div>
<div class="box">
<h5>Commenting</h5>
<ol>
@foreach($commentrules as $rule)
<li>{!!$rule->rule!!}</li>
@endforeach
</ol>
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,17 @@
@extends('profilelayout')
@section('content')
<h4>Layouts</h4>
<div class="box">
<h5>Change how you experience w0bm.com</h5>
<ul class="layout-ul">
<li><a class="nav-link layout1" style="font-size: 10px;" href="/api/user/layout?layout=1">w0bm</a>The default look</li>
<li><a class="nav-link layout2" style="font-size: 10px;" href="/api/user/layout?layout=2">Njum</a>Alternative approach</li>
<li><a class="nav-link layout3" style="font-size: 10px;" href="/api/user/layout?layout=3">z0mb</a>z0r.de layout + theme</li>
<li><a class="nav-link layout3" style="font-size: 10px;" href="/api/user/layout?layout=4">nojs</a>The nojs layout (broken)</li>
<li><a class="nav-link layout3" style="font-size: 10px;" href="/api/user/layout?layout=5">Mobile</a>The mobile optimized default layout</li>
<li><a class="nav-link layout3" style="font-size: 10px;" href="/api/user/layout?layout=6">Marderchen</a>This is marders Layout, it has no async js</li>
<li><a class="nav-link layout3" style="font-size: 10px;" href="/api/user/layout?layout=7">2017</a>The layout from 2017</li>
<li><a class="nav-link layout3" style="font-size: 10px;" href="/api/user/layout?layout=8">2015</a>The OG w0bm</li>
</ul>
</div>
@endsection

View File

@@ -0,0 +1,15 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>Stats</h3>
</div>
<div class="box">
<p class="user_count">Total amount of registered users: <amount>{{$user_count}}</amount> / 3000</p>
<p class="upload_count">Total amount of uploads: <amount>{{$upload_count}}</amount></p>
<p class="comment_count">Total amount of comments: <amount>{{$comment_count}}</amount></p>
<p class="latest-video">Latest video <a href="/{{$latest_video}}">/{{$latest_video}}</a></p>
<p class="newest_user">Newest user <a href="/user/{{$newest_user}}">/user/{{$newest_user}}</a></p>
<p class="dirsize">Total size of w0bm: <amount>{{$dirsize}}</amount></p>
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,76 @@
@extends('profilelayout')
@section('content')
<div class="uploadheader">
<h3 id="upheader">Upload</h3>
</div>
<div class="wrapper">
<div class="ulcontainer" style="white-space: nowrap; padding: 0px; height: 100%;">
<div class="form-group">
<div class="form-group">
<div class="">
{!! Form::text('videotitle', null, ['id' => 'videotitle', 'class' => 'form-control', 'placeholder' => 'Video Title']) !!}
</div>
</div>
<div class="">
{!! Form::text('interpret', null, ['id' => 'interpret', 'class' => 'form-control', 'placeholder' => 'Artist']) !!}
</div>
</div>
<div class="form-group">
<div class="">
{!! Form::text('songtitle', null, ['id' => 'songtitle', 'class' => 'form-control', 'placeholder' => 'Songtitle']) !!}
</div>
</div>
<div class="form-group">
<div class="">
{!! Form::text('imgsource', null, ['id' => 'imgsource', 'class' => 'form-control', 'placeholder' => 'Video Source']) !!}
</div>
</div>
<div class="form-group">
<div class="">
<?php
$categories = [];
foreach(App\Models\Category::all() as $cat)
$categories[$cat->id] = $cat->name;
?>
{!! Form::select('category', $categories, 8, ['id' => 'category', 'class' => 'form-control']) !!}
</div>
</div>
<div class="form-group">
<div class="blah">
{!! Form::checkbox('nsfw', 'true', false, ['id' => 'nsfw']) !!} <label id="nsfw" for="nsfw">NSFW?</label>
</div>
</div>
<div class="form-group">
<div class="ultags">
{!! Form::text('tags', null, ['id' => 'tags_upload', 'class' => 'form-control', 'placeholder' => 'Input tags...', 'name' => 'tags', 'data-role' => 'tagsinput']) !!}
</div>
</div>
<div class="form-group">
@include('partials.flash')
<br>
<div id="dragndrop" class="form-group col-md-3" data-uploadlimit="{{ isset($user) ? ($user->can('break_max_filesize') ? 'false' : 'true') : 'true' }}">
<a id="dragndrop-link" href="#">
<span style="display: table; width: 100%; height: 100%;">
<span id="dragndrop-text">
<i class="fa fa-cloud-upload"></i><br>
Drop or select WebM!
</span>
</span>
</a>
</div>
</div>
<div class="form-group">
<div class="col-md-12">
<button id="btn-upload" type="button" style="width: 100%; height: 40px;" class="btn btn-primary btn-sm"><span class="laz0r">Fire the laz0r</span>
<span class="" id="laz0r-fire"></span>
<span class="hidden-xs" id="shoop-laz0r"></span>
</button>
<p style="text-align:center; padding-top: 5px; white-space: normal;">Before you fire the laz0r make sure you have read the <a href="/rules">Rules</a>! <br><i>With great power comes great responsibility</i></p>
<p style="text-align:center; padding-top: 5px; white-space: normal;"><span id="big">10</span> uploads <span id="big">every 12 hours.</span> Maximum filesize: <span id="big">40MB.</span> Only <span id="big">.webm (vp8/vp9) with sound</span> allowed. Need <a href="/webm">help?</a></p>
</div>
</div>
<input name="file" type="file" class="hidden" accept=".webm"></input>
</div>
</div>
@endsection

View File

@@ -0,0 +1,125 @@
@extends('layout')
@section('content')
@if(auth()->check())
<?php $related = $related ?? null; ?>
<div class="vertical-align">
<div class="wrapper">
<div class="embed-responsive embed-responsive-16by9">
@if($video->id == '27204')
<iframe src="https://w0bm.com/loop/index.html"></iframe>
@else
<video id="video" loop controls preload="auto" crossorigin="anonymous" loading="lazy">
<source src="/b{{ "/" . $video->file }}">
</video>
@endif
@if($video->category->name === 'Anime' || $video->category->name === 'Otomad')
<div class="anime-thumb-opener hidden-xs"><i title="Generate Anime Thumbnail!" class="fa fa-file-image-o"></i></div>
<div style="display: none;" class="anime-thumb">
<span>Anime Thumbnail Generator v1.0 Alpha</span><br>
<img id="thumbnail_img" alt="Pause video to create thumb!"/><br>
<span>Right click <code>Copy Image</code> and paste it on <a href="https://trace.moe">trace.moe</a></span>
<canvas height="540" width="960" style="display: none;" id="thecanvas"></canvas>
<script src="/js/animethumbnailer.js"></script>
</div>
@endif
</div>
<?php
//$shortfile = str_replace(".webm", "" ,$video->file);
//$mp4 = shell_exec("curl https://fapple.w0bm.com/api/v1/{{$shortfile}} | jq -r .size");
?>
<div class="text-center" style="position: unset;">
@if($related)
@if(($prev = $video->getPrev($related)) === null)
<a class="first" href="#" style="visibility: hidden;">← first</a>
<a id="prev" href="#" style="visibility: hidden;">← prev</a> |
@else
<a class="first" href="{{url($related->baseurl(), $video->getFirstId($related))}}">← first</a>
<a id="prev" href="{{url($related->baseurl(), [$prev->id])}}">← prev</a> |
@endif
<a href="{{url($related->baseurl())}}">{!!$related->displayName()!!}</a>
@if(($next = $video->getNext($related)) === null)
| <a id="next" href="#" style="visibility: hidden;">next →</a>
<a class="last" href="#" style="visibility: hidden;">last →</a>
@else
| <a id="next" href="{{url($related->baseurl(), [$next->id])}}">next →</a>
<a class="last" href="{{url($related->baseurl(), $video->getLastId($related))}}">last →</a>
@endif
@else
@if(($prev = $video->getPrev()) === null)
<a class="first" href="#" style="visibility: hidden;">← first</a>
<a id="prev" href="#" style="visibility: hidden;">← prev</a> |
@else
<a class="first" href="{{url($video->getFirstId())}}">← first</a>
<a id="prev" href="{{url($prev->id)}}">← prev</a> |
@endif
<a href="{{url('/')}}">random</a>
@if(($next = $video->getNext()) === null)
| <a id="next" href="#" style="visibility: hidden;">next →</a>
<a class="last" href="#" style="visibility: hidden;">last →</a>
@else
| <a id="next" href="{{url($next->id)}}">next →</a>
<a class="last" href="{{url($video->getLastId())}}">last →</a>
@endif
@endif
</div>
</div>
</div>
@endsection
@section('aside')
<aside id="sidebar" class="aside panel hidden-xs">
@include('partials.flash')
@include('partials.comments')
@include('partials.tags')
</aside>
@else
<div class="centered">
<div class="modal-content col-md-5">
<div class="modal-header">
<h4 class="modal-title" id="filterModalTitle">Login</h4>
</div>
@include('partials.flash')
<div class="login_wrapper">
<div class="col-md">
<form action="{{action('UserController@login')}}" method="post" class="navbar-form">
{!! csrf_field() !!}
<input type="text" name="identifier" placeholder="Username" class="form-control usernamelogin"><br>
<input type="password" name="password" placeholder="Password" class="form-control passwordlogin"><br>
<button type="submit" class="btn btn-primary">Login</button> <input style="vertical-align: unset;" id="rememberme" checked type="checkbox" name="remember"> <span id="rember">Remember me?</span>
</form>
</div>
</div>
<div class="media not-logged-in">
<div class="media-left">
@if($sfw)
<img class="media-object" src="/thumbs/beta/{{str_replace('.webm','',$video->file)}}.png">
@else
<img class="media-object" src="/thumbs/blurred/{{str_replace('.webm','',$video->file)}}_blurred.png">
@endif
</div>
<div class="media-koerper">
<h4 class="media-heading">
@if($video->videotitle){{$video->videotitle}}
@else
<p><i>No Title</i></p></h4>
@endif</h4>
<div id="tag-display" style="width: auto; height: auto;" class="tag-panel-body">
@if(count($video->tags))
@foreach($video->tags as $tag)
<span class="label label-default"><a class="default-link">{{$tag->name}}</a></span>
@endforeach
@else
No tags yet ...
@endif
</div>
</div>
</div>
<div class="modal-footer">
<a href="/privacy">Privacy</a> | <a href="/contact">Contact</a> | <a href="/irc">IRC</a>
</div>
</div>
</div>
@endif
@endsection

View File

@@ -0,0 +1,61 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>WebM Support</h3>
<p>How 2 make a webm</p>
</div>
<div class="box">
<h4>Chad <small>(not afraid of using the command line)</small></h4>
<img src="/images/gigachad.png" style="float:left;width:150px;" alt="gigachad">
<pre><code>#The based white man way
ffmpeg -i virgin.mp4 chad.webm #single file, very simple
#You can add this to your .bashrc
function mkwebmbatch() {
for i in *.$1;
do name=`basename "$i" .$1`
echo "$name"
ffmpeg -i "$i" -c:v libvpx -c:a libvorbis -auto-alt-ref 0 -crf 5 "$PWD/${name}.webm"
done
}
function mkwebm() {
filename=$(basename -- "$1")
extension="${filename##*.}"
filename="${filename%.*}"
name=`basename "$filename" .$extension`
echo "$name"
ffmpeg -i "$1" -c:v libvpx -c:a libvorbis -auto-alt-ref 0 -crf 5 "$HOME/Videos/converts/$name.webm"
}
function stillvid() {
#stillvid image.jpg music.mp3 $3.<webm>
ffmpeg -i "$1" -i "$2" -c:a libvorbis -auto-alt-ref 0 -c:v libvpx $3.webm
}
#Notable mentions
* https://github.com/ekisu/mpv-webm
* https://github.com/Kagami/webm.py
# If using webm.py a good line to get a high quality video would be
# (assuming you have it in your path)
webm -i virgin.mp4 -l 40 chad.webm #this will produce a vp9 webm with decent image quality
</code></pre>
</div>
<h1 style="text-align:center;">VS</h1>
<div class="box">
<h4>Virgin</h4>
<img src="/images/virgin.png" style="float:left;width:150px;" alt="gigachad">
<ul>
<li><a href="https://github.com/Kagami/boram">Boram by Kagami</a></li>
<li><a href="https://gitgud.io/nixx/WebMConverter">WebMConverter by nixx!</a></li>
</ul>
</div>
@endsection