Skip to content

Instantly share code, notes, and snippets.

View icfantv's full-sized avatar

Adam Gordon icfantv

View GitHub Profile
@icfantv
icfantv / snippet.gwt.xml
Created February 6, 2014 20:45
gwt.xml snippet
<!-- this will cause both a production and debug version of the code to be built. in the event of
a client-side error, the user can specify ?debug=true on the URI as the query string and the
debug version of the code will be used such that an emulated stacktrace will be displayed.
This has the effect of us being able to see exactly on what lines of code the error is
occurring.
Additionally, the debug flag is used to dictate what type of error dialog is presented to the
user in the event of an exception being thrown. In production mode, only a simple dialog
with the exception error is displayed. In debug mode, a dialog is displayed with the
exception stacktrace (if available). -->
@icfantv
icfantv / app-controllers.js
Last active August 29, 2015 14:04
Using AngularJS with RequireJS
define(['authorization'], function () {
'use strict';
angular.module('app-controllers', [])
.controller('MainController',
['$scope', '$timeout', 'AuthorizationService',
function ($scope, $timeout, authorizationService) {
// stuff
@icfantv
icfantv / DateFormatProvider.java
Last active August 29, 2015 14:05
Date/Time Format Provider for GWT/GXT
package com.foo.bar.shared;
public interface DateFormatProvider
{
public Date format(String pattern, String dateString);
}
@icfantv
icfantv / directive.js
Created August 14, 2014 17:18
Angular Watch Firing
define(function () {
'use strict';
angular.module('qualifier-directives', [])
.directive('qualifierStatistics',
function () {
function processStatistics($scope, mode) {
// sort the normalized statistics in decending order based on the count
@icfantv
icfantv / example.html
Created May 6, 2015 16:47
ControllerAs Syntax
<html>
<head>
<!-- include angular -->
</head>
<body data-ng-app='app'>
<div data-ng-controller='MyController as MyController'>
<!-- bound once -->
Controller Loaded: {{ ::MyController.someModel.controllerLoaded }}
<hr/>
<!-- two-way binding -->
@icfantv
icfantv / IsolateFormDirective.js
Created May 18, 2015 18:50
Isolate Form Directive
function IsolateFormDirective() {
return {
restrict: 'A',
require: '?form',
link: function link(scope, $element, attrs, formController) {
if (!formController) {
return;
}
<div class="form-group"
data-ng-class="{'has-error': options.validation.errorExistsAndShouldBeVisible}">
<label for="{{ ::id }}" class="control-label">
{{ ::to.label }}
<span data-ng-if="::to.required" class="text-red">*</span>
</label>
<formly-transclude></formly-transclude>
<div class="my-messages" data-my-messages="options"></div>
</div>
@icfantv
icfantv / AuthorizationService.js
Created June 2, 2015 03:33
Authorization Service
function AuthorizationService($injector, $cookieStore, $window, StringUtils, AuthConstants) {
var token = $cookieStore.get(AuthConstants.cookie);
function getUser() {
return token.user;
}
function hasPermission(resourceName, permissionName) {
return _.some(getUser().roles, function(role) {
define(['angular-animate',
'angular-messages'], function() {
'use strict';
var app = angular.module('my-module', [
'ngRoute',
'ngAnimate',
'ngMessages']);
app.config(['$logProvider', '$routeProvider', 'DashboardConstants', InitializeRouteProvider]);
app.config(['$httpProvider', InitializeHttpProvider]);
@icfantv
icfantv / app.js
Last active September 10, 2015 17:10
Promises Example
var app = angular.module('app', []);
app.service('MyHttpService', ['$http', MyHttpService]);
function MyHttpService($http) {
this.doHttpCall = function() {
return $http.get('/foo.json');
};
}
app.service('MyService', ['$q', MyService]);