View index.js
const random_password = (len=64) => {
let chars='abcdefghijklmnopqrstuvwxyz123456789-_=+`~:;>,.<}{[]|)(*&^%$#@!';
let password = '';
while(password.length < len) {
password+= chars.charAt(Math.floor((Math.random() * chars.length) + 1) % chars.length);
return password;
View db.factory.js
function $db( type, id ){
var ref = firebase.database().ref(type).child(id);
var obj = $firebaseObject(ref);
return $q(function(resolve,reject){

No media queries are used Since tablets and mobiles are now displaying huge resolutions, if we think its mobile, the body gets a class of .m, if we think its a tablet, it gets a class of .t. if its neither mobile nor tablet,it gets .d unless the screen is wider than 1920px, then it gets .hd

  • Columns must use class .col
  • Mobile use class .m-{desired size} eg .m-12
  • Tablet use class .t-{desired size} eg .t-6
  • Desktop use class .d-{desired size} eg .d-4
  • Huge Desktop use class .hd-{desired size} eg .hd-2
  • 12 columns (.col). extras .row, .container, .container.fluid
  • use .{size}-hide to hide eg .m-hide would hide for mobile.
View yearselect.twig
<select name="year">
<option value="">Not Selected</option>
{% for i in range(19,20) %}
{%for j in range(0,9) %}
{% for k in range (0,9) %}
{% set y %}{{i}}{{j}}{{k}}{%endset%}
{% if y <= "now"|date('Y') %}
<option value="{{y}}">{{y}}</option>
{% endif %}
{% endfor %}
View ArraySingleton.php
namespace UserFrosting\Util;
trait ArraySingleton
protected $data = [];
protected $defaults = [];
private static $instance = null;


curl http://localhost/related.php &

curl http://localhost/artist_rank.php &

curl http://localhost/sitemap.php &
View subarrays.php
function create_csl($length = 3,$comparison_operator = '>')
$fn = '';
$i = 0;
if($i == 0)
View gist:83629275bd3a153915ef
1. go to and right click and copy the link to the version of hhvm you want to rollback to
2. sudo apt-get autoremove hhvm -y
3. wget <link you just copied>
4. sudo dpkg -i <name of file u just downloaded>
5. apt-get install -f
6. service hhvm start
Edit: Don't worry when it errors out on step 4. that is expected. just continue to step 5.