1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- app.controller('ContactCtrl', ['$scope', '$http', '$filter', function($scope, $http, $filter) {
- $http.get('js/app/contact/contacts.json').then(function (resp) {
- $scope.items = resp.data.items;
- $scope.item = $filter('orderBy')($scope.items, 'first')[0];
- $scope.item.selected = true;
- });
- $scope.filter = '';
- $scope.groups = [
- {name: 'Coworkers'},
- {name: 'Family'},
- {name: 'Friends'},
- {name: 'Partners'},
- {name: 'Group'}
- ];
- $scope.createGroup = function(){
- var group = {name: 'New Group'};
- group.name = $scope.checkItem(group, $scope.groups, 'name');
- $scope.groups.push(group);
- };
- $scope.checkItem = function(obj, arr, key){
- var i=0;
- angular.forEach(arr, function(item) {
- if(item[key].indexOf( obj[key] ) == 0){
- var j = item[key].replace(obj[key], '').trim();
- if(j){
- i = Math.max(i, parseInt(j)+1);
- }else{
- i = 1;
- }
- }
- });
- return obj[key] + (i ? ' '+i : '');
- };
- $scope.deleteGroup = function(item){
- $scope.groups.splice($scope.groups.indexOf(item), 1);
- };
- $scope.selectGroup = function(item){
- angular.forEach($scope.groups, function(item) {
- item.selected = false;
- });
- $scope.group = item;
- $scope.group.selected = true;
- $scope.filter = item.name;
- };
- $scope.selectItem = function(item){
- angular.forEach($scope.items, function(item) {
- item.selected = false;
- item.editing = false;
- });
- $scope.item = item;
- $scope.item.selected = true;
- };
- $scope.deleteItem = function(item){
- $scope.items.splice($scope.items.indexOf(item), 1);
- $scope.item = $filter('orderBy')($scope.items, 'first')[0];
- if($scope.item) $scope.item.selected = true;
- };
- $scope.createItem = function(){
- var item = {
- group: 'Friends',
- avatar:'img/a0.jpg'
- };
- $scope.items.push(item);
- $scope.selectItem(item);
- $scope.item.editing = true;
- };
- $scope.editItem = function(item){
- if(item && item.selected){
- item.editing = true;
- }
- };
- $scope.doneEditing = function(item){
- item.editing = false;
- };
- }]);
|