<!DOCTYPE html>
<html ng-app="filterTest">
<head>
<script data-require="underscore.js@1.8.3" data-semver="1.8.3" src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular.min.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body>
<h1>ng-repeat filter array of objects</h1>
<p>Since javascript handles arrays passed as an argument by reference the basic filter will trigger a $digest loop.
By using array.splice() to create a shallow copy the spliced filter can get arround this. We can extend this even furthur
with caching as demonstrated in the chached filter.</p>
<p>If you bring up the console in your browser and filter Spliced and Cached you will see that all is fine. As
soon as you enable the Basic filter you will see the $digest loop issues.</p>
<p>Blog artcile about this: <a href="http://www.hackviking.com/development/angularjs-digest-loop-when-filtering-array-of-objects/" alt="angularjs-digest-loop-when-filtering-array-of-objects">angularjs-digest-loop-when-filtering-array-of-objects</a></p>
<div class="ctrls" ng-controller="BasicFilterController">
<h2>Basic</h2>
<input type="checkbox" ng-model="enabled" value="enabled"> Enable
<br>
<a id="albumList_SortTitleASC" class="btn" href="#" alt="Sort alphabetically ASC" ng-click="SetSortOrder('title', false);">
<i class="fa fa-sort-alpha-asc"></i> Sort alphabetically ASC</a>
<br />
<a id="albumList_SortTitleDESC" class="btn" href="#" alt="Sort alphabetically DESC" ng-click="SetSortOrder('title', true);">
<i class="fa fa-sort-alpha-desc"></i> Sort alphabetically DESC</a>
<br />
<a id="albumList_SortPublishedASC" class="btn" href="#" alt="Sort by published date ASC" ng-click="SetSortOrder('published', false);">
<i class="fa fa-sort-numeric-asc"></i> Sort by published date ASC</a>
<br />
<a id="albumList_SortPublishedDESC" class="btn" href="#" alt="Sort by published date DESC" ng-click="SetSortOrder('published', true);">
<i class="fa fa-sort-numeric-desc"></i> Sort by published date DESC</a>
<br />
<a id="albumList_SortUpdatedASC" class="btn" href="#" alt="Sort by updated date ASC" ng-click="SetSortOrder('updated', false);">
<i class="fa fa-sort-numeric-asc"></i> Sort by updated date ASC</a>
<br />
<a id="albumList_SortUpdatedDESC" class="btn" href="#" alt="Sort by updated date DESC" ng-click="SetSortOrder('updated', true);">
<i class="fa fa-sort-numeric-desc"></i> Sort by updated date DESC</a>
<ul id="albumListUL" class="fa-ul" ng-if="enabled">
<li ng-repeat="album in List | BasicFilter:Field:Reverse track by album.gphoto$id.$t">
<i class="fa-li fa fa-google-plus"></i>
<a href="#" ng-id="{{::album.gphoto$id.$t}}" class="g_album" ng-alt="{{::album.title.$t}}">{{::album.title.$t}}
<span class="badge" ng-bind="{{::album.gphoto$numphotos.$t}}"></span>
</a>
</li>
</ul>
</div>
<div class="ctrls" ng-controller="SlicedFilterController">
<h2>Spliced</h2>
<a id="albumList_SortTitleASC" class="btn" href="#" alt="Sort alphabetically ASC" ng-click="SetSortOrder('title', false);">
<i class="fa fa-sort-alpha-asc"></i> Sort alphabetically ASC</a>
<br />
<a id="albumList_SortTitleDESC" class="btn" href="#" alt="Sort alphabetically DESC" ng-click="SetSortOrder('title', true);">
<i class="fa fa-sort-alpha-desc"></i> Sort alphabetically DESC</a>
<br />
<a id="albumList_SortPublishedASC" class="btn" href="#" alt="Sort by published date ASC" ng-click="SetSortOrder('published', false);">
<i class="fa fa-sort-numeric-asc"></i> Sort by published date ASC</a>
<br />
<a id="albumList_SortPublishedDESC" class="btn" href="#" alt="Sort by published date DESC" ng-click="SetSortOrder('published', true);">
<i class="fa fa-sort-numeric-desc"></i> Sort by published date DESC</a>
<br />
<a id="albumList_SortUpdatedASC" class="btn" href="#" alt="Sort by updated date ASC" ng-click="SetSortOrder('updated', false);">
<i class="fa fa-sort-numeric-asc"></i> Sort by updated date ASC</a>
<br />
<a id="albumList_SortUpdatedDESC" class="btn" href="#" alt="Sort by updated date DESC" ng-click="SetSortOrder('updated', true);">
<i class="fa fa-sort-numeric-desc"></i> Sort by updated date DESC</a>
<ul id="albumListUL" class="fa-ul">
<li ng-repeat="album in List | SlicedFilter:Field:Reverse track by album.gphoto$id.$t">
<i class="fa-li fa fa-google-plus"></i>
<a href="#" ng-id="{{::album.gphoto$id.$t}}" class="g_album" ng-alt="{{::album.title.$t}}">{{::album.title.$t}}
<span class="badge" ng-bind="{{::album.gphoto$numphotos.$t}}"></span>
</a>
</li>
</ul>
</div>
<div class="ctrls" ng-controller="CachedFilterController">
<h2>Cached</h2>
<a id="albumList_SortTitleASC" class="btn" href="#" alt="Sort alphabetically ASC" ng-click="SetSortOrder('title', false);">
<i class="fa fa-sort-alpha-asc"></i> Sort alphabetically ASC</a>
<br />
<a id="albumList_SortTitleDESC" class="btn" href="#" alt="Sort alphabetically DESC" ng-click="SetSortOrder('title', true);">
<i class="fa fa-sort-alpha-desc"></i> Sort alphabetically DESC</a>
<br />
<a id="albumList_SortPublishedASC" class="btn" href="#" alt="Sort by published date ASC" ng-click="SetSortOrder('published', false);">
<i class="fa fa-sort-numeric-asc"></i> Sort by published date ASC</a>
<br />
<a id="albumList_SortPublishedDESC" class="btn" href="#" alt="Sort by published date DESC" ng-click="SetSortOrder('published', true);">
<i class="fa fa-sort-numeric-desc"></i> Sort by published date DESC</a>
<br />
<a id="albumList_SortUpdatedASC" class="btn" href="#" alt="Sort by updated date ASC" ng-click="SetSortOrder('updated', false);">
<i class="fa fa-sort-numeric-asc"></i> Sort by updated date ASC</a>
<br />
<a id="albumList_SortUpdatedDESC" class="btn" href="#" alt="Sort by updated date DESC" ng-click="SetSortOrder('updated', true);">
<i class="fa fa-sort-numeric-desc"></i> Sort by updated date DESC</a>
<ul id="albumListUL" class="fa-ul">
<li ng-repeat="album in List | CachedFilter:Field:Reverse track by album.gphoto$id.$t">
<i class="fa-li fa fa-google-plus"></i>
<a href="#" ng-id="{{::album.gphoto$id.$t}}" class="g_album" ng-alt="{{::album.title.$t}}">{{::album.title.$t}}
<span class="badge" ng-bind="{{::album.gphoto$numphotos.$t}}"></span>
</a>
</li>
</ul>
</div>
</body>
</html>
angular.module('filterTest', [])
.service("ListService", ['$http', function($http) {
this.List = [];
this.LoadList = function() {
$http({
method: 'GET',
url: 'albumlist.json',
}).then(function successCallback(response) {
// this callback will be called asynchronously
// when the response is available
// Copy the info into profile
angular.copy(response.data.feed.entry, this.List);
}.bind(this), function errorCallback(response) {
// Implement error handeling
}.bind(this));
};
this.LoadList();
}])
// Controller for the failing filter
.controller("BasicFilterController", ['$scope', 'ListService', function($scope, ListService) {
$scope.enabled = false;
$scope.Field = "title";
$scope.Reverse = false;
$scope.List = ListService.List;
$scope.SetSortOrder = function(field, reverse) {
$scope.Field = field;
$scope.Reverse = reverse;
};
}])
// Controller for the slice filter
.controller("SlicedFilterController", ['$scope', 'ListService', function($scope, ListService) {
$scope.Field = "title";
$scope.Reverse = false;
$scope.List = ListService.List;
$scope.SetSortOrder = function(field, reverse) {
$scope.Field = field;
$scope.Reverse = reverse;
};
}])
// Controller for the chached filter
.controller("CachedFilterController", ['$scope', 'ListService', function($scope, ListService) {
$scope.Field = "title";
$scope.Reverse = false;
$scope.List = ListService.List;
$scope.SetSortOrder = function(field, reverse) {
$scope.Field = field;
$scope.Reverse = reverse;
};
}])
// Basic filter gets the array by referrence triggering digest over and over again
.filter('BasicFilter', function() {
return function(items, field, reverse) {
items.sort(function(a, b){
var aValue = a[field].$t.toLowerCase();
var bValue = b[field].$t.toLowerCase();
if(reverse)
{
return ((aValue > bValue) ? -1 : ((aValue < bValue) ? 1 : 0));
} else {
return ((aValue < bValue) ? -1 : ((aValue > bValue) ? 1 : 0));
}
});
return items;
};
})
// Returns a copy of the filter and will not trigger digest over and over again
.filter('SlicedFilter', function() {
return function(input, field, reverse) {
var items = input.slice();
items.sort(function(a, b){
var aValue = a[field].$t.toLowerCase();
var bValue = b[field].$t.toLowerCase();
if(reverse)
{
return ((aValue > bValue) ? -1 : ((aValue < bValue) ? 1 : 0));
} else {
return ((aValue < bValue) ? -1 : ((aValue > bValue) ? 1 : 0));
}
});
return items;
};
})
/* This filter also caches the result so the sort doesn't need to happen over and over again
* Read more about this filter at https://embed.plnkr.co/ul9ZiK/
*/
.filter('CachedFilter', function() {
return _.memoize(function(input, field, reverse) {
var items = input.slice();
items.sort(function(a, b){
var aValue = a[field].$t.toLowerCase();
var bValue = b[field].$t.toLowerCase();
if(reverse)
{
return ((aValue > bValue) ? -1 : ((aValue < bValue) ? 1 : 0));
} else {
return ((aValue < bValue) ? -1 : ((aValue > bValue) ? 1 : 0));
}
});
return items;
}, function(items, field, reverse) {
return items.length + field + reverse;
});
});
.ctrls {
float: left;
width: 33%;
}
Since javascript handles arrays passed as an argument by reference the basic filter will trigger a $digest loop.
By using array.splice() to create a shallow copy the spliced filter can get arround this. We can extend this even furthur
with caching as demonstrated in the chached filter.
If you bring up the console in your browser and filter Spliced and Cached you will see that all is fine. As
soon as you enable the Basic filter you will see the $digest loop issues.
Blog artcile about this: http://www.hackviking.com/development/angularjs-digest-loop-when-filtering-array-of-objects/
{
"feed": {
"entry": [
{
"gphoto$id": {
"$t": "1000000482404626"
},
"updated": {
"$t": "2016-01-31T19:15:32.739Z"
},
"title": {
"$t": "Auto Backup",
"type": "text"
},
"gphoto$numphotos": {
"$t": 4223
},
"published": {
"$t": "2016-01-31T17:44:14.000Z"
}
},
{
"gphoto$id": {
"$t": "6056987966618281201"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Norge 2014-09",
"type": "text"
},
"gphoto$numphotos": {
"$t": 368
},
"published": {
"$t": "2014-09-09T08:46:46.000Z"
}
},
{
"gphoto$id": {
"$t": "5980880175059657089"
},
"updated": {
"$t": "2016-01-23T02:50:47.003Z"
},
"title": {
"$t": "Testalbum2",
"type": "text"
},
"gphoto$numphotos": {
"$t": 3
},
"published": {
"$t": "2014-02-16T06:29:40.000Z"
}
},
{
"gphoto$id": {
"$t": "6146209479475284577"
},
"updated": {
"$t": "2016-01-23T02:44:58.065Z"
},
"title": {
"$t": "Test album",
"type": "text"
},
"gphoto$numphotos": {
"$t": 86
},
"published": {
"$t": "2015-05-07T19:11:49.000Z"
}
},
{
"gphoto$id": {
"$t": "6139432669973558017"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Island 2015",
"type": "text"
},
"gphoto$numphotos": {
"$t": 549
},
"published": {
"$t": "2015-04-19T12:54:20.000Z"
}
},
{
"gphoto$id": {
"$t": "6133529545679503969"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Upload 2015",
"type": "text"
},
"gphoto$numphotos": {
"$t": 103
},
"published": {
"$t": "2015-04-03T15:07:11.000Z"
}
},
{
"gphoto$id": {
"$t": "6140111617416512257"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6rlovning 2015-04-02",
"type": "text"
},
"gphoto$numphotos": {
"$t": 12
},
"published": {
"$t": "2015-04-21T08:48:59.000Z"
}
},
{
"gphoto$id": {
"$t": "6123939546251205233"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "March 8, 2015",
"type": "text"
},
"gphoto$numphotos": {
"$t": 216
},
"published": {
"$t": "2015-03-08T18:53:06.000Z"
}
},
{
"gphoto$id": {
"$t": "6123841592181676849"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "New York 2015",
"type": "text"
},
"gphoto$numphotos": {
"$t": 787
},
"published": {
"$t": "2015-03-08T12:32:59.000Z"
}
},
{
"gphoto$id": {
"$t": "6090908975822445969"
},
"updated": {
"$t": "2015-11-15T23:25:05.496Z"
},
"title": {
"$t": "Upload 2014",
"type": "text"
},
"gphoto$numphotos": {
"$t": 236
},
"published": {
"$t": "2014-12-09T18:37:37.000Z"
}
},
{
"gphoto$id": {
"$t": "6056986606868018513"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Dressin Bengtsfors 2014",
"type": "text"
},
"gphoto$numphotos": {
"$t": 59
},
"published": {
"$t": "2014-09-09T08:41:30.000Z"
}
},
{
"gphoto$id": {
"$t": "6029968963364921777"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Midsommar 2014",
"type": "text"
},
"gphoto$numphotos": {
"$t": 81
},
"published": {
"$t": "2014-06-28T13:19:14.000Z"
}
},
{
"gphoto$id": {
"$t": "6020620214908276209"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "June 3, 2014",
"type": "text"
},
"gphoto$numphotos": {
"$t": 2
},
"published": {
"$t": "2014-06-03T08:41:19.000Z"
}
},
{
"gphoto$id": {
"$t": "6061263599801007585"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Summerburst 2014",
"type": "text"
},
"gphoto$numphotos": {
"$t": 47
},
"published": {
"$t": "2014-09-20T21:18:25.000Z"
}
},
{
"gphoto$id": {
"$t": "6061265111908338513"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Bohusleden",
"type": "text"
},
"gphoto$numphotos": {
"$t": 92
},
"published": {
"$t": "2014-09-20T21:24:17.000Z"
}
},
{
"gphoto$id": {
"$t": "6061267270539532849"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Vildmarksleden 2014",
"type": "text"
},
"gphoto$numphotos": {
"$t": 20
},
"published": {
"$t": "2014-09-20T21:32:39.000Z"
}
},
{
"gphoto$id": {
"$t": "5978130830133911009"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Testalbum",
"type": "text"
},
"gphoto$numphotos": {
"$t": 4
},
"published": {
"$t": "2014-02-08T20:40:49.000Z"
}
},
{
"gphoto$id": {
"$t": "5950609611600511569"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Summerburst & Streetrace 2013",
"type": "text"
},
"gphoto$numphotos": {
"$t": 37
},
"published": {
"$t": "2013-11-26T16:43:41.000Z"
}
},
{
"gphoto$id": {
"$t": "5950608744273437825"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Karlstad 2013",
"type": "text"
},
"gphoto$numphotos": {
"$t": 13
},
"published": {
"$t": "2013-11-26T16:40:19.000Z"
}
},
{
"gphoto$id": {
"$t": "5950604613580022497"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Dum och dummare",
"type": "text"
},
"gphoto$numphotos": {
"$t": 27
},
"published": {
"$t": "2013-11-26T16:24:18.000Z"
}
},
{
"gphoto$id": {
"$t": "5925067650984455313"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Edinburgh 2013",
"type": "text"
},
"gphoto$numphotos": {
"$t": 65
},
"published": {
"$t": "2013-09-18T20:48:34.000Z"
}
},
{
"gphoto$id": {
"$t": "5925060408603472897"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Dublin 2013",
"type": "text"
},
"gphoto$numphotos": {
"$t": 50
},
"published": {
"$t": "2013-09-18T20:20:28.000Z"
}
},
{
"gphoto$id": {
"$t": "5583376418166783425"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Profile Photos",
"type": "text"
},
"gphoto$numphotos": {
"$t": 2
},
"published": {
"$t": "2013-09-18T18:15:16.000Z"
}
},
{
"gphoto$id": {
"$t": "5899381713445309793"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Seaways",
"type": "text"
},
"gphoto$numphotos": {
"$t": 186
},
"published": {
"$t": "2013-07-11T15:34:01.000Z"
}
},
{
"gphoto$id": {
"$t": "5911937886477198753"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Roadtrip Brest-Gbg Aug 2013",
"type": "text"
},
"gphoto$numphotos": {
"$t": 99
},
"published": {
"$t": "2013-08-14T11:38:23.000Z"
}
},
{
"gphoto$id": {
"$t": "5886403441326897281"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "30\u00e5rsfest",
"type": "text"
},
"gphoto$numphotos": {
"$t": 28
},
"published": {
"$t": "2013-06-06T16:11:42.000Z"
}
},
{
"gphoto$id": {
"$t": "5876729795162937473"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Fun fun fun",
"type": "text"
},
"gphoto$numphotos": {
"$t": 17
},
"published": {
"$t": "2013-05-11T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5875306675362454721"
},
"updated": {
"$t": "2015-11-15T21:03:48.310Z"
},
"title": {
"$t": "2013 Upload",
"type": "text"
},
"gphoto$numphotos": {
"$t": 1116
},
"published": {
"$t": "2013-05-07T19:30:34.000Z"
}
},
{
"gphoto$id": {
"$t": "5875305994149743457"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "MPS Techsupport",
"type": "text"
},
"gphoto$numphotos": {
"$t": 23
},
"published": {
"$t": "2013-05-07T19:27:56.000Z"
}
},
{
"gphoto$id": {
"$t": "5875304627078368369"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Arts and crafts",
"type": "text"
},
"gphoto$numphotos": {
"$t": 29
},
"published": {
"$t": "2013-05-07T19:22:37.000Z"
}
},
{
"gphoto$id": {
"$t": "5875301066822767953"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Trojan trip",
"type": "text"
},
"gphoto$numphotos": {
"$t": 86
},
"published": {
"$t": "2013-05-07T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5875302268042001217"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "2013 Fest o Evenemang",
"type": "text"
},
"gphoto$numphotos": {
"$t": 153
},
"published": {
"$t": "2013-05-07T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5875305504021233473"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Friluftsliv och Natur",
"type": "text"
},
"gphoto$numphotos": {
"$t": 204
},
"published": {
"$t": "2013-05-07T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5875298564819345713"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Aeroseum",
"type": "text"
},
"gphoto$numphotos": {
"$t": 43
},
"published": {
"$t": "2013-05-04T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5875296158600490161"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Miami 2013",
"type": "text"
},
"gphoto$numphotos": {
"$t": 105
},
"published": {
"$t": "2013-04-20T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5868212866212084769"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "New York 2013",
"type": "text"
},
"gphoto$numphotos": {
"$t": 83
},
"published": {
"$t": "2013-04-18T16:42:58.000Z"
}
},
{
"gphoto$id": {
"$t": "5875288600087582065"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Tyskland 2013",
"type": "text"
},
"gphoto$numphotos": {
"$t": 32
},
"published": {
"$t": "2013-03-05T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5834439418047733793"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "We Love The 90's - Malm\u00f6 Arena",
"type": "text"
},
"gphoto$numphotos": {
"$t": 23
},
"published": {
"$t": "2013-01-17T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5875289233770172049"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "London 2013",
"type": "text"
},
"gphoto$numphotos": {
"$t": 25
},
"published": {
"$t": "2013-01-12T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5828820444098270833"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Vikt o Tr\u00e4ning",
"type": "text"
},
"gphoto$numphotos": {
"$t": 103
},
"published": {
"$t": "2013-01-02T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5834437537238861681"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Swedish House Maffia - Oslo",
"type": "text"
},
"gphoto$numphotos": {
"$t": 16
},
"published": {
"$t": "2012-12-22T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5876729976780680593"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Julhelgen",
"type": "text"
},
"gphoto$numphotos": {
"$t": 11
},
"published": {
"$t": "2012-12-22T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5834438285323453857"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Scorpions - G\u00f6ransson Arena",
"type": "text"
},
"gphoto$numphotos": {
"$t": 21
},
"published": {
"$t": "2012-12-08T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5834440204390577745"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Sabaton - Scandinavium",
"type": "text"
},
"gphoto$numphotos": {
"$t": 6
},
"published": {
"$t": "2012-11-17T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5875308562256013745"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Lerkil",
"type": "text"
},
"gphoto$numphotos": {
"$t": 148
},
"published": {
"$t": "2012-10-10T16:01:03.000Z"
}
},
{
"gphoto$id": {
"$t": "5875280967191447009"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Vovvarna",
"type": "text"
},
"gphoto$numphotos": {
"$t": 113
},
"published": {
"$t": "2012-09-12T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5876723683824565761"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Ferrari & Maserati Day",
"type": "text"
},
"gphoto$numphotos": {
"$t": 29
},
"published": {
"$t": "2012-08-25T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5663719472087210961"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "skolfoton",
"type": "text"
},
"gphoto$numphotos": {
"$t": 12
},
"published": {
"$t": "2011-10-15T15:04:10.000Z"
}
},
{
"gphoto$id": {
"$t": "5641711557267511073"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "UE",
"type": "text"
},
"gphoto$numphotos": {
"$t": 39
},
"published": {
"$t": "2011-08-16T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5622074136751488641"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Midsommar 2011",
"type": "text"
},
"gphoto$numphotos": {
"$t": 72
},
"published": {
"$t": "2011-06-25T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5609489152762393121"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "iPhone Pictures",
"type": "text"
},
"gphoto$numphotos": {
"$t": 142
},
"published": {
"$t": "2011-05-22T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5606594036087210001"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Wipcore Drift",
"type": "text"
},
"gphoto$numphotos": {
"$t": 19
},
"published": {
"$t": "2011-05-14T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5606594833531906305"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Humor",
"type": "text"
},
"gphoto$numphotos": {
"$t": 535
},
"published": {
"$t": "2011-05-14T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5604460603086778337"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "MM bilder",
"type": "text"
},
"gphoto$numphotos": {
"$t": 331
},
"published": {
"$t": "2011-05-08T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5604043137553780641"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Gamla inscannade kort",
"type": "text"
},
"gphoto$numphotos": {
"$t": 132
},
"published": {
"$t": "2011-05-07T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575453405161725601"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "P\u00e4rlstickaregatan 6",
"type": "text"
},
"gphoto$numphotos": {
"$t": 23
},
"published": {
"$t": "2010-09-05T12:26:03.000Z"
}
},
{
"gphoto$id": {
"$t": "5461583610115016529"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Bilar",
"type": "text"
},
"gphoto$numphotos": {
"$t": 18
},
"published": {
"$t": "2010-04-18T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575407230057244529"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "inflyttningsfest 2010-03-13",
"type": "text"
},
"gphoto$numphotos": {
"$t": 128
},
"published": {
"$t": "2010-03-13T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5430343690432266401"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Nya l\u00e4genheten",
"type": "text"
},
"gphoto$numphotos": {
"$t": 11
},
"published": {
"$t": "2010-01-24T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5356965624826518721"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Roadtrip 2009",
"type": "text"
},
"gphoto$numphotos": {
"$t": 130
},
"published": {
"$t": "2009-07-10T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345513154849684049"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "26\u00e5rs fest",
"type": "text"
},
"gphoto$numphotos": {
"$t": 16
},
"published": {
"$t": "2009-05-30T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5347252240614901297"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Jag",
"type": "text"
},
"gphoto$numphotos": {
"$t": 140
},
"published": {
"$t": "2008-10-01T16:42:56.000Z"
}
},
{
"gphoto$id": {
"$t": "5575452703747706385"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Random parkering",
"type": "text"
},
"gphoto$numphotos": {
"$t": 19
},
"published": {
"$t": "2008-10-01T15:41:52.000Z"
}
},
{
"gphoto$id": {
"$t": "5575452602183302353"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "sm\u00f6rslottsgatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 4
},
"published": {
"$t": "2008-10-01T15:41:50.000Z"
}
},
{
"gphoto$id": {
"$t": "5575486945347265953"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "drop film",
"type": "text"
},
"gphoto$numphotos": {
"$t": 11
},
"published": {
"$t": "2008-10-01T14:43:26.000Z"
}
},
{
"gphoto$id": {
"$t": "5575408303453807841"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "sandesl\u00e4tt",
"type": "text"
},
"gphoto$numphotos": {
"$t": 10
},
"published": {
"$t": "2008-10-01T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5802419338426667345"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "2008-07-23 f\u00f6rfest gibraltargatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 127
},
"published": {
"$t": "2008-07-23T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5461584171531436609"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "STCC 2008-06-14",
"type": "text"
},
"gphoto$numphotos": {
"$t": 29
},
"published": {
"$t": "2008-06-14T09:17:41.000Z"
}
},
{
"gphoto$id": {
"$t": "5875311153836246849"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Nationaldagen 2008",
"type": "text"
},
"gphoto$numphotos": {
"$t": 28
},
"published": {
"$t": "2008-06-06T11:37:59.000Z"
}
},
{
"gphoto$id": {
"$t": "5575398217982138449"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "colldov",
"type": "text"
},
"gphoto$numphotos": {
"$t": 19
},
"published": {
"$t": "2008-04-13T15:04:24.000Z"
}
},
{
"gphoto$id": {
"$t": "5345524189330108129"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Maskerad",
"type": "text"
},
"gphoto$numphotos": {
"$t": 17
},
"published": {
"$t": "2007-11-17T19:37:29.000Z"
}
},
{
"gphoto$id": {
"$t": "5876755148234070721"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Slappkv\u00e4ll Gibraltargatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 13
},
"published": {
"$t": "2007-10-02T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575491886127397409"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Bulgarien 2007",
"type": "text"
},
"gphoto$numphotos": {
"$t": 61
},
"published": {
"$t": "2007-07-04T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5876701759430431265"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6delsedag 2007",
"type": "text"
},
"gphoto$numphotos": {
"$t": 12
},
"published": {
"$t": "2007-05-26T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5876704017987862833"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6rfest Gibraltargatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 12
},
"published": {
"$t": "2007-05-16T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5876703021986322481"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Valborg 2007",
"type": "text"
},
"gphoto$numphotos": {
"$t": 19
},
"published": {
"$t": "2007-04-30T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5461592915224635761"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Jens 25 \u00e5rsskiva",
"type": "text"
},
"gphoto$numphotos": {
"$t": 61
},
"published": {
"$t": "2007-03-31T19:14:55.000Z"
}
},
{
"gphoto$id": {
"$t": "5876707712361843281"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Utg\u00e5ng",
"type": "text"
},
"gphoto$numphotos": {
"$t": 29
},
"published": {
"$t": "2007-01-27T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5875536467665678945"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6rfest 2007-01-20",
"type": "text"
},
"gphoto$numphotos": {
"$t": 7
},
"published": {
"$t": "2007-01-20T22:41:16.000Z"
}
},
{
"gphoto$id": {
"$t": "5575497109097497921"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "jul och ny\u00e5r priv",
"type": "text"
},
"gphoto$numphotos": {
"$t": 171
},
"published": {
"$t": "2006-12-22T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345519815640687105"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Deep Lucia",
"type": "text"
},
"gphoto$numphotos": {
"$t": 137
},
"published": {
"$t": "2006-12-13T19:12:20.000Z"
}
},
{
"gphoto$id": {
"$t": "5345507386182795569"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "KVD 15-\u00e5rs jubileum",
"type": "text"
},
"gphoto$numphotos": {
"$t": 76
},
"published": {
"$t": "2006-12-08T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575408512781821329"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "party slipp",
"type": "text"
},
"gphoto$numphotos": {
"$t": 182
},
"published": {
"$t": "2006-12-01T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345519246010985217"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Kenos homecomming",
"type": "text"
},
"gphoto$numphotos": {
"$t": 56
},
"published": {
"$t": "2006-11-04T19:29:21.000Z"
}
},
{
"gphoto$id": {
"$t": "5802422692748431265"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "2006-10-27 Utekv\u00e4ll",
"type": "text"
},
"gphoto$numphotos": {
"$t": 142
},
"published": {
"$t": "2006-10-27T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5876731931907996609"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Efterfest Gibraltargatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 22
},
"published": {
"$t": "2006-10-01T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345526106724062433"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "sm\u00e5blandat",
"type": "text"
},
"gphoto$numphotos": {
"$t": 113
},
"published": {
"$t": "2006-09-29T16:51:38.000Z"
}
},
{
"gphoto$id": {
"$t": "5345525221965461473"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Ron homecoming",
"type": "text"
},
"gphoto$numphotos": {
"$t": 56
},
"published": {
"$t": "2006-09-26T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345515988686196017"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "ps party",
"type": "text"
},
"gphoto$numphotos": {
"$t": 105
},
"published": {
"$t": "2006-09-22T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5876730989666550385"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "TV",
"type": "text"
},
"gphoto$numphotos": {
"$t": 8
},
"published": {
"$t": "2006-08-03T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345513349906146081"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Paris",
"type": "text"
},
"gphoto$numphotos": {
"$t": 154
},
"published": {
"$t": "2006-04-12T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345512536811499537"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Sista natten med g\u00e4nget",
"type": "text"
},
"gphoto$numphotos": {
"$t": 43
},
"published": {
"$t": "2006-03-20T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575403310794535633"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "17 party",
"type": "text"
},
"gphoto$numphotos": {
"$t": 27
},
"published": {
"$t": "2006-02-21T03:11:08.000Z"
}
},
{
"gphoto$id": {
"$t": "5345512333196366545"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Apr\u00e9s ski",
"type": "text"
},
"gphoto$numphotos": {
"$t": 14
},
"published": {
"$t": "2006-02-20T01:43:33.000Z"
}
},
{
"gphoto$id": {
"$t": "5575488464628205393"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "T Fest",
"type": "text"
},
"gphoto$numphotos": {
"$t": 80
},
"published": {
"$t": "2006-02-03T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575522568042567777"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Videos",
"type": "text"
},
"gphoto$numphotos": {
"$t": 43
},
"published": {
"$t": "2006-01-29T18:04:30.000Z"
}
},
{
"gphoto$id": {
"$t": "5575486369633797777"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Park Lane 2006 Blandat",
"type": "text"
},
"gphoto$numphotos": {
"$t": 54
},
"published": {
"$t": "2006-01-28T22:10:03.000Z"
}
},
{
"gphoto$id": {
"$t": "5345515428454958465"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "park lane 2006-01-29",
"type": "text"
},
"gphoto$numphotos": {
"$t": 44
},
"published": {
"$t": "2006-01-27T19:26:31.000Z"
}
},
{
"gphoto$id": {
"$t": "5575489514038709185"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "j f\u00f6rfest",
"type": "text"
},
"gphoto$numphotos": {
"$t": 72
},
"published": {
"$t": "2006-01-04T20:15:13.000Z"
}
},
{
"gphoto$id": {
"$t": "5345510115915007553"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "RIP forrden",
"type": "text"
},
"gphoto$numphotos": {
"$t": 22
},
"published": {
"$t": "2005-12-24T18:30:51.000Z"
}
},
{
"gphoto$id": {
"$t": "5345511452357246001"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "party 18",
"type": "text"
},
"gphoto$numphotos": {
"$t": 62
},
"published": {
"$t": "2005-12-22T15:08:31.000Z"
}
},
{
"gphoto$id": {
"$t": "5345528365630039041"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "middag",
"type": "text"
},
"gphoto$numphotos": {
"$t": 181
},
"published": {
"$t": "2005-09-01T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575451122992688385"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6rfest Sm\u00f6rslottsgatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 26
},
"published": {
"$t": "2004-08-28T15:41:54.000Z"
}
},
{
"gphoto$id": {
"$t": "5575452372937420833"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Random parkering",
"type": "text"
},
"gphoto$numphotos": {
"$t": 48
},
"published": {
"$t": "2004-06-26T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345525165356697569"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6rfest 2004-05-29",
"type": "text"
},
"gphoto$numphotos": {
"$t": 57
},
"published": {
"$t": "2004-05-29T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575408443073844817"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Efterfest 2004-05-22",
"type": "text"
},
"gphoto$numphotos": {
"$t": 10
},
"published": {
"$t": "2004-05-22T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575451407670402177"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Efterfest Sm\u00f6rslottsgatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 34
},
"published": {
"$t": "2004-05-15T15:41:52.000Z"
}
},
{
"gphoto$id": {
"$t": "5575420140740522769"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Fest Sm\u00f6rslottsgatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 24
},
"published": {
"$t": "2004-05-07T15:41:53.000Z"
}
},
{
"gphoto$id": {
"$t": "5345522368710249345"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6rkr\u00f6k 2004-05-07",
"type": "text"
},
"gphoto$numphotos": {
"$t": 12
},
"published": {
"$t": "2004-05-07T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575408378901772641"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6rfest 2004-04-30",
"type": "text"
},
"gphoto$numphotos": {
"$t": 9
},
"published": {
"$t": "2004-04-30T14:32:03.000Z"
}
},
{
"gphoto$id": {
"$t": "5575402919022603089"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6rfest 2004-04-22",
"type": "text"
},
"gphoto$numphotos": {
"$t": 12
},
"published": {
"$t": "2004-04-22T18:38:35.000Z"
}
},
{
"gphoto$id": {
"$t": "5575399071753556081"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "G Days med Xbox2004-04-20",
"type": "text"
},
"gphoto$numphotos": {
"$t": 23
},
"published": {
"$t": "2004-04-20T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345525908129120513"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Fest 2004-04-16",
"type": "text"
},
"gphoto$numphotos": {
"$t": 20
},
"published": {
"$t": "2004-04-16T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5876702253374409825"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "F\u00f6rfest Sm\u00f6rslottsgatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 6
},
"published": {
"$t": "2004-03-06T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575496935288417969"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Julen 2003",
"type": "text"
},
"gphoto$numphotos": {
"$t": 21
},
"published": {
"$t": "2003-12-24T15:42:48.000Z"
}
},
{
"gphoto$id": {
"$t": "5575458569046482945"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Ny\u00e5r 2002-03",
"type": "text"
},
"gphoto$numphotos": {
"$t": 10
},
"published": {
"$t": "2002-12-31T17:46:49.000Z"
}
},
{
"gphoto$id": {
"$t": "5575451990182550369"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Norstr\u00f6msgatan",
"type": "text"
},
"gphoto$numphotos": {
"$t": 32
},
"published": {
"$t": "2002-10-04T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5345509609117557825"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "nijmegen",
"type": "text"
},
"gphoto$numphotos": {
"$t": 46
},
"published": {
"$t": "2002-09-17T08:49:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575496797494870113"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Inst\u00f6n",
"type": "text"
},
"gphoto$numphotos": {
"$t": 14
},
"published": {
"$t": "2002-07-29T15:43:26.000Z"
}
},
{
"gphoto$id": {
"$t": "5575497080702649521"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Karlstad",
"type": "text"
},
"gphoto$numphotos": {
"$t": 4
},
"published": {
"$t": "2002-07-18T15:42:48.000Z"
}
},
{
"gphoto$id": {
"$t": "5575496889532371537"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Roadtrip",
"type": "text"
},
"gphoto$numphotos": {
"$t": 5
},
"published": {
"$t": "2002-07-05T15:43:26.000Z"
}
},
{
"gphoto$id": {
"$t": "5575459366211929185"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Inst\u00f6n - Marstrand",
"type": "text"
},
"gphoto$numphotos": {
"$t": 32
},
"published": {
"$t": "2002-06-22T15:43:25.000Z"
}
},
{
"gphoto$id": {
"$t": "5345524470653547969"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Min student",
"type": "text"
},
"gphoto$numphotos": {
"$t": 36
},
"published": {
"$t": "2002-05-28T07:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5575397139284487553"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Ny\u00e5r",
"type": "text"
},
"gphoto$numphotos": {
"$t": 20
},
"published": {
"$t": "2001-12-31T08:00:00.000Z"
}
},
{
"gphoto$id": {
"$t": "5674952031217368849"
},
"updated": {
"$t": "2015-09-04T15:47:26.370Z"
},
"title": {
"$t": "Bilder fr\u00e5n Gymnasietiden",
"type": "text"
},
"gphoto$numphotos": {
"$t": 120
},
"published": {
"$t": "2001-01-01T08:00:00.000Z"
}
}
],
"xmlns": "http://www.w3.org/2005/Atom",
"xmlns$gphoto": "http://schemas.google.com/photos/2007"
},
"version": "1.0",
"encoding": "UTF-8"
}