Skip to content

Instantly share code, notes, and snippets.

@mitrallex
mitrallex / file-form.blade.php
Created February 1, 2018 20:56
laravel-file-hosting
<div class="container is-fluid box">
<div class="new-file">
<form id="new-file-form" action="#" method="#" @submit.prevent="submitForm">
<div class="field is-grouped">
<p class="control is-expanded">
<input class="input" type="text" name="name" placeholder="File name" v-model="fileName" required>
</p>
<div class="file is-info has-name">
<label class="file-label">
<input class="file-input" type="file" ref="file" name="file" @change="addFile()">
@mitrallex
mitrallex / notification.blade.php
Created February 1, 2018 20:54
laravel-file-hosting
<transition name="fade">
<div class="container is-fluid" id="message" v-show="notification">
<div class="notification is-success" v-cloak v-if="!anyError()">
<button class="delete" @click="notification=false"></button>
<h1 class="subtitle">
@{{ message }}
</h1>
</div>
@mitrallex
mitrallex / modal.blade.php
Created February 1, 2018 20:52
laravel-file-hosting
<div class="modal" :class="{'is-active' : modalActive}">
<div class="modal-background" @click="closeModal()"></div>
<div class="modal-content">
<p class="image is-4by3">
<img src="" :src="'{{ asset('storage/' . Auth::user()->name . '_' . Auth::id()) }}' + '/' + file.type + '/' + file.name + '.' + file.extension" :alt="file.name">
</p>
</div>
<button class="modal-close is-large" aria-label="close" @click="closeModal()"></button>
</div>
@mitrallex
mitrallex / confirm.blade.php
Created February 1, 2018 20:51
laravel-file-hosting
<transition name="modal">
<div class="modal-mask" v-if="showConfirm" v-cloak>
<div class="modal-wrapper">
<div class="modal-container">
<div class="modal-body">
<h2>Are you sure?</h2>
</div>
<div class="modal-footer">
@mitrallex
mitrallex / main.blade.php
Created February 1, 2018 20:30
laralve-file-hosting
@extends('layouts.app')
@section('content')
<div class="container is-fluid box">
<div class="tabs is-centered is-large">
<ul>
<li :class="{'is-active': isActive('image')}" @click="getFiles('image')">
<a>
<span class="icon is-small"><i class="fa fa-image"></i></span>
<span>Pictures</span>
@mitrallex
mitrallex / app.blade.php
Created February 1, 2018 20:06
laravel-file-hosting
<!DOCTYPE html>
<html lang="{{ app()->getLocale() }}">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- CSRF Token -->
<meta name="csrf-token" content="{{ csrf_token() }}">
<script>
@mitrallex
mitrallex / app.js
Created February 1, 2018 19:56
laravel-file-hosting
window.Vue = require('vue');
window.axios = require('axios');
let token = document.head.querySelector('meta[name="csrf-token"]');
if (token) {
window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
} else {
console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
}
@mitrallex
mitrallex / FileController.php
Last active June 26, 2018 11:05
laravel-file-hosting
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Storage;
use App;
use App\File;
class FileController extends Controller
{
@mitrallex
mitrallex / MainController.php
Created February 1, 2018 18:45
laravel-file-hosting
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class MainController extends Controller
{
public function index()
{
return view('main');
}
@mitrallex
mitrallex / File.php
Last active February 1, 2018 18:46
laravel-file-hosting
namespace App;
use Illuminate\Database\Eloquent\Model;
class File extends Model
{
protected $fillable = [
'name', 'type', 'extension', 'user_id'
];