w0bm.com v1.5z FULL.RETARD.BUILD.BUT.STILL.WORKS

This commit is contained in:
noxy
2019-08-26 16:58:26 +00:00
commit da71b95aa2
517 changed files with 143236 additions and 0 deletions

View File

@@ -0,0 +1,108 @@
@extends('profilelayout')
@section('novidcontent')
<?php $comment = config('comments'); ?>
<div class="page-header">
<h3>About</h3>
</div>
<div class="box">
<h4>What is w0bm.com?</h4>
<ul>
<li>w0bm.com is a collaborative, non-profit, modern WebM Archive</li>
<li>We collect random videos from the internet.</li>
<li>It's also about having fun and sharing nice videos</li>
</ul>
</div>
<div class="box">
<h4>Following shortcuts are available:</h4>
<ul class="strong-colored">
<li>Press: <strong>R</strong> for random</li>
<li>Press: <strong>→</strong>, <strong>D</strong> or <strong>L</strong> for next</li>
<li>Press: <strong>←</strong>, <strong>A</strong> or <strong>H</strong> for prev</li>
<li>Press: <strong>↑</strong> or <strong>W</strong> for volume up</li>
<li>Press: <strong>↓</strong> or <strong>S</strong> for volume down</li>
<li>Press: <strong>F</strong> for fav</li>
<li>Scroll with your mouse up and down to trigger next or prev</li>
<li>Press: <strong>C</strong> to toggle the comment section</li>
<li>Press: <strong>SPACE</strong> to pause/unpause the video</li>
</ul>
</div>
<div class="box">
<h4 class="filtersettings">Filter settings</h4>
<p style="color:red;">Filter is now global and not logged in users will only see sfw videos</p>
<p>You can also set your own custom filters by clicking on Filter and then inserting the tags you don't want to see while browsing.</p>
<p>Example:</p>
<div class="about-tags">
<span class="tag label label-info">anime</span> <span class="tag label label-info">asians</span> <span class="tag label label-info">Crayon Pop</span> <span class="tag label label-info">gay</span>
</div>
<p>You will see that our videos are tagged with either <span class="label label-default" style="color:#23ff00">sfw</span> or <span class="label label-default" style="color:red">nsfw</span> these labels mean in nearly 99% of the case at least for uploads tagged with nsfw that they are nsfw, but the sfw tag isn't always sfw and you shouldn't think that we really care about this, there is probably a lot of content which is not tagged as nsfw but still is nsfw.</p>
<p>Always take care and when you are not sure if you can browse w0bm at work, don't do it, we don't guarantee that everything is properly tagged and you will encounter something that can get you in trouble.</p>
</div>
<div class="box">
<h4 class="mods">Need one of our professionals?</h4>
<p>Our Mods work 24/7/365 for free and are basically just here to delete your reposts</p>
<p>Contact them if you need them:</p>
<ul class="mötter">
<li><a href="/user/belst">belst</a></li>
<li><a href="/user/gz">gz</a></li>
<li><a href="/user/Flummi">Flummi</a></li>
<li><a href="/user/jkhsjdhjs">jkhsjdhjs</a></li>
<li><a href="/user/Alucard">Alucard</a></li>
<li><a href="/user/flinny">flinny</a></li>
<li><a href="/user/milste">milste</a></li>
</ul>
<p>Mods can be contacted either via <code>@$modname</code> in the comments or via <a href="/irc">IRC</a></p>
</div>
<div class="box">
<h4 id="format">Comment formatting</h4>
<ul>
<li>>mfw w0bm is nice :3 will become: <span style="color:#80FF00;">>mfw w0bm is nice :3</span></li>
<li>[reich]Pantsu Pantsu Pantsu[/reich] will become: <span class="reich">Pantsu Pantsu Pantsu</span></li>
<li>[krebs]KREBS KREBS KREBS KREBS[/krebs] will become: <span class="anim">KREBS KREBS KREBS KREBS</span></li>
<li>[rb]JA GEIL SCHNITZEL MHM JA!!!![/rb] will become: <span class="rainbow">JA GEIL SCHNITZEL MHM JA!!!!</span></li>
<li>[spoiler]f0ck you![/spoiler] will become: <span class="spoiler">f0ck you!</span></li>
<li>*gg* or _gg_ will become: <em>gg</em></li>
<li>**gg** or __gg__ will become: <strong>gg</strong></li>
<li>~~nope~~ will become: <del>nope</del></li>
<li>`code` will become: <code>code</code></li>
<li>--- will insert a line<hr>to seperate</li>
</ul>
<p>This cannot be stacked, don't do it.</p>
<p>If you want to answer someone, simply use <code>^</code> as often as you need to point to the comment you want to answer to.</p>
<p>If you want to ping someone directly in a comment use <code>@$user</code></p>
</div>
<div class="box">
<h4>Allowed sources for image parsing in the comment section</h4>
<p>Filetypes: {{ join(',', $comment['allowedImageFileExtensions']) }} - only secure https links will work!</p>
<ul>
@foreach(array_keys($comment['allowedHosters']) as $hoster)
@if($hoster != '')
<li><a href="https://{{$hoster}}">{{$hoster}}</a></li>
@endif
@endforeach
</ul>
</div>
<div class="box">
<h4>FAQ</h4>
<p>Q: w0bm is laggy for me and I don't know why.</p>
<p>A: It's mostly because of the background. It's very resource heavy and can cause lag on some computers, if you experience this, you should click the yellow circle on the video page to turn it off <i style="color:#fff200;" class="fa fa-adjust"></i></p>
<p>Q: I don't know how to create WebMs</p>
<p>A: Check out our <a href="/webm">WebM support</a> page and pick the solution you like the most!</p>
<p>Q: Can you allow mp4s to be uploaded?</p>
<p>A: Why do you think this website is called w0bm?</p>
<p>Q: I want to give you guys some feedback and maybe some suggestions, where should I go?</p>
<p>A: The best way to suggest something is by contacting us directly via <a href="/irc">IRC</a></p>
</div>
<div class="box">
<h5>Disclaimer:</h5>
<p>Content on this page must not necessarily reflect the actual views of the administration.</p>
<p>Please note this, we try to be very open to any content, also content that is disturbing or otherwise unliked by most people, we do this for the sake of the freedom to shitpost even critical stuff, please check the filter settings if you get upset easily and filter out unwanted videos, thanks!</p>
</div>
@endsection

View File

