Skip to content

Instantly share code, notes, and snippets.

@clouddueling
clouddueling / helpers.php
Created May 21, 2013 03:29
laravel unlock delete button
HTML::macro('unlock_delete', function($url, $message = 'Confirm delete?', $class = "")
{
return "
<div class='btn-group'>
<span class='btn {$class} btn-danger disabled' data-url=\"" . url($url) . "\" data-message=\"{$message}\">
<i class='icon-remove'></i>
</span>
<span class='btn {$class} unlock-btn'>
<i class='icon-lock'></i> Unlock
@clouddueling
clouddueling / MainCtrl.js
Last active November 3, 2022 13:26
How to authenticate using AngularJS
controllers.controller('MainCtrl', function($scope, $location, Facebook, $rootScope, $http, $location, Upload, Auth, User, Question, Category, Serie, Record, Location, Popup, Process, Card, Question) {
$scope.$on('authLoaded', function() {
$scope.isExpert($scope.main.serieId);
$scope.isMember($scope.main.serieId);
});
$scope.loadAuth = function() {
Auth.load().success(function(data) {
$scope.main.user = data.user;
$scope.$broadcast("authLoaded");
@clouddueling
clouddueling / common.fabric.js
Last active June 15, 2021 18:33
common.fabric module for angular/common
/**
* http://fabricjs.com/js/kitchensink/controller.js
* http://fabricjs.com/js/kitchensink/utils.js
* http://fabricjs.com/js/kitchensink/app_config.js
* http://fabricjs.com/events/
* view-source:http://fabricjs.com/kitchensink/
*/
(function() {
@clouddueling
clouddueling / sanitize.php
Created October 6, 2013 03:43
allow vimeo and youtube iframes in HTMLPurifier
/**
* Sanitize string input
* @param string $dirty_html
* @return string
*/
public static function purify( $dirty_html )
{
$config = HTMLPurifier_Config::createDefault();
$config->set('HTML.SafeIframe', true);
$config->set('URI.SafeIframeRegexp', '%^(https?:)?//(www\.youtube(?:-nocookie)?\.com/embed/|player\.vimeo\.com/video/)%'); //allow YouTube and Vimeo
@clouddueling
clouddueling / fulltext_laravel.php
Created February 1, 2013 03:39
A better fulltext search for laravel returning eloquent objects
public static function search_contacts($terms)
{
$terms = mysql_real_escape_string($terms);
$contact_results = Contact::where_account_user_id(Auth::user()->account_user_id)
->raw_where("match (`first`, `last`) against ('{$terms}*' IN BOOLEAN MODE)")
->where_deleted(0)
->paginate(20);
phpconsole($contact_results->results);
@clouddueling
clouddueling / .htaccess
Created October 7, 2013 23:50
Auto version js and css
<IfModule mod_rewrite.c>
RewriteRule ^(.*)\.[\d]{10}\.(css|js)$ $1.$2 [L]
</IfModule>
@clouddueling
clouddueling / controller.php
Created March 26, 2013 02:07
Long pulling in php with Laravel
public function get_checkin_poll()
{
$filepath = 'storage/work/checkin_poll_' . Auth::user()->id;
$last_cycle = File::get($filepath);
$break = false;
$thread = uniqid();
// if last cycle was > 60 secs continue
@clouddueling
clouddueling / fulltextsearch.php
Last active May 17, 2017 21:42
Fulltext eloquent search with Laravel
public static function read_search($terms, $limit = 20)
{
$contact_results = Contact::where_account_user_id(Auth::user()->account_user_id)
->where_deleted(0)
->where_marketing(0)
->where_mass_merge(0)
->raw_where("match (`first`, `last`) against (?)", array($terms))
->take($limit)
->get();
@clouddueling
clouddueling / upload.js
Created March 3, 2013 07:34
resumable.js example
var uploader = (function(){
var r = Resumable({
target: '/upload/stream',
chunkSize: 1*1024*1024,
query: {
serie_id: {{ $serie->id }}
}
}),
@clouddueling
clouddueling / composer.yaml
Created May 6, 2014 23:52
ElasticBeanstalk PHP Composer Config
commands:
01updateComposer:
command: export COMPOSER_HOME=/root && /usr/bin/composer.phar self-update &&
02installVendors:
command: /usr/bin/composer.phar install --no-dev
option_settings:
- namespace: aws:elasticbeanstalk:application:environment
option_name: COMPOSER_HOME
value: /root