Skip to content

Instantly share code, notes, and snippets.

@jeserkin
Created March 14, 2014 10:46
Show Gist options
  • Save jeserkin/9545559 to your computer and use it in GitHub Desktop.
Save jeserkin/9545559 to your computer and use it in GitHub Desktop.
.factory('Helper', function()
{
return (function()
{
this.validateJson = function(jsonObject)
{
try
{
JSON.stringify(jsonObject);
return true;
}
catch(ex)
{
return false;
}
};
});
})
.filter('jsonKey', function(Helper)
{
return function(jsonObject)
{
var helper = new Helper();
if ( ! helper.validateJson(jsonObject) )
{
return false;
}
var result;
angular.forEach(jsonObject, function(value, key)
{
if ( typeof result === 'undefined' )
{
result = key;
}
});
return result;
};
})
.filter('jsonValue', function(Helper)
{
return function(jsonObject)
{
var helper = new Helper();
if ( ! helper.validateJson(jsonObject) )
{
return false;
}
var result;
angular.forEach(jsonObject, function(value, key)
{
if ( typeof result === 'undefined' )
{
result = value;
}
});
return result;
};
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment