diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 6748648..dccf4df 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -23,6 +23,7 @@ class UserController extends Controller */ public function login(Request $request) { + if($request->has('identifier') && $request->has('password')) { switch(\Auth::verify([ 'identifier' => $request->get('identifier'), @@ -108,6 +109,11 @@ class UserController extends Controller return Response::create(json_encode($filter)); } + public function isOnline() +{ + return Cache::has('user-is-online-' . $this->id); +} + /** * Show the form for creating a new resource. * diff --git a/app/Http/Controllers/tmp/test.png b/app/Http/Controllers/tmp/test.png index 4861924..ad251a5 100644 Binary files a/app/Http/Controllers/tmp/test.png and b/app/Http/Controllers/tmp/test.png differ diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 08ce03a..21c33fa 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -20,7 +20,7 @@ class Kernel extends HttpKernel \Illuminate\View\Middleware\ShareErrorsFromSession::class, Middleware\VerifyCsrfToken::class, Middleware\LogoutBanned::class, - Middleware\Jsonp::class + Middleware\Jsonp::class, ]; /** @@ -30,6 +30,7 @@ class Kernel extends HttpKernel */ protected $routeMiddleware = [ 'auth' => Middleware\Authenticate::class, + 'lastOn' => \App\Http\Middleware\LogLastUserActivity::class, 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 'guest' => Middleware\RedirectIfAuthenticated::class, 'theme' => Middleware\Theme::class, diff --git a/app/Http/Middleware/Authenticate.php b/app/Http/Middleware/Authenticate.php index 3a951ed..6757f5c 100644 --- a/app/Http/Middleware/Authenticate.php +++ b/app/Http/Middleware/Authenticate.php @@ -4,6 +4,8 @@ namespace App\Http\Middleware; use Closure; use Illuminate\Contracts\Auth\Guard; +use Carbon\Carbon; +use Cache; class Authenticate { diff --git a/app/Http/routes.php b/app/Http/routes.php index dcf9734..0e7d011 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -18,7 +18,7 @@ Route::get('/', ['as' => 'home', function () { return redirect($video->id); -}])/*->middleware('auth')*/; +}])/*->middleware('lastOn')*/; Route::get('nojs', function() { return view('nojs'); }); diff --git a/app/Models/User.php b/app/Models/User.php index e43c679..5df8493 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -4,6 +4,7 @@ namespace App\Models; use Toddish\Verify\Models\User as VerifyUser; use Carbon\Carbon; +use Cache; /** * App\Models\User @@ -113,6 +114,11 @@ class User extends VerifyUser return $icon; } +public function isOnline() +{ + return Cache::has('user-is-online-' . $this->id); +} + public function isBanned() { if($this->disabled == 1) { return $this->banend->eq(Carbon::createFromTimeStampUTC(1)) || $this->banend->gt(Carbon::now()); diff --git a/composer.json b/composer.json index 1c796e5..75a52de 100644 --- a/composer.json +++ b/composer.json @@ -23,7 +23,8 @@ "itsgoingd/clockwork": "^1.14", "erusev/parsedown": "^1.6", "sentry/sentry-laravel": "^0.8.0", - "mews/captcha": "^3.0" + "mews/captcha": "^3.0", + "shetabit/visitor": "^2.0" }, "require-dev": { "fzaninotto/faker": "~1.4", diff --git a/composer.lock b/composer.lock index 57bc70d..8da1af5 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "cbbccb040f48f4d74c59930694b330ff", + "content-hash": "f54d99162d5a9f9e8a6963113ee77cf2", "packages": [ { "name": "barryvdh/laravel-ide-helper", @@ -182,6 +182,62 @@ ], "time": "2017-12-10T11:40:39+00:00" }, + { + "name": "composer/ca-bundle", + "version": "1.2.4", + "source": { + "type": "git", + "url": "https://github.com/composer/ca-bundle.git", + "reference": "10bb96592168a0f8e8f6dcde3532d9fa50b0b527" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/10bb96592168a0f8e8f6dcde3532d9fa50b0b527", + "reference": "10bb96592168a0f8e8f6dcde3532d9fa50b0b527", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "ext-pcre": "*", + "php": "^5.3.2 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35 || ^5.7 || 6.5 - 8", + "psr/log": "^1.0", + "symfony/process": "^2.5 || ^3.0 || ^4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\CaBundle\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.", + "keywords": [ + "cabundle", + "cacert", + "certificate", + "ssl", + "tls" + ], + "time": "2019-08-30T08:44:50+00:00" + }, { "name": "cviebrock/eloquent-taggable", "version": "dev-master", @@ -1302,6 +1358,124 @@ ], "time": "2015-04-20T18:58:01+00:00" }, + { + "name": "jaybizzle/crawler-detect", + "version": "v1.2.89", + "source": { + "type": "git", + "url": "https://github.com/JayBizzle/Crawler-Detect.git", + "reference": "374d699ce4944107015eee0798eab072e3c47df9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/JayBizzle/Crawler-Detect/zipball/374d699ce4944107015eee0798eab072e3c47df9", + "reference": "374d699ce4944107015eee0798eab072e3c47df9", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8|^5.5|^6.5", + "satooshi/php-coveralls": "1.*" + }, + "type": "library", + "autoload": { + "psr-4": { + "Jaybizzle\\CrawlerDetect\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mark Beech", + "email": "m@rkbee.ch", + "role": "Developer" + } + ], + "description": "CrawlerDetect is a PHP class for detecting bots/crawlers/spiders via the user agent", + "homepage": "https://github.com/JayBizzle/Crawler-Detect/", + "keywords": [ + "crawler", + "crawler detect", + "crawler detector", + "crawlerdetect", + "php crawler detect" + ], + "time": "2019-11-16T13:47:52+00:00" + }, + { + "name": "jenssegers/agent", + "version": "v2.6.3", + "source": { + "type": "git", + "url": "https://github.com/jenssegers/agent.git", + "reference": "bcb895395e460478e101f41cdab139c48dc721ce" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jenssegers/agent/zipball/bcb895395e460478e101f41cdab139c48dc721ce", + "reference": "bcb895395e460478e101f41cdab139c48dc721ce", + "shasum": "" + }, + "require": { + "jaybizzle/crawler-detect": "^1.2", + "mobiledetect/mobiledetectlib": "^2.7.6", + "php": ">=5.6" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5.0|^6.0|^7.0" + }, + "suggest": { + "illuminate/support": "^4.0|^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + }, + "laravel": { + "providers": [ + "Jenssegers\\Agent\\AgentServiceProvider" + ], + "aliases": { + "Agent": "Jenssegers\\Agent\\Facades\\Agent" + } + } + }, + "autoload": { + "psr-4": { + "Jenssegers\\Agent\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jens Segers", + "homepage": "https://jenssegers.com" + } + ], + "description": "Desktop/mobile user agent parser with support for Laravel, based on Mobiledetect", + "homepage": "https://github.com/jenssegers/agent", + "keywords": [ + "Agent", + "browser", + "desktop", + "laravel", + "mobile", + "platform", + "user agent", + "useragent" + ], + "time": "2019-01-19T21:32:55+00:00" + }, { "name": "jeremeamia/SuperClosure", "version": "2.3.0", @@ -1692,6 +1866,58 @@ ], "time": "2019-09-05T22:33:04+00:00" }, + { + "name": "mobiledetect/mobiledetectlib", + "version": "2.8.34", + "source": { + "type": "git", + "url": "https://github.com/serbanghita/Mobile-Detect.git", + "reference": "6f8113f57a508494ca36acbcfa2dc2d923c7ed5b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/serbanghita/Mobile-Detect/zipball/6f8113f57a508494ca36acbcfa2dc2d923c7ed5b", + "reference": "6f8113f57a508494ca36acbcfa2dc2d923c7ed5b", + "shasum": "" + }, + "require": { + "php": ">=5.0.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.8.35||~5.7" + }, + "type": "library", + "autoload": { + "classmap": [ + "Mobile_Detect.php" + ], + "psr-0": { + "Detection": "namespaced/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Serban Ghita", + "email": "serbanghita@gmail.com", + "homepage": "http://mobiledetect.net", + "role": "Developer" + } + ], + "description": "Mobile_Detect is a lightweight PHP class for detecting mobile devices. It uses the User-Agent string combined with specific HTTP headers to detect the mobile environment.", + "homepage": "https://github.com/serbanghita/Mobile-Detect", + "keywords": [ + "detect mobile devices", + "mobile", + "mobile detect", + "mobile detector", + "php mobile detect" + ], + "time": "2019-09-18T18:44:20+00:00" + }, { "name": "monolog/monolog", "version": "1.23.0", @@ -2262,6 +2488,73 @@ ], "time": "2017-08-11T17:29:14+00:00" }, + { + "name": "shetabit/visitor", + "version": "v2.0", + "source": { + "type": "git", + "url": "https://github.com/shetabit/visitor.git", + "reference": "989f486cd2b25442516206e7d79e5c659c8035b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/shetabit/visitor/zipball/989f486cd2b25442516206e7d79e5c659c8035b8", + "reference": "989f486cd2b25442516206e7d79e5c659c8035b8", + "shasum": "" + }, + "require": { + "illuminate/support": ">=5.1", + "jenssegers/agent": "^2.6", + "php": ">=7.2", + "ua-parser/uap-php": "^3.9" + }, + "require-dev": { + "orchestra/testbench": "^4.0", + "phpunit/phpunit": ">=7.5", + "squizlabs/php_codesniffer": "^3.4" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Shetabit\\Visitor\\Provider\\VisitorServiceProvider" + ], + "aliases": { + "Visitor": "Shetabit\\Visitor\\Facade\\Visitor" + } + } + }, + "autoload": { + "psr-4": { + "Shetabit\\Visitor\\": "src" + }, + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mahdi Khanzadi", + "email": "khanzadimahdi@gmail.com", + "homepage": "https://github.com/visitor", + "role": "Developer" + } + ], + "description": "Laravel visitor", + "homepage": "https://github.com/shetabit/visitor", + "keywords": [ + "parse laravel user agents", + "shetabit", + "trace laravel visitors", + "track laravel visitors", + "visitor" + ], + "time": "2019-10-15T09:53:23+00:00" + }, { "name": "swiftmailer/swiftmailer", "version": "v5.4.9", @@ -3307,6 +3600,63 @@ ], "time": "2015-07-07T19:23:59+00:00" }, + { + "name": "ua-parser/uap-php", + "version": "v3.9.2", + "source": { + "type": "git", + "url": "https://github.com/ua-parser/uap-php.git", + "reference": "eb9c78aeb3984e5834c4f3845e7263dbe4277935" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ua-parser/uap-php/zipball/eb9c78aeb3984e5834c4f3845e7263dbe4277935", + "reference": "eb9c78aeb3984e5834c4f3845e7263dbe4277935", + "shasum": "" + }, + "require": { + "composer/ca-bundle": "^1.1", + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "<8", + "symfony/console": "^2.0 || ^3.0 || ^4.0", + "symfony/filesystem": "^2.0 || ^3.0 || ^4.0", + "symfony/finder": "^2.0 || ^3.0 || ^4.0", + "symfony/yaml": "^2.0 || ^3.0 || ^4.0" + }, + "suggest": { + "symfony/console": "Required for CLI usage - ^2.0 || ^3.0 || ^4.0", + "symfony/filesystem": "Required for CLI usage - 2.0 || ^3.0 || ^4.0", + "symfony/finder": "Required for CLI usage - ^2.0 || ^3.0 || ^4.0", + "symfony/yaml": "Required for CLI usage - ^4.0 || ^5.0" + }, + "bin": [ + "bin/uaparser" + ], + "type": "library", + "autoload": { + "psr-4": { + "UAParser\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dave Olsen", + "email": "dmolsen@gmail.com" + }, + { + "name": "Lars Strojny", + "email": "lars@strojny.net" + } + ], + "description": "A multi-language port of Browserscope's user agent parser.", + "time": "2019-11-06T11:37:45+00:00" + }, { "name": "vlucas/phpdotenv", "version": "v1.1.1", @@ -4269,6 +4619,7 @@ "mock", "xunit" ], + "abandoned": true, "time": "2015-10-02T06:51:40+00:00" }, { diff --git a/config/app.php b/config/app.php index 5ab8d23..db076d5 100644 --- a/config/app.php +++ b/config/app.php @@ -212,6 +212,7 @@ return [ 'Recaptcha' => Greggilbert\Recaptcha\Facades\Recaptcha::class, 'Sentry' => Sentry\SentryLaravel\SentryFacade::class, 'Captcha' => Mews\Captcha\Facades\Captcha::class, + ], ]; diff --git a/config/cache.php b/config/cache.php index 379135b..d53ecd9 100644 --- a/config/cache.php +++ b/config/cache.php @@ -44,7 +44,7 @@ return [ 'file' => [ 'driver' => 'file', - 'path' => storage_path('framework/cache'), + 'path' => storage_path('/cache'), ], 'memcached' => [ diff --git a/config/captcha.php b/config/captcha.php index 755011e..8ef0c3f 100644 --- a/config/captcha.php +++ b/config/captcha.php @@ -5,8 +5,8 @@ return [ #'characters' => ['Aardvark','Albatross','Alligator','Alpaca','Ant','Anteater','Antelope','Ape','Armadillo','Donkey','Baboon','Badger','Barracuda','Bat','Bear','Beaver','Bee','Bison','Boar','Buffalo','Butterfly','Camel','Capybara','Caribou','Cassowary','Cat','Caterpillar','Cattle','Chamois','Cheetah','Chicken','Chimpanzee','Chinchilla','Chough','Clam','Cobra','Cockroach','Cod','Cormorant','Coyote','Crab','Crane','Crocodile','Crow','Curlew','Deer','Dinosaur','Dog','Dogfish','Dolphin','Dotterel','Dove','Dragonfly','Duck','Dugong','Dunlin','Eagle','Echidna','Eel','Eland','Elephant','Elk','Emu','Falcon','Ferret','Finch','Fish','Flamingo','Fly','Fox','Frog','Gaur','Gazelle','Gerbil','Giraffe','Gnat','Gnu','Goat','Goldfinch','Goldfish','Goose','Gorilla','Goshawk','Grasshopper','Grouse','Guanaco','Gull','Hamster','Hare','Hawk','Hedgehog','Heron','Herring','Hippopotamus','Hornet','Horse','Human','Hummingbird','Hyena','Ibex','Ibis','Jackal','Jaguar','Jay','Jellyfish','Kangaroo','Kingfisher','Koala','Kookabura','Kouprey','Kudu','Lapwing','Lark','Lemur','Leopard','Lion','Llama','Lobster','Locust','Loris','Louse','Lyrebird','Magpie','Mallard','Manatee','Mandrill','Mantis','Marten','Meerkat','Mink','Mole','Mongoose','Monkey','Moose','Mosquito','Mouse','Mule','Narwhal','Newt','Nightingale','Octopus','Okapi','Opossum','Oryx','Ostrich','Otter','Owl','Oyster','Panther','Parrot','Partridge','Peafowl','Pelican','Penguin','Pheasant','Pig','Pigeon','Pony','Porcupine','Porpoise','Quail','Quelea','Quetzal','Rabbit','Raccoon','Rail','Ram','Rat','Raven','Red deer','Red panda','Reindeer','Rhinoceros','Rook','Salamander','Salmon','Sand Dollar','Sandpiper','Sardine','Scorpion','Seahorse','Seal','Shark','Sheep','Shrew','Skunk','Snail','Snake','Sparrow','Spider','Spoonbill','Squid','Squirrel','Starling','Stingray','Stinkbug','Stork','Swallow','Swan','Tapir','Tarsier','Termite','Tiger','Toad','Trout','Turkey','Turtle','Viper','Vulture','Wallaby','Walrus','Wasp','Weasel','Whale','Wildcat','Wolf','Wolverine','Wombat','Woodcock','Woodpecker','Worm','Wren','Yak','Zebra'], 'default' => [ 'length' => 4, - 'width' => 500, - 'height' => 55, + 'width' => 36, + 'height' => 36, 'quality' => 30, 'math' => false, ], @@ -17,7 +17,17 @@ return [ 'quality' => 90, 'math' => true, ], - + 'login' => [ + 'length' => 4, + 'width' => 300, + 'height' => 36, + 'quality' => 60, + 'lines' => 0, + 'bgImage' => false, + 'bgColor' => '#131313', + 'fontColors' => ['#FF0080', '#DF0101', '#848484', '#c0392b', '#0B3B0B', '#FFFF00', '#FFFFFF', '#DF01D7'], + 'contrast' => -3, + ], 'flat' => [ 'length' => 17, 'width' => 500, diff --git a/public/css/glitch.css b/public/css/glitch.css index 25d024c..746e051 100644 --- a/public/css/glitch.css +++ b/public/css/glitch.css @@ -1,3 +1,5 @@ + + /*chilledblue */ ::-webkit-scrollbar-track-piece{background-color:#1a1f22!important}body{background-color:#171d21}.navbar-inverse{background-color:rgba(33,41,47,.74)}.comments{background:rgba(33,41,47,.71)}.panel.panel-default{border:1px solid #131619;background:#21292f}.onclick-menu-content{border:1px solid #131619}.tagtest{background:rgba(33,41,47,.71)}div#tag-display{background:rgba(33,41,47,.71)}.label-default{background-color:#21292f;border:1px solid #1fb2b0}.modal-content{background-color:#21292f}.login_wrapper{background:#1c2125}select.form-control,input.form-control{background-color:#21292f;border:1px solid #131619}.btn-primary{background-color:#21292f}.btn-primary:hover{background-color:#142121}span.addtagsy>a:hover{background:#33414c}.popover{background-color:#21292f;border:1px solid #131619;padding:0}.popover.top>.arrow:after{border-top-color:#131619}.popover-title{margin:0;padding:8px 15px;font-size:14px;background-color:#131619;border-bottom:1px solid #0b0b0b;border-radius:0}.video-js .vjs-control-bar{background-color:rgba(33,41,47,.93)!important}.thumbnail{background-color:#21292f;border:1px solid #131619;border-radius:0}.caption small{background:#142121;color:#d000ff;font-family:VCR;text-shadow:0 0 5px #d000ff;border:1px solid #1fb2b0}.box{background:rgba(33,41,47,.74);border:2px solid #131619}.navbar-fixed-bottom{background:#21292f}.bootstrap-tagsinput{background:#21292f none repeat scroll 0 0;border:1px solid #131619}.panel-default>.panel-heading{background-color:#21292f;border-color:#131619}.list-group-item{background-color:#131619;border:1px solid #21292f}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{background-color:#131619;border-color:#282828}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{background-color:#142121;border-color:#1fb2b0;color:#1fb}.pagination>li>a,.pagination>li>span{background-color:#131619}.blah{background:#21292f;border:1px solid #131619}#dragndrop{background-color:#21292f!important}.profilheader{background:#21292f}table{background-color:#131619}.table-hover>tbody>tr:hover{background-color:#21292f}a.list-group-item-info,button.list-group-item-info{color:#fff;background:#ff005d}a.list-group-item-info:hover,button.list-group-item-info:hover,a.list-group-item-info:focus,button.list-group-item-info:focus{color:#fff;background-color:#2f3f4b}.dropdown-menu{border:1px solid #131619!important;padding:5px!important;margin:-15px 15px 0!important;border-radius:0!important;background-color:#21292f;min-width:100px}button.w0bmcustom-css{width:100%;padding-bottom:5px;background:#232222;padding:5px;border:1px solid #000;margin-bottom:5px;color:#adadad}button.w0bmcustom-css:hover{background:rgba(84,84,84,.5)}button.chilledblue-css{width:100%;padding-bottom:5px;background:#142121;border:1px solid #131916;margin-bottom:5px;color:#adadad}button.chilledblue-css:hover{background:#183333b8}.suchleiste{background:#21292f none}button.epilepsie-css{width:100%;padding-bottom:5px;background:red;padding:5px;border:1px solid #000;margin-bottom:5px;color:#fff;font-weight:700;text-transform:uppercase;border:1px dashed #ff0}button.epilepsie-css:hover{background:rgba(84,84,84,.5)}.toggo{background-color:#21292f} /* end */ @@ -505,7 +507,7 @@ ul.nav.navbar-nav.info-nav { ::-webkit-scrollbar-thumb { width: 24px; - background: linear-gradient(to top, #fff2f2a3 0%, #0c5430a6 100%) !important; + background: linear-gradient(to top, #104046 0%, #122c2e 100%) !important; } ::-webkit-scrollbar-track-piece { background-color: #000000!important; @@ -780,14 +782,8 @@ a.rainbow:hover { position: relative; } -.header { - width: 100%; - vertical-align: text-top; - position: relative; - top: 4px; -} -.onclick-menu:hover { +.onclick-menu:hover, .onclick-menu:active, .onclick-menu:focus { background: linear-gradient(to top, #0a0a0a 0%, #326558a6 100%); border-bottom: 1px solid; color: #fff; @@ -795,7 +791,11 @@ a.rainbow:hover { } .emoji-shit:hover { - background: silver; + transform: rotateZ(45deg); +} + +.textmodifierss { + align-self: flex-end; } .video-js .vjs-menu-button-popup .vjs-menu .vjs-menu-content { @@ -834,7 +834,7 @@ a.rainbow:hover { .emoji-shit { background: none; border: 0; - vertical-align: super; + display: inline-block; } ::-webkit-scrollbar, @@ -870,4 +870,221 @@ a.rainbow:hover { .bootstrap-tagsinput input { vertical-align: bottom; +} + +/* New fonts - Requires googles cdn for now, sry! */ +body, .text-center, .vidinfo, .videotitle, .label.label-default, .popover, .popover-title, .video-js .vjs-control-bar { + font-family: 'Play', sans-serif; +} + +.navbar-nav>li, label[for=tag-add-toggle] { + font-family: 'Play', sans-serif; + font-size: 12px; +} + +.bootstrap-tagsinput input { + vertical-align: sub; +} + +.onclick-menu { + background: none; + border: 0; +} + +.onclick-menu:before { + top: 0; +} + +.bootstrap-tagsinput { + position: relative; +} + +#submittags { + font-size: 16px; + background-color: #121619; + color: white; + padding-bottom: 0px; + border: 1px solid #1fb2b0; + border-radius: 5px; + vertical-align: top; + padding: 5px; + outline: 0; +} + +#submittags:hover { + transition: .3s ease-in-out; +} + +.bootstrap-tagsinput { + background: #121619 none repeat scroll 0 0; + border: 1px solid #1fb2b0; + border-radius: 5px; + padding: 5px; + line-height: 0; +} + +.bootstrap-tagsinput input { + vertical-align: middle; +} + +.input-group { + height: 35px; + display: flex; + justify-content: space-evenly; + width: 100%; +} + +label[for='tag-add-toggle'] { + padding-top: 12px; +} + +.nav>li>a:hover, .nav>li>a:focus { + text-decoration: none; + background-color: #12161900; + color: #00fbff; +} + +label[for='tag-add-toggle']:hover { + background-color: #12161900; +} + +.toggo.tag-panel-body { + position: relative; +} + +.toggo.tag-panel-body::after { + content: "TAGS"; + position: absolute; + bottom: 0; + right: 2px; + font-size: 10px; + opacity: 0.2; +} + +div#tag-display { + box-shadow: inset 0px 0px 25px -25px cyan; + padding-bottom: 5px; +} + +.LooLOut:after { + content: "Design by sirx"; + position: absolute; + bottom: 0; + right: 5px; + opacity: 0.3; + text-transform: uppercase; + font-style: oblique; + color: darkkhaki; + text-shadow: 1px 1px saddlebrown; + font-size: 8px; +} + +.text-center { + font-size: 20px; +} + +#sidebar { + background: #0f1514e8 !important; +} + +.navbar-inverse { + background-color: #0f15149e !important; +} + +.btn-sm, .btn-group-sm>.btn { + padding: 5px; +} + +.label.label-default { + background-image: linear-gradient(to top, #0b402c 0%, #172023 100%); + border: 0px solid #1fb2b0; +} + +.default-link:hover { + color: #fff; + text-decoration: none; + text-shadow: 0px 0px 3px #ff0094; +} + +.tagtest { + z-index: 1; + position: relative; +} + +.popover-title { + background-image: linear-gradient(to top, #0b402c 0%, #172023 100%); +} + +.bootstrap-tagsinput .tag { + vertical-align: middle; +} + +.bootstrap-tagsinput .tag { + top: -0.5px; + padding: 5px; + background: linear-gradient(to top,#14e19485 0%,#08222b 100%) !important; +} + +.bootstrap-tagsinput { + background: #061010 none repeat scroll 0 0; + border: 1px solid #32494a; + height: 100%; +} + +#submittags { + border: 1px solid #32494a; +} + +button#submittags { + transition: .2s; + opacity: 0.5; +} + +button#submittags:hover { + background: linear-gradient(to top,#027d39 0%,#172023 100%); + opacity: 1; +} + +.tagtest { + padding: 0 0px; +} + +div#tag-add { + margin-bottom: 0; + border: 0; + padding: 0px; +} + +ul.nav.navbar-nav.info-nav { + padding: 0; +} + +div#tag-display, div#tag-add, .toggo.tag-panel-body { + background: transparent; + border: 0; +} + +ul.nav.navbar-nav.info-nav { + padding-bottom: 5px; + width: 100%; + display: flex; + justify-content: space-between; +} + +div#tag-display { + box-shadow: none; + border: 0; + padding: 0; + max-height: 6.6em; + +} + +.bootstrap-tagsinput { + background: linear-gradient(to top,#0a0a0aa3 0%,#163f42a6 100%); + height: 100%; + border: 1px solid #8080804a; +} + +.nav>li.addtagsy>a:hover { + color: #00fbff; } \ No newline at end of file diff --git a/public/css/w0bmcustom.css b/public/css/w0bmcustom.css index 64161cf..03c0ba8 100644 --- a/public/css/w0bmcustom.css +++ b/public/css/w0bmcustom.css @@ -37,6 +37,58 @@ } /* Oswal Test End */ + +/* Play Font */ +/* cyrillic-ext */ +@font-face { + font-family: 'Play'; + font-style: normal; + font-weight: 400; + src: local('Play Regular'), local('Play-Regular'), url(//s.w0bm.com/fonts/6aez4K2oVqwIvtg2H68T.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Play'; + font-style: normal; + font-weight: 400; + src: local('Play Regular'), local('Play-Regular'), url(//s.w0bm.com/fonts/6aez4K2oVqwIvtE2H68T.woff2) format('woff2'); + unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek */ +@font-face { + font-family: 'Play'; + font-style: normal; + font-weight: 400; + src: local('Play Regular'), local('Play-Regular'), url(//s.w0bm.com/fonts/6aez4K2oVqwIvtY2H68T.woff2) format('woff2'); + unicode-range: U+0370-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Play'; + font-style: normal; + font-weight: 400; + src: local('Play Regular'), local('Play-Regular'), url(//s.w0bm.com/fonts/6aez4K2oVqwIvto2H68T.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Play'; + font-style: normal; + font-weight: 400; + src: local('Play Regular'), local('Play-Regular'), url(//s.w0bm.com/fonts/6aez4K2oVqwIvts2H68T.woff2) format('woff2'); + unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Play'; + font-style: normal; + font-weight: 400; + src: local('Play Regular'), local('Play-Regular'), url(//s.w0bm.com/fonts/6aez4K2oVqwIvtU2Hw.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} +/* Play Font End */ + @font-face { font-family: "VCR"; src: url("/fonts/vcr.ttf"); @@ -3856,3 +3908,135 @@ video#placeholder { padding-top: 10px; } +.bootstrap-tagsinput input { + vertical-align: sub; +} + +.onclick-menu { + background: none; + border: 0; +} + +.onclick-menu:before { + top: 0; +} + +.bootstrap-tagsinput { + position: relative; +} + +#submittags { + font-size: 16px; + background-color: #222222 ; + color: white; + padding-bottom: 0px; + border: 1px solid #1fb2b0; + border-radius: 0px; + vertical-align: top; + padding: 5px; + outline: 0; +} + +#submittags:hover { + transition: .3s ease-in-out; +} + +.bootstrap-tagsinput { + background: #222222 none repeat scroll 0 0; + border: 1px solid #1fb2b0; + border-radius: 0px; + padding: 5px; + line-height: 0; +} + +.bootstrap-tagsinput input { + vertical-align: middle; +} + +.input-group { + height: 35px; + display: flex; + justify-content: space-evenly; + width: 100%; +} + +label[for='tag-add-toggle'] { + padding-top: 12px; +} + +.nav>li>a:hover, .nav>li>a:focus { + text-decoration: none; + background-color: #12161900; + color: #00fbff; +} + +label[for='tag-add-toggle']:hover { + background-color: #12161900; +} + +.toggo.tag-panel-body { + position: relative; +} + +.toggo.tag-panel-body::after { + content: "TAGS"; + position: absolute; + bottom: 0; + right: 2px; + font-size: 10px; + opacity: 0.2; +} + +.tagtest { + position: relative; + z-index: 1; +} + +div#tag-display { + border-bottom: 1px solid #3e3e3e57; +} + +.embed-responsive.embed-responsive-16by9 { + margin-bottom: 0px; +} + +.onclick-menu-content { + background: linear-gradient(to top,#0a0a0a 0%,#163f42 100%); + margin-top: 10px; + margin-left: -6px; + padding: 10px; + border-radius: 5px; +} + +.bootstrap-tagsinput { + line-height: inherit; /* quick line height possible fix for alignement of tag input*/ +} + +.bootstrap-tagsinput input { + vertical-align: middle; + height: 100%; + position: relative; + top: 0; + bottom: 0; + left: 0; + right: 0; +} +repeating-radial-gradient(black, transparent 100px) +.bootstrap-tagsinput { + height: 100%; +} + +.irc-content { + display: grid; + grid-template-columns: 3fr 1fr; +} + +.irc-info { + margin: 10px; + text-align: center; +} + +.webchat > iframe { + width: 100%; + min-height: 70vh; +} \ No newline at end of file diff --git a/public/fonts/6aez4K2oVqwIvtE2H68T.woff2 b/public/fonts/6aez4K2oVqwIvtE2H68T.woff2 new file mode 100644 index 0000000..2dcc8a9 Binary files /dev/null and b/public/fonts/6aez4K2oVqwIvtE2H68T.woff2 differ diff --git a/public/fonts/6aez4K2oVqwIvtU2Hw.woff2 b/public/fonts/6aez4K2oVqwIvtU2Hw.woff2 new file mode 100644 index 0000000..cb49791 Binary files /dev/null and b/public/fonts/6aez4K2oVqwIvtU2Hw.woff2 differ diff --git a/public/fonts/6aez4K2oVqwIvtY2H68T.woff2 b/public/fonts/6aez4K2oVqwIvtY2H68T.woff2 new file mode 100644 index 0000000..90749f5 Binary files /dev/null and b/public/fonts/6aez4K2oVqwIvtY2H68T.woff2 differ diff --git a/public/fonts/6aez4K2oVqwIvtg2H68T.woff2 b/public/fonts/6aez4K2oVqwIvtg2H68T.woff2 new file mode 100644 index 0000000..c668908 Binary files /dev/null and b/public/fonts/6aez4K2oVqwIvtg2H68T.woff2 differ diff --git a/public/fonts/6aez4K2oVqwIvto2H68T.woff2 b/public/fonts/6aez4K2oVqwIvto2H68T.woff2 new file mode 100644 index 0000000..b8ad9bb Binary files /dev/null and b/public/fonts/6aez4K2oVqwIvto2H68T.woff2 differ diff --git a/public/fonts/6aez4K2oVqwIvts2H68T.woff2 b/public/fonts/6aez4K2oVqwIvts2H68T.woff2 new file mode 100644 index 0000000..a645826 Binary files /dev/null and b/public/fonts/6aez4K2oVqwIvts2H68T.woff2 differ diff --git a/public/fonts/Oswald_latin.woff2 b/public/fonts/Oswald_latin.woff2 new file mode 100644 index 0000000..bdfa7d1 Binary files /dev/null and b/public/fonts/Oswald_latin.woff2 differ diff --git a/public/njum/css/cstms.css b/public/njum/css/cstms.css index ed3311f..5705f35 100644 --- a/public/njum/css/cstms.css +++ b/public/njum/css/cstms.css @@ -1349,3 +1349,160 @@ span.nomsg { margin-right: 1px; } +/* Testing */ +body { + color: #ffffff; +} + +.items { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(128px, 1fr)); + align-items: stretch; + text-align: center; +} + +.panel.panel-default { + position: relative; +} + +.indexThumber { + display: grid; +} + +.vid { + + position: absolute; + text-shadow: 1px 1px solid; + text-shadow: 1px 1px black; + font-weight: bold; + font-size: 18px; + top: -5px; + left: 0; +} + +.relativebla { + + position: relative; +} + +img#indexthumb { + + max-width: 90px; +} + +h3, +.h3 { + + font-size: 1.5rem; +} + +iframe { + width: 100%; + min-height: 750px; +} + +.dropdown-item { + + text-align: center; + +} + +div.source > p.comment { + margin: 0; + display: inline; +} + +.bootstrap-tagsinput .tag { + background-color: #e4061a7a; +} + +/* Float Video und Comment Overhaul */ +img.comment_emoji_small { + max-width: 32px; +} + +.caption { + text-align: left; +} + +.category-box { + background: #000000; +} + + +@keyframes fade-in-up { + 0% { opacity: 0; } + 100% { transform: translateY(0); opacity: 1; } +} + +.video { + max-width: 100%; + max-height: 100%; +} + +.stuck { + position: fixed !important; + top: unset !important; + bottom: 0px !important; + right: 20px !important; + width: 260px !important; + height: 145px !important; + transform: translateY(100%); + animation: fade-in-up .25s ease forwards; + } + + + +div.comment_header { + background: #303030; + padding: 5px; + border-radius: .25rem; + color: white; +} + +.video-comment-wrapper { + padding: 0; + background: rgba(29, 28, 28, 0.94) none repeat scroll 0 0; + margin-bottom: 15px; + border-radius: .25rem; + border: 1px solid black; + text-shadow: 1px 1px black; +} + +.video-comment-body { + padding: 15px; +} + +.dingz { + display: inline; +} + +.user_color { + color: #1fb; +} + +.anim { + + margin: 0; + animation: color 0.6s linear infinite !important; +} + @keyframes color { + 0% {color:red;} + 25% {color:yellow;} + 50% {color:#1FB2B0;} + 75% {color:#23dd06;} + 100% {color:red;} + } + + @-webkit-keyframes color { + 0% {color:red;} + 25% {color:yellow;} + 50% {color:#1FB2B0;} + 75% {color:#23dd06;} + 100% {color:red;} +} + +.container-fluid, .container { + padding-left: 0; + padding-right: 0; +} \ No newline at end of file diff --git a/public/njum/js/newscript.js b/public/njum/js/newscript.js index 8b9dbc7..4d5ab49 100644 --- a/public/njum/js/newscript.js +++ b/public/njum/js/newscript.js @@ -215,14 +215,14 @@ if (typeof video !== 'undefined') { videoElem.addEventListener('play', animationLoop); - $(window).keypress(function(e) { - if (e.which == 32) { - if (videoElem.paused) - videoElem.play(); - else - videoElem.pause(); - } - }); + /*$(window).keypress(function(e) { + /* if (e.which == 32) { + /* if (videoElem.paused) + /* videoElem.play(); + /* else + /* videoElem.pause(); + /* } + });*/ } }; @@ -1315,9 +1315,46 @@ function Copy() { document.execCommand("copy"); } -// Vielen Dank an Flummi! -// This code snippet makes full and valid urls clickable in the info box! + function formatTextEmoji(tag) { + var Field = document.getElementById('cinput'); + var val = Field.value; + var selected_txt = val.substring(Field.selectionStart, Field.selectionEnd); + var before_txt = val.substring(0, Field.selectionStart); + var after_txt = val.substr(Field.selectionEnd); + var str1 = before_txt + ':' + tag + ':' + selected_txt; + var len = str1.length; + Field.value = str1 + '' + '' + after_txt; + Field.focus(); + Field.setSelectionRange(len, len); +} -const infoboxContent = document.querySelector("button#infobox"); -if(infoboxContent) - infoboxContent.dataset.content = infoboxContent.dataset.content.replace(/(https?:\/\/[^\s]+)/g, "$1"); \ No newline at end of file +/* Floating Video */ +var $window = $(window); +var $videoWrap = $('.video-wrap'); +var $video = $('.video'); +var videoHeight = $video.outerHeight(); + +$window.on('scroll', function() { + var windowScrollTop = $window.scrollTop(); + var videoBottom = videoHeight + $videoWrap.offset().top; + + if (windowScrollTop > videoBottom) { + $videoWrap.height(videoHeight); + $video.addClass('stuck'); + } else { + $videoWrap.height('auto'); + $video.removeClass('stuck'); + } +}); +$window.on('scroll', function() { + var windowScrollTop = $window.scrollTop(); + var videoBottom = videoHeight + $videoWrap.offset().top; + + if (windowScrollTop > videoBottom) { + $videoWrap.height(videoHeight); + $video.addClass('stuck'); + } else { + $videoWrap.height('auto'); + $video.removeClass('stuck'); + } +}); \ No newline at end of file diff --git a/public/nojs/custom.css b/public/nojs/custom.css index 5eae51a..f70c1f6 100644 --- a/public/nojs/custom.css +++ b/public/nojs/custom.css @@ -79,4 +79,29 @@ p.comment { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); grid-gap: 1em; +} + +.nojsleleks { + display: inline-block; + align-items: flex-start; + overflow-y: auto; + padding: 15px; + display: grid; + grid-template-columns: 3fr 3fr; + color: white !important; +} + +.irc-content { + display: grid; + grid-template-columns: 5fr 1fr; +} + +.webchat > iframe { + width: 100%; + min-height: 70vh; +} + +.irc-info { + margin: 10px; + text-align: center; } \ No newline at end of file diff --git a/resources/views/layout1/apply.blade.php b/resources/views/layout1/apply.blade.php index f6efa4e..c62ad87 100644 --- a/resources/views/layout1/apply.blade.php +++ b/resources/views/layout1/apply.blade.php @@ -38,7 +38,7 @@
I am at least 18 years or older and I have read and understand the Rules
+I am at least 18 years or older and I have read and understand the Rules
Don't have a desktop client? Why not join our Network via webirc? >>webirc.n0xy.net
More information: n0xy.net