Skip to content

Instantly share code, notes, and snippets.

View arcanedev-maroc's full-sized avatar

ARCANEDEV arcanedev-maroc

View GitHub Profile
@arcanedev-maroc
arcanedev-maroc / latlong.php
Created September 4, 2017 13:53 — forked from arubacao/latlong.php
Latitude Longitude Regular Expression Validation PHP
<?php
/**
* Validates a given latitude $lat
*
* @param float|int|string $lat Latitude
* @return bool `true` if $lat is valid, `false` if not
*/
function validateLatitude($lat) {
return preg_match('/^(\+|-)?(?:90(?:(?:\.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:\.[0-9]{1,6})?))$/', $lat);
@arcanedev-maroc
arcanedev-maroc / readme.md
Created February 1, 2017 21:22 — forked from nasrulhazim/readme.md
Using Middleware to Check Account Activation and Resend Activation E-mail
@arcanedev-maroc
arcanedev-maroc / readme.md
Created February 1, 2017 21:21 — forked from nasrulhazim/readme.md
Enable Account Activation in Order to Login to the System.
@arcanedev-maroc
arcanedev-maroc / readme.md
Created February 1, 2017 21:21 — forked from nasrulhazim/readme.md
Send Welcome Email Notification with Event and Listener

Send Welcome Email Notification with Event and Listener

Step 1

Create SendWelcomeEmailNotification notification

php artisan make:notification SendWelcomeEmailNotification
@arcanedev-maroc
arcanedev-maroc / Observers-ReadOnly.php
Created January 31, 2017 12:52 — forked from jbruni/Observers-ReadOnly.php
Laravel Read Only Model Trait
<?php
namespace app\Observers;
use Illuminate\Database\Eloquent\Model;
class ReadOnly
{
/**
* Listen to the Model creating event.
assertArrayHasKey()
assertClassHasAttribute()
assertArraySubset()
assertClassHasStaticAttribute()
assertContains()
assertContainsOnly()
assertContainsOnlyInstancesOf()
assertCount()
assertDirectoryExists()

assertDirectoryIsReadable()

@mixin for-size($range) {
$phone-upper-boundary: 600px;
$tablet-portrait-upper-boundary: 900px;
$tablet-landscape-upper-boundary: 1200px;
$desktop-upper-boundary: 1800px;
@if $range == phone-only {
@media (max-width: #{$phone-upper-boundary - 1}) { @content; }
} @else if $range == tablet-portrait-up {
@media (min-width: $phone-upper-boundary) { @content; }
@mixin for-size($size) {
@if $size == phone-only {
@media (max-width: 599px) { @content; }
} @else if $size == tablet-portrait-up {
@media (min-width: 600px) { @content; }
} @else if $size == tablet-landscape-up {
@media (min-width: 900px) { @content; }
} @else if $size == desktop-up {
@media (min-width: 1200px) { @content; }
} @else if $size == big-desktop-up {
@mixin for-phone-only {
@media (max-width: 599px) { @content; }
}
@mixin for-tablet-portrait-up {
@media (min-width: 600px) { @content; }
}
@mixin for-tablet-landscape-up {
@media (min-width: 900px) { @content; }
}
@mixin for-desktop-up {
@arcanedev-maroc
arcanedev-maroc / uri.js
Created December 9, 2016 11:42 — forked from jlong/uri.js
URI Parsing with Javascript
var parser = document.createElement('a');
parser.href = "http://example.com:3000/pathname/?search=test#hash";
parser.protocol; // => "http:"
parser.hostname; // => "example.com"
parser.port; // => "3000"
parser.pathname; // => "/pathname/"
parser.search; // => "?search=test"
parser.hash; // => "#hash"
parser.host; // => "example.com:3000"