@@ -0,0 +1,24 @@
@extends('profilelayout')
@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>Your ban is permanent fool and will <b>NOT</b> expire!</p>
<video class="banwidth" autoplay loop src="https://b.w0bm.com/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>
<img class="banwidth" src="otter-ban.png">
@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,20 @@
@extends('profilelayout')
@section('novidcontent')
<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 . '.png') }}" 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,5 @@
@extends('layout')
@section('content')
<div class="page-header">
<h1>Registration closed - check back later</h1>
@endsection

View File

@@ -0,0 +1,24 @@
@extends('profilelayout')
@section('novidcontent')
@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,29 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>Professional Support</h3>
</div>
<div class="box">
<img src="/images/cockfag.png" style="margin-left: 10px; width: 15%; height: 15%; float:right;">
<h4>Contact</h4>
<ul>
<li>Contact via IRC: <a href="https://webirc.n0xy.net/?join=%23w0bm">#w0bm on n0xy.net</a></li>
</ul>
<div class="wrap-collabsible">
<input id="collapsible" class="toggle" type="checkbox">
<label for="collapsible" class="lbl-toggle">More Info & Email Contact</label>
<div class="collapsible-content">
<div class="content-inner">
<p>
<span>Need something? Let's talk then!</span>
</p>
<p>Email: <a href="mailto:admin@w0bm.com">admin [ät] w0bm [dotto] com</a>
</div>
</div>
</div>
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,87 @@
@extends('layouts.app')
@section('jumbotron')
<div class="jumbotron">
<div class="container">
<h1>Contact HackerPair</h1>
<h2>Your message will be delivered to our clandestine team</h2>
</div>
</div>
@endsection
@section('content')
<div class="row" style="margin-top: 25px;">
<div class="col-md-4 col-sm-12">
<div class="card">
<div class="card-body">
<div class="card-title map">
<gmap-map
:center="{lat: 38.871026, lng: -77.055959}"
:zoom="13"
:options="{styles: mapStyles, streetViewControl: false, zoomControl: false, mapTypeControl: false}"
map-type-id="roadmap"
style="width: 100%; height: 300px;"
>
</gmap-map>
<ul class="list-group list-group-flush">
<li class="list-group-item" style="border: none;">
<span class="fa fa-building" style="color: #FFC200; padding-right: 5px;" aria-hidden></span>
Group 9
</li>
<li class="list-group-item" style="border: none;">
<span class="fa fa-map" style="color: #FFC200; padding-right: 5px;" aria-hidden></span>
Classified
</li>
<li class="list-group-item" style="border: none;">
<span class="fa fa-map-signs" style="color: #FFC200; padding-right: 5px;" aria-hidden></span>
Classified
<li class="list-group-item" style="border: none;">
<span class="fa fa-calendar" style="color: #FFC200; padding-right: 5px;" aria-hidden></span>
support@hackerpair.com
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="col-md-8 col-sm-12">
<p>
Send us your questions, comments, and suggestions and someone will be in touch within
24 hours.
</p>
{!! Form::open(['route' => 'contact.store']) !!}
<div class="form-group">
{!! Form::label('name', 'Your Name') !!}
{!! Form::text('name', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('email', 'E-mail Address') !!}
{!! Form::text('email', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('msg', 'Message') !!}
{!! Form::textarea('msg', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
</div>
{!! Form::submit('Submit', ['class' => 'btn btn-info']) !!}
{!! Form::close() !!}
<br />
</div>
</div>
@endsection

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html>
<html>
<head>
<title>Laravel 5.4 Cloudways Contact US Form Example</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<h1>Contact US Form</h1>
@if(Session::has('success'))
<div class="alert alert-success">
{{ Session::get('success') }}
</div>
@endif
{!! Form::open(['route'=>'contactus.store']) !!}
<div class="form-group {{ $errors->has('name') ? 'has-error' : '' }}">
{!! Form::label('Name:') !!}
{!! Form::text('name', old('name'), ['class'=>'form-control', 'placeholder'=>'Enter Name']) !!}
<span class="text-danger">{{ $errors->first('name') }}</span>
</div>
<div class="form-group {{ $errors->has('email') ? 'has-error' : '' }}">
{!! Form::label('Email:') !!}
{!! Form::text('email', old('email'), ['class'=>'form-control', 'placeholder'=>'Enter Email']) !!}
<span class="text-danger">{{ $errors->first('email') }}</span>
</div>
<div class="form-group {{ $errors->has('message') ? 'has-error' : '' }}">
{!! Form::label('Message:') !!}
{!! Form::textarea('message', old('message'), ['class'=>'form-control', 'placeholder'=>'Enter Message']) !!}
<span class="text-danger">{{ $errors->first('message') }}</span>
</div>
<div class="form-group">
<button class="btn btn-success">Contact US!</button>
</div>
{!! Form::close() !!}
</div>
</body>
</html>

View File

@@ -0,0 +1,5 @@
@extends('profilelayout')
@section('novidcontent')
<p>Video deleted by admin</p>
<p>Given reason: </p>
@endsection

View File

@@ -0,0 +1,10 @@
You received a message from : {{ $name }}
<p>
Name: {{ $name }}
</p>
<p>
Email: {{ $email }}
</p>
<p>
Message: {{ $user_message }}
</p>

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('profilelayout')
@section('novidcontent')
<div class="notfound">
<h1>404 - NOT FOUND</h1>
<img id="notfound-img" src="/404.gif">
</div>
@endsection

View File

@@ -0,0 +1,47 @@
@extends('profilelayout')
@section('novidcontent')
<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;
}
.block {
overflow: auto;
word-break: break-all;
max-height: 500px;
}
</style>
<h5>l0l! 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>
@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">
<a href="/about">About</a> | <a href="/rules">Rules</a> | <a href="/contact">Contact</a> | <a href="/privacy">Privacy</a> | <a href="/transparency">Transparency</a> | <a href="/friends">Friends</a> | <a href="/stats">Stats</a>
<p>Inspired by <a href="http://z0r.de">z0r.de</a> | © 2015 {{ date('Y') }} w0bm.com</p>
</div>
</nav>

View File

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

View File

@@ -0,0 +1,80 @@
@extends('profilelayout')
@section('novidcontent')
<div class="page-header">
<h3 id="index">Index</h3>
<form method="get" class="d-block d-sm-none">
<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="">
{!! $videos->render() !!}
</div>
@endsection

View File

@@ -0,0 +1,54 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="_token" content="{{csrf_token()}}">
<meta name="keywords" content="Random WebMs, WebMs, Internet Videos">
<link rel="icon" href="/favicon.png">
<title>@if(isset($video)){{ $video->id }} -@endif w0bm.com</title>
<link rel="stylesheet" type="text/css" href="/njum/css/magic.css">
<link rel="stylesheet" type="text/css" href="/njum/css/bootstrap-tagsinput.css">
<link rel="stylesheet" type="text/css" href="/css/font-awesome.min.css">
<link rel="stylesheet" type="text/css" href="/njum/css/bootstrap-dark.css">
<link rel="stylesheet" type="text/css" href="/njum/css/cstms.css">
</head>
<body>
@if(auth()->check())
@include('partials.report')
@include('partials.filterselect')
@endif
@if(auth()->check())
@if(auth()->user()->can('delete_video'))
@include('partials.frontendedit')
@endif
@endif
<canvas id="bg" class="hidden-xs"></canvas>
<div class="container-fluid row p-0" id="wrapper">
<div class="col-sm scrollable hidden-xs p-0"></div>
<div class="container p-0">
<div class="col-md p-0">
@include('partials.navigation')
@include('partials.flash')
@yield('floatvid')
@include('partials.comments')
</div>
<div class="col-sm scrollable p-0"></div>
</div>
<wip>v.1.{{ filemtime("njum/css/cstms.css") }} WIP</wip>
<div class="col-sm scrollable hidden-xs p-0"></div>
</div>
</body>
<script type="text/javascript" defer src="/njum/js/jquery.min.js"></script>
<script type="text/javascript" defer src="/njum/js/jquery.timeago.js"></script>
<script type="text/javascript" defer src="/njum/js/popper.min.js"></script>
<script type="text/javascript" defer src="/njum/js/bootstrap.min.js"></script>
<script type="text/javascript" defer src="/njum/js/bootstrap-tagsinput.min.js"></script>
<script type="text/javascript" defer src="/njum/js/newscript.js"></script>
<script src="/njum/js/sticky_video.js"></script>
<script>
// Initialize
//new StickyVideo('sticky-container')
</script>
</html>

View File

@@ -0,0 +1,12 @@
@extends('profilelayout')
@section('novidcontent')
@include('partials.flash')
<form action="{{action('UserController@login')}}" method="post" class="form-signin">
{!! csrf_field() !!}
<input type="text" name="identifier" placeholder="Username" class="form-control">
<input type="password" name="password" placeholder="Password" class="form-control">
<input type="checkbox" name="remember" checked> Remember me<br>
<button type="submit" class="btn btn-dark">Login</button>
<a href="{{url('register')}}" class="btn btn-success">Register</a>
</form>
@endsection

View File

@@ -0,0 +1,21 @@
@extends('profilelayout')
@section('novidcontent')
<div class="pagination">
{!! $videos->render() !!}
</div>
<div class="gallery">
@foreach($videos as $video)
<?php
$thumb = str_replace(".webm","",$video->file);
?>
<div class="gallery_item"">
<a href="/{{$video->id}}"><img src="/thumbs/beta/{{$thumb}}.png" class="gallery__img" alt="Image 1"></a>
</div>
@endforeach
</div>
@endsection

View File

@@ -0,0 +1,13 @@
@extends('profilelayout')
@section('novidcontent')
@include('partials.msglist')
<div class="row">
<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,42 @@
<ul class="nav">
<div class="card">
<a class="badge badge-sexy">{{$video->id}}</a>
@if(count($video->tags))
@foreach($video->tags as $tag)
@if($tag == 'sfw')
<a class="badge badge-success isSfw">SFW</a>
@elseif($tag == 'nsfw')
<a class="badge badge-danger isNsfw">NSFW</a>
@endif
@endforeach
@endif
</div>
@if(auth()->check())
@if(auth()->user()->hasFaved($video->id))
<form action="{{url($video->id . '/fav')}}">
<a hidden id="hidden-fav" href="{{url($video->id . '/fav')}}"></a>
<button type="submit" id="fav" class="btn btn-dark" fav-data="{{url($video->id . '/fav')}}"><i class="fa fa-heart fa-lg"></i></button>
</form>
@else
<form action="{{url($video->id . '/fav')}}">
<a hidden id="hidden-fav" href="{{url($video->id . '/fav')}}"></a>
<button type="submit" id="fav" class="btn btn-dark bg-toggle"><i class="fa fa-heart-o fa-lg"></i></button>
</form>
@endif
@else
@endif
<li class="nav-link" data-trigger="hover" data-toggle="popover" data-content="Toggle Videoblur" data-placement="bottom">
<button type="button" class="btn btn-dark" id="togglebg"><i class="fa fa-power-off fa-lg"></i></button>
</li>
<li class="nav-link" data-trigger="hover" data-toggle="popover" data-content="Metadata" data-placement="bottom">
<button type="button" class="btn btn-dark metadata-button bg-toggle" data-container="body" data-toggle="popover" data-placement="bottom" data-html="true" data-container="body">
<i class="fa fa-lg fa-info-circle"></i>
</button>
<div id="popover-content" hidden>
@include('video-partials.popover-metadata')
</div>
</li>
</ul>

View File

@@ -0,0 +1,4 @@
#!/bin/bash
cd /home/sirx/web/w0bm.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="comment 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,16 @@
<div id="sticky">
<div id="commentForm">
<form action="{{action('CommentController@store', ['id' => $video->id])}}" method="post">
{!! csrf_field() !!}
<div class="comment-panel panel-default">
<div class="comment-panel panel-body">
{!! Form::textarea('comment', null, ['placeholder' => 'Write something useful', 'id' => 'cinput', 'class' => 'form-control bg-´dark text-light comment-entry-textarea', 'required' => 'required']) !!}
</div>
<div class="commentButton">
<div id="comment_tools" class="commentform-panel-footer"><button type="submit" class="btn btn-primary btn-sm">Post</button>
</div>
</div>
</div>
</form>
</div>
</div>

View File

@@ -0,0 +1,27 @@
@if(Auth::check())
<div class="commentOpener">
<a class="commentOpenButton" data-toggle="collapse" href="#collapseComments" role="button" aria-expanded="false" aria-controls="collapseComments">
See {{ $video->comments()->count() }} comments
</a>
</div>
<div class="collapse" id="collapseComments">
<div class=" commentwrapper comments">
<?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! Be the first one to comment!<br />
</div>
</div>
@endif
</div>
@include('partials.commentform')
</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 class="form-control" 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,6 @@
@if(auth()->check())
@include('partials.filterselect')
@if(isset($video) && (auth()->user()->can('edit_video') || auth()->user()->id == $video->user_id))
@include('partials.frontendedit')
@endif
@endif

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,3 @@
<nav class="navbar navbar-dark bg-dark">
<h5>LOL</h5>
</nav>

View File

@@ -0,0 +1,52 @@
@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">
<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 class="form-group">
<label for="tageditor">Add Tags</label>
@include('partials.tags')
</div>
<div class="deleteit">
@endif @if(auth()->check() && auth()->user()->can('delete_video'))<a class="delete_video" href="#"><i class="fa fa-trash fa-lg"></i> Remove upload</a>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Save changes</button>
</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,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 due to multiple spammers, if you want an account, please apply for it in the <a href="/irc">IRC</a>, thanks!</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-messages">
<h3 class="panel-title">Messages</h3> <button class="btn btn-dark 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,63 @@
<nav class="navbar navbar-expand-lg navbar-dark bg-dark rounded-bottom sticky-top">
<div class="w0bm-logo">
<a class="navbar-brand" href="/">
<img data-toggle="popover" data-trigger="hover" data-placement="left" data-content="0tter 5h1t" id="logo" src="https://w0bm.com/w0bm_mosh_banner_by_marderchen.gif" class="d-inline-block align-top" alt="w0bm.com">
</a>
</div>
<ul class="navbar-nav mr-auto">
@if (!empty($__env->yieldContent('novidcontent')))
@else
@endif
@if(Auth::check())
<li class="nav-link dropdown">
<button id="nav-user" class="btn btn-dark nav-link bg-toggle dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span><i class="fa fa-user fa-lg"></i> {{Auth::user()->username}}</span>
</button>
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<div class="">
<a class="dropdown-item" href="{{url('user', Auth::user()->username)}}">{{Auth::user()->username}}</a>
<a class="dropdown-item" href="{{url('messages')}}"><span class=""><i class="fa fa-envelope-square"></i> {{Auth::user()->messagesRecv()->unread()->count()}}</span></a>
<a class="dropdown-item" href="#" data-toggle="modal" data-target="#filterselectmodal">Filter</a>
<a class="dropdown-item" href="{{url('upload')}}">Upload</a>
</div>
<a class="dropdown-item" href="{{url('logout')}}">Logout</a>
</div>
@else
@endif
</li>
@if(Auth::check())
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Links
</a>
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="/index">Index</a>
<a class="dropdown-item" href="/categories">Categories</a>
<a class="dropdown-item" href="/about">About</a>
<a class="dropdown-item" href="/stats">Stats</a>
</div>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Layout
</a>
<div id="layoutSwitcher" class="dropdown-menu" aria-labelledby="navbarDropdown">
<a class="dropdown-item" id="layout1" href="#">w0bm.com</a>
<a class="dropdown-item" id="layout3" href="#">z0mb</a>
</div>
</li>
</ul>
@else
@endif
<div class="search-index hidden-xs d-none d-md-block">
<form method="get" action="/index" class="form-inline my-2 my-lg-0">
{!! Form::text('q', isset($q) ? $q : null, ['class' => 'form-control mr-sm-2 search-input text-light', 'placeholder' => 'Search w0bm.com']) !!}
<button class="btn btn-dark" type="submit">Search</button>
</form>
</div>
</nav>

View File

@@ -0,0 +1,15 @@
<div class="page-header">
<h3 class="{{ $user->username }}">{!! rtrim(e($user->username) . ' ' . $user->activeIcon()) !!} @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 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,39 @@
<div class="tags">
<div class="tagtest">
@if(Auth::check())
<div id="tag-add">
<div class="row">
<div class="col tag-col">
<div class="input-group">
{{--<select multiple name="tags[]" data-role="tagsinput" class="form-control"></select>--}}
<input id="tags" type="text" class="form-control" placeholder="Input tags…" name="tags" data-role="tagsinput">
<span class="input-group-btn"></span>
</div>
</div>
</div>
<div class="sendtags">
<button href="/{{$video->id}}/tag" id="submittags" type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
@else
@endif
</div>
<label for="manage-tags">Manage Tags</label>
<div class="toggo tag-panel-body">
<div id="tag-display" class="tag-panel-body">
@if(count($video->tags))
@foreach($video->tags as $tag)
@if($tag == 'sfw')
<span class="badge badge-success"><a href="/index?q={{$tag->normalized}}" class="badge badge-success">{{$tag->name}}</a>@if(Auth::check() && Auth::user()->can('edit_video')) <a class="delete-tag badge badge-success" href="#"><i class="fa fa-times"></i></a></span>@endif
@elseif($tag == 'nsfw')
<span class="badge badge-danger"><a href="/index?q={{$tag->normalized}}" class="badge badge-danger">{{$tag->name}}</a>@if(Auth::check() && Auth::user()->can('edit_video')) <a class="delete-tag badge badge-danger" href="#"><i class="fa fa-times"></i></a></span>@endif
@else
<span class="badge badge-secondary"><a href="/index?q={{$tag->normalized}}" class="badge badge-secondary">{{$tag->name}}</a>@if(Auth::check() && Auth::user()->can('edit_video')) <a class="delete-tag badge badge-secondary" href="#"><i class="fa fa-times"></i></a></span>@endif
@endif
@endforeach
@else
No tags yet ...
@endif
</div>
</div>
</div>

View File

@@ -0,0 +1,18 @@
<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="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,20 @@
<div class="vidinfo">
<button title="Toggle Background" class="hidden-xs bg-toggle" id="togglebg">BG</button>
<div class="favbutton">
@if(auth()->check())
@if(auth()->user()->hasFaved($video->id))
<a id="fav" href="{{url($video->id . '/fav')}}">UNFAV</a>
@else
<a id="fav" href="{{url($video->id . '/fav')}}">FAV</a>
@endif
@else
<a href="{{url($video->id . '/fav')}}">FAVED</a>
@endif
</div>
<div style='word-break: break-word;'>@if($video->interpret) <strong>Artist:</strong> {{$video->interpret}}<br>@endif
@if($video->songtitle) <strong>Songtitle:</strong> {{$video->songtitle}}<br>@endif
@if($video->imgsource) <strong>Video Source:</strong> {{$video->imgsource}} <br>
@endif
<strong>Category:</strong> {{$video->category->name}}</div>
<span id="uploader">uploaded by <a 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
</div>

View File

@@ -0,0 +1,35 @@
<div class="text-center">
@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>

View File

@@ -0,0 +1,18 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>Privacy</h3>
</div>
<div class="box">
<h5>What do we log?</h5>
<p>We ourself don't log anything, cloudflare does log all the request that are being made to our site, we can however only access very little of it, no ips and only basic stats.</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 IRC.</p>
<p>We also use a webfont from google fonts, if you don't like that go fuck yourself or block it with umatrix.</p>
<h5>Cookies</h5>
<p>Yes, we use cookies if you don't like that don't come to our site! (or don't accept them in the first place)</p>
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,35 @@
@extends('profilelayout')
@section('novidcontent')
@include('partials.profileheader')
<div class="profilheader">
<a href="/{{$user->baseurl()}}/">View {{ $title }}</a>
</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}}">
<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() !!}
@endsection

View File

@@ -0,0 +1,40 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="_token" content="{{csrf_token()}}">
<meta name="keywords" content="Random WebMs, WebMs, Internet Videos">
<link rel="icon" href="/favicon.png">
<title>www</title>
<link rel="stylesheet" type="text/css" href="/njum/css/bootstrap-dark.css">
<link rel="stylesheet" type="text/css" href="/njum/css/bootstrap-tagsinput.css">
<link rel="stylesheet" type="text/css" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" type="text/css" href="/njum/css/simplebar.css" />
<link rel="stylesheet" type="text/css" href="/njum/css/cstms.css">
</head>
<body>
@include('partials.handlebars')
@if(auth()->check())
@include('partials.filterselect')
@if(isset($user) && auth()->user()->can('edit_user'))
@include('partials.banmenu')
@endif
@endif
<div data-simplebar class="container-fluid">
<div class="container">
@include('partials.navigation')
@yield('novidcontent')
<wip>v.1.{{ filemtime("njum/css/cstms.css") }} WIP</wip>
</div>
</div>
</body>
<script src="/js/simplebar.min.js"></script>
<script type="text/javascript" defer src="/njum/js/jquery.min.js"></script>
<script type="text/javascript" defer src="/njum/js/jquery.timeago.js"></script>
<script type="text/javascript" defer src="/njum/js/popper.min.js"></script>
<script type="text/javascript" defer src="/njum/js/bootstrap.min.js"></script>
<script type="text/javascript" defer src="/njum/js/bootstrap-tagsinput.min.js"></script>
<script type="text/javascript" defer src="/njum/js/handlebars.min.js"></script>
<script type="text/javascript" defer src="/njum/js/newscript.js"></script>
</html>

View File

@@ -0,0 +1,62 @@
@extends('profilelayout')
@section('novidcontent')
@include('partials.flash')
<div class="page-header">
<h5>Register your w0bm.com Account</h5>
<p style="color:red;">Note: We do not reset passwords, make sure to write down your password on paper, otherwise you need create a new account or start to circlejerk in the IRC!</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']) !!}
</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">
<div class="">
{!! Recaptcha::render() !!}
</div>
</div>
<div class="form-group terms">
<div style="text-align: center;">
<p><input type="checkbox" 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,34 @@
@extends('layout')
@section('content')
<style>
html body {
animation: anfall 0.2s;
-webkit-animation: anfall 0.2s;
animation-iteration-count: infinite;
margin: 0;
padding: 0;
height: 100%;
overflow: hidden;
}
@keyframes anfall {
0% {background: red;}
25% {background: yellow;}
50% {background: blue;}
75% {background: pink;}
100% {background: red;}
}
@-webkit-keyframes anfall {
0% {background: black;}
25% {background: white;}
50% {background: black;}
75% {background: white;}
100% {background: black;}
}
div.a {
width: 50px;
height:50px;
}
@endsection

View File

@@ -0,0 +1,65 @@
@extends('profilelayout')
@section('novidcontent')
<div class="page-header">
<h4>Rules for w0bm.com</h4>
</div>
<p>These are more or less guidelines for a friendly and peaceful together, please don't try to abuse this or push it to the limits.</p>
<div class="box">
<h5>General</h5>
<ol>
<li>Content on this website is intended for adults (18+), we can't check your age and don't want to, but keep this in mind, this is a website by adults for adults.</li>
<li>No Comment or Tag spamming</li>
<li>No Child porn and/or underage modeling videos/links to websites</li>
<li>No racism, I know this can be defined however someone wants, but deep inside most of us know when it's going into the racism direction and I don't want to see that here.</li>
<li>Be friendly to each other!</li>
<li>No Terrorist Propaganda and Content!</li>
</ol>
</div>
<div class="box">
<h5>Uploading</h5>
<ol>
<li>The focus is on videos that are catchy and fun to watch, for example <a href="/index?q=loop">loops</a> this does not mean these are the only videos we welcome, it's just our main focus, we have plenty of videos that are completely unrelated to loops or catchy stuff and are still fitting, ask yourself "does my upload fit on w0bm.com?" and if yes, you're good to go!</li>
<li>The Artist and Songtitle field is only for the Artist and Song information respectively, anything else in there probably doesn't belong in there, use the Tags.</li>
<li>I reserve the right to remove uploads that I consider not worth being on w0bm.com without comment, discussions about deleted videos will be ignored and can lead in extreme cases to a ban.</li>
</ol>
</div>
<div class="box">
<h5>Tagging</h5>
<ol>
<li><b>You have to add at least 3 tags describing the video, not doing so can lead to a ban.</b></li>
<li>Tags should always describe what you see in the video and maybe some additional informations</li>
<li>No links in the Tags, use the comment section for that!</li>
<li>Always give your video a rating like "sfw" or "nsfw" so people can filter.</li>
<li>Comments are not welcome in the Tag section</li>
</ol>
</div>
<div class="box">
<h5>Commenting</h5>
<ol>
<li>You don't have to be polite, but you also don't have to be an asshole.</li>
<li>NSFW images should only be posted on NSFW videos.</li>
<li>Live with different opinions, and deal with it.</li>
<li>No scam links or links to paywall sites, no unauthorized advertisment</li>
</ol>
</div>
<div class="box">
<h5>Reposts</h5>
<ul style="text-align:left;">
<li>Tag reposts with the tag: repost also link the original and the repost in the comments, maybe some admin or moderator is going to care about it and deletes the repost.</li>
</ul>
</div>
<p>These rules can change at any time!</p>
<?php
$filename = '/home/sirx/web/w0bm.com/resources/views/rules.blade.php';
if (file_exists($filename)) {
echo "Last modified: " . date ("F d Y H:i:s.", filemtime($filename));
}
?>
@include('footer')
@endsection

View File

@@ -0,0 +1,14 @@
@extends('profilelayout')
@section('novidcontent')
<div class="page-header">
<h3>Stats</h3>
</div>
<div class="box">
<p class="user_count">Total amount of registered users: <amount>{{$user_count}}</amount></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>
@endsection

View File

@@ -0,0 +1,15 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h4>Transparency</h4>
</div>
<div class="box">
<h5>Takedown notices and other shit</h5>
<ul>
<li><a href="/07072016-FSM.txt">07.07.2016 FSM Takedown Notice</a></li>
<li><a href="/30012019-CTIRU.txt">30.01.2019 Metropolitan Police Service Terrorist Content Takedown Notice</a></li>
</ul>
</div>
@include('footer')
@endsection

View File

@@ -0,0 +1,48 @@
@extends('profilelayout')
@section('novidcontent')
<div class="container">
<ul class="list-group">
<div class="uploadheader">
<h3 id="upheader">Upload</h3>
</div>
<li class="list-group-item">
@include('partials.flash')
<button id="btn-upload" type="button" 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>
<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>
Drop or select WebM!
</span>
</span>
</a>
</div>
</li>
<li class="list-group-item">{!! Form::text('videotitle', null, ['id' => 'videotitle', 'class' => 'form-control', 'placeholder' => 'Video Title']) !!}</li>
<li class="list-group-item">{!! Form::text('interpret', null, ['id' => 'interpret', 'class' => 'form-control', 'placeholder' => 'Artist']) !!}</li>
<li class="list-group-item">{!! Form::text('songtitle', null, ['id' => 'songtitle', 'class' => 'form-control', 'placeholder' => 'Songtitle']) !!}</li>
<li class="list-group-item">{!! Form::text('imgsource', null, ['id' => 'imgsource', 'class' => 'form-control', 'placeholder' => 'Video Source']) !!}</li>
<li class="list-group-item">
<?php
$categories = [];
foreach(App\Models\Category::all() as $cat)
$categories[$cat->id] = $cat->name;
?>
{!! Form::select('category', $categories, 8, ['id' => 'category', 'class' => 'form-control']) !!}
</li>
<li class="list-group-item">
{!! Form::checkbox('nsfw', 'true', false, ['id' => 'nsfw']) !!} <label id="nsfw" for="nsfw" class="badge badge-danger">NSFW?</label>
{!! Form::text('tags', null, ['id' => 'tags_upload', 'class' => 'row', 'placeholder' => 'Input tags...', 'name' => 'tags', 'data-role' => 'tagsinput']) !!}</li>
<li class="list-group-item">
</li>
</ul>
</div>
<input name="file" type="file" hidden accept=".webm"></input>
</div>
</div>
@endsection

View File

View File

@@ -0,0 +1,21 @@
<div id="disqus_thread"></div>
<script>
/**
* RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
* LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables*/
/*
var disqus_config = function () {
this.page.url = PAGE_URL; // Replace PAGE_URL with your page's canonical URL variable
this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable
};
*/
(function() { // DON'T EDIT BELOW THIS LINE
var d = document, s = d.createElement('script');
s.src = 'https://w0bm.disqus.com/embed.js';
s.setAttribute('data-timestamp', +new Date());
(d.head || d.body).appendChild(s);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>

View File

@@ -0,0 +1,52 @@
<ul class="nav justify-content-center">
<li class="safe-for-rating">
<a class="badge badge-sexy">{{$video->id}}</a>
@if(count($video->tags))
@foreach($video->tags as $tag)
@if($tag == 'sfw')
<a class="badge badge-success isSfw">SFW</a>
@elseif($tag == 'nsfw')
<a class="badge badge-danger isNsfw">NSFW</a>
@endif
@endforeach
@endif
</li>
<li class="legacy-item">
@if(auth()->check())
@if(auth()->user()->hasFaved($video->id))
<form action="{{url($video->id . '/fav')}}">
<a hidden id="hidden-fav" href="{{url($video->id . '/fav')}}"></a>
<button type="submit" id="fav" class="btn btn-dark" fav-data="{{url($video->id . '/fav')}}"><i class="fa fa-heart fa-lg"></i></button>
</form>
@else
<form action="{{url($video->id . '/fav')}}">
<a hidden id="hidden-fav" href="{{url($video->id . '/fav')}}"></a>
<button type="submit" id="fav" class="btn btn-dark bg-toggle"><i class="fa fa-heart-o fa-lg"></i></button>
</form>
@endif
@else
@endif
</li>
<li class="legacy-item">
<button type="button" class="btn btn-dark metadata-button bg-toggle" data-container="body" data-toggle="popover" data-placement="bottom" data-html="true" data-container="body">
<i class="fa fa-lg fa-info-circle"></i>
</button>
</li>
<li class="legacy-item">
<div id="popover-content" hidden>
@include('video-partials.popover-metadata')
</div>
</li>
<li class="legacy-item">
<button type="button" class="btn btn-dark" id="togglebg"><i class="fa fa-power-off fa-lg"></i></button>
</li>
<li class="legacy-item">
@if(auth()->check())
@if(auth()->user()->can('delete_video'))
<button id="webm_edit" class="btn btn-dark" data-toggle="modal" data-target="#webmeditmodal"><i class="fa fa-edit fa-lg"></i></button>
@endif
@endif
<li class="legacy-item">
<button id="webm_report" class="btn btn-dark" data-toggle="modal" data-target="#webmreportmodal"><i class="fa fa-warning fa-md"></i></button>
</li>
</ul>

View File

@@ -0,0 +1,35 @@
<div class="row videonavigation">
@if($related)
@if(($prev = $video->getPrev($related)) === null)
<div class="col- first-video"><a class="first" href="#" style="visibility: hidden;"><i class="fa fa-arrow-left"></i> first</a></div>
<div class="col video-navigation"><a id="prev" href="#" style="visibility: hidden;"><i class="fa fa-arrow-left"></i> prev</a> |
@else
<div class="col- first-video"><a class="first" href="{{url($related->baseurl(), $video->getFirstId($related))}}"><i class="fa fa-arrow-left"></i> first</a></div>
<div class="col video-navigation"><a id="prev" href="{{url($related->baseurl(), [$prev->id])}}"><i class="fa fa-arrow-left"></i> 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 <i class="fa fa-arrow-right"></i></a></div>
<div class="col- latest-video"><a class="last" href="#" style="visibility: hidden;">last <i class="fa fa-arrow-right"></i></a></div>
@else
| <a id="next" href="{{url($related->baseurl(), [$next->id])}}">next <i class="fa fa-arrow-right"></i></a></div>
<div class="col- latest-video"><a class="last" href="{{url($related->baseurl(), $video->getLastId($related))}}">last <i class="fa fa-arrow-right"></i></a></div>
@endif
@else
@if(($prev = $video->getPrev()) === null)
<div class="col- first-video"><a class="first" href="#" style="visibility: hidden;"><i class="fa fa-arrow-left"></i> first</a></div>
<div class="col video-navigation"><a id="prev" href="#" style="visibility: hidden;"><i class="fa fa-arrow-left"></i> prev</a> |
@else
<div class="col- first-video"><a class="first" href="{{url($video->getFirstId())}}"><i class="fa fa-arrow-left"></i> first</a></div>
<div class="col video-navigation"><a id="prev" href="{{url($prev->id)}}"><i class="fa fa-arrow-left"></i> prev</a> |
@endif
<a href="{{url('/')}}">random</a>
@if(($next = $video->getNext()) === null)
| <a id="next" href="#" style="visibility: hidden;">next <i class="fa fa-arrow-right"></i></a></div>
<div class="col- latest-video"><a class="last" href="#" style="visibility: hidden;">last 🡆</a></div>
@else
| <a id="next" href="{{url($next->id)}}">next <i class="fa fa-arrow-right"></i></a></div>
<div class="col- latest-video"><a class="last" href="{{url($video->getLastId())}}">last <i class="fa fa-arrow-right"></i></a></div>
@endif
@endif
</div>

View File

@@ -0,0 +1,44 @@
<div class="popover-metadata">
@if($video->videotitle) <div class="artist">
<strong>Videotitle:</strong> {{$video->videotitle}}
</div>@endif
@if($video->interpret) <div class="artist">
<strong>Artist:</strong> {{$video->interpret}}
</div>@endif
@if($video->songtitle) <div class="songtitle">
<strong>Songtitle:</strong> {{$video->songtitle}}
</div>@endif
@if($video->imgsource) <div class="source">
<strong>Video Source:</strong> {{$video->imgsource}}
</div>@endif
<div class="category">
<strong>Category:</strong> <a class="text-white" href="/index?q={{$video->category->name}}">{{$video->category->name}}</a>
</div>
<div class="uploader">
<strong>Uploader:</strong> <a class="text-white" href="{{ url("user/" . $video->user->username) }}">{!! $video->user->displayName() !!}</a></span></a>
</div>
<div class="added">
<strong>Added:</strong> <a id="timestamp" title="{{$video->created_at->toIso8601String()}}">{{$video->created_at->diffForHumans()}}</a> <time class="timeago" data-toggle="tooltip" datetime="{{$video->created_at->toIso8601String()}}" title="{{$video->created_at->toIso8601String()}}"></time>
</div>
{{-- <div class="filesize">
<span class="badge badge-secondary">{{ HumanReadable::bytesToHuman($video->filesize()) }}</span>
</div> --}}
<hr>
<div class="toggo tag-panel-body">
<div id="tag-display" class="tag-panel-body">
@if(count($video->tags))
@foreach($video->tags as $tag)
@if($tag == 'sfw')
<span class="badge badge-success"><a href="/index?q={{$tag->normalized}}" class="default-link">{{$tag->name}}</a></span>
@elseif($tag == 'nsfw')
<span class="badge badge-danger"><a href="/index?q={{$tag->normalized}}" class="default-link">{{$tag->name}}</a></span>
@else
<span class="badge badge-secondary"><a href="/index?q={{$tag->normalized}}" class="default-link">{{$tag->name}}</a></span>
@endif
@endforeach
@else
No tags yet ...
@endif
</div>
</div>
</div>

View File

@@ -0,0 +1,12 @@
<button title="Toggle Background" class="hidden-xs bg-toggle power" id="togglebg">BG</button>
<div class="favbutton">
@if(auth()->check())
@if(auth()->user()->hasFaved($video->id))
<a id="fav" href="{{url($video->id . '/fav')}}">UNFAV</a>
@else
<a id="fav" href="{{url($video->id . '/fav')}}">FAV</a>
@endif
@else
<a href="{{url($video->id . '/fav')}}">FAVED</a>
@endif
</div>

View File

@@ -0,0 +1,17 @@
<div class="video-metadata-overlay">
@if($video->interpret) <div class="artist">
<strong>Artist:</strong> {{$video->interpret}}
</div>@endif
@if($video->songtitle) <div class="songtitle">
<strong>Songtitle:</strong> {{$video->songtitle}}
</div>@endif
@if($video->imgsource) <div class="source">
<strong>Video Source:</strong> {{$video->imgsource}}
</div>@endif
<div class="category">
<strong>Category:</strong> <a class="text-dark" href="/index?q={{$video->category->name}}">{{$video->category->name}}</a>
</div>
<div class="uploader">
<strong>Uploader:</strong> <a class="text-dark" href="{{ url('user/' . $video->user->username) }}">{!! $video->user->displayName() !!}</a></span> <time class="timeago" data-toggle="tooltip" datetime="{{$video->created_at->toIso8601String()}}" title="{{$video->created_at->toIso8601String()}}"></time></a>
</div>
</div>

View File

@@ -0,0 +1,33 @@
<div class="video-metadata">
<ul class="list-group list-group-horizontal indexedit">
@if($video->interpret) <li class="list-group-item"><div class="artist">
<strong>Artist:</strong> {{$video->interpret}}
</div></li>@endif
@if($video->songtitle) <li class="list-group-item"><div class="songtitle">
<strong>Songtitle:</strong> {{$video->songtitle}}
</div></li>@endif
@if($video->imgsource) <li class="list-group-item"><div class="source">
<strong>Video Source:</strong> {{$video->imgsource}}
</div></li>@endif
<li class="list-group-item"><div class="category">
<strong>Category:</strong> <a class="text-dark" href="/index?q={{$video->category->name}}">{{$video->category->name}}</a>
</div></li>
<li class="list-group-item"><div class="uploader">
<strong>Uploader:</strong> <a class="text-dark" href="{{ url("user/" . $video->user->username) }}">{!! $video->user->displayName() !!}</a></span> <time class="timeago" data-toggle="tooltip" datetime="{{$video->created_at->toIso8601String()}}" title="{{$video->created_at->toIso8601String()}}"></time></a>
</div></li>
</ul>
@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
</div>
<div class="tags">
<div id="tag-display" class="tag-panel-body">
@if(count($video->tags))
@foreach($video->tags as $tag)
<span class="badge badge-dark"><a href="/index?q={{$tag->normalized}}" class="dark-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>

View File

@@ -0,0 +1,18 @@
<div class="row videonavigation">
@if(($prev = $video->getPrev()) === null)
<div class="col"><a class="first" href="#" style="visibility: hidden;">🡄 first</a></div>
@else
<div class="col"><a class="first" href="{{url($video->getFirstId())}}">🡄 first</a></div>
<div class="col"><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></div>
<div class="col"><a class="last" href="{{url($video->getLastId())}}">last 🡆</a></div>
@endif
</div>

View File

@@ -0,0 +1,39 @@
@extends('layout')
@section('video')
<?php $related = $related ?? null; ?>
<div class="video-content">
<div class="video">
<div class="embed-responsive embed-responsive-16by9">
<video id="video" class="video rounded embed-responsive-item" loop preload="auto" crossorigin="anonymous">
<source src="@if(env('APP_DEBUG')){{"/b"}}@else{{"//" . (substr($_SERVER["HTTP_HOST"], 0, 3) === "v4." ? "v4." : "") . "b.w0bm.com"}}@endif{{ "/" . $video->file }}">
</video>
</div>
</div>
@include('video-partials.legacy-videonav')
</div>
@endsection
@section('testvideo')
<?php $related = $related ?? null; ?>
<div class="page">
<div class="video-wrap embed-responsive embed-responsive-16by9">
<div class="video">
<video id="video" class="video rounded embed-responsive-item" loop preload="auto" crossorigin="anonymous">
<source src="/b{{ "/" . $video->file }}">
</video>
</div>
</div>
@include('video-partials.legacy-videonav')
</div>
@endsection
@section('floatvid')
<div class="video-wrap embed-responsive embed-responsive-16by9 rounded" id="sticky-container">
<video class="video scrollable" loop id="video">
<source src="/b{{ "/" . $video->file }}">
</video>
</div>
@include('video-partials.legacy-videonav')
@include('video-partials.legacy-metadata')
@endsection

View File

@@ -0,0 +1,56 @@
@extends('profilelayout')
@section('content')
<div class="page-header">
<h3>WebM Support</h3>
</div>
<div class="box">
<h5>WebM how to</h5>
<p>On this page you will find anything related to WebMs</p>
</div>
<div class="box">
<h4>Useful tools for creating WebMs</h4>
<p>There is a good documentation with various ffmpeg tools on github, you should definetly check it out and pick the one you like the most!</p>
<ul>
<li><a href="https://github.com/Kagami/webm.py/wiki/Related-links">List of tools and information</a></li>
<li><a href="https://github.com/Kagami/boram">Boram by Kagami</a> Cross Platform Gui application for cutting, cropping and converting videos into WebM format, has integrated youtube-dl option, so you can directly download from any site that is supported by youtube-dl. Definetly the best choice if you want to have it quick and easy with a nice looking result!</li>
<li><a href="https://github.com/Kagami/webm.py">webm.py by Kagami</a> If you are more the CLI fan like me, this is something for you, it's a very easy cli tool and basically the best fucking tool if you want to create a WebM real quick by only using your shell.</li>
</ul>
<p>Sample lines for webm.py <code>python webm.py -i your.mp4 your.webm</code> will convert your mp4 into a vp9 webm with max filesize of 8MB! <code>python webm.py -l 4 -vp8 -i your.mp4|webm yourwebmfor4chan.webm</code> will set the maximum filesize to 4MB and convert it using the VP8 codec and vorbis audio codec.</p>
</div>
<div class="box">
<h4>Get a WebM directly from YouTube</h4>
<p>There are many ways on how to download videos from YouTube but most people don't know that you can grab a WebM directly from YouTube.</p>
<p>The easiest and probably best way is jdownloader 2, all you need to do is copy a youtube link and jdownloader will add it to the link collector, from there you can select how jdownloader should download the video.</p>
<img src="https://files.nogf.club/winfick/ad224c7e257a.png" />
<p>Please note that HD WebM is not always available, there should always be a 360p version available.</p>
</div>
<div class="box">
<h4>coub.com Downloader</h4>
<p><a href="https://coub.com"target="_blank">coub.com</a> is a great place to explore some nice videos, I made this little script that helps you to grab the videos from their site and instantly convert it to <code>.webm</code></p>
<p>Download <a href="https://gitfap.de/noxy/coubdl" target="_blank">the script</a> from my GitFap repo and just run it like this: <code>bash coubdl.sh URL</code> it will then ask you how long your video should be, it will show you the duration of just the loop and the duration of the audio file used for it.</p>
<p>After that you can specify the output max size by just typing in a single number like <code>4</code> and the script will convert your video to 4MB</p>
<p>Requirements: <code>yotube-dl, jq, ffmpeg, ffprobe, python & webm.py</code>
</div>
<div class="box">
<h4>Some information about ffmpeg</h4>
<p>If you want to learn more about FFmpeg check out <a href="https://de.wikipedia.org/wiki/FFmpeg">FFmpeg Wiki</a> and <a href="https://ffmpeg.org/">ffmpeg.org</a></p>
<p>ffmpeg is able to convert your .mkv and/or .mp4 files in to .webm for example and it is really easy, you just need to type in one line of commands</p>
</div>
<div class="box">
<h5>If your uploads fails and you see this: Erroneous File Encoding! Try reencoding it</h5>
<code><s>ffmpeg -i problem.webm -map 0:0 -map 0:1 -c:v copy solved.webm</s> <b>(PATCHED)</b></code>
</div>
<div class="box">
<h5>Windows</h5>
<p>There are just like in Linux many ways to convert a WebM in Windows, you can even do it from the CLI like I described above, but many Windows users don't use the CMD very often, so in this section I will explain how to make a nice WebM in Windows using a GUI program!</p>
<p>The best way is probably <a href="https://github.com/Kagami/boram">Boram by Kagami</a> it has a very user friendly GUI and works like a charm I can definetly recommend this!</p>
<p>Or you can use <a href="https://gitgud.io/nixx/WebMConverter">WebMConverter</a> by nixx, it has all the things you need but it can't download videos directly from the internet to convert them on the fly, but it will still work!</p>
</div>
@endsection