2015-06-17 04:11:04 +00:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
|
|
angular
|
|
|
|
|
.module('habitrpg')
|
|
|
|
|
.factory('Tasks', tasksFactory);
|
|
|
|
|
|
|
|
|
|
tasksFactory.$inject = [
|
|
|
|
|
'$rootScope',
|
2015-06-18 03:22:55 +00:00
|
|
|
'User',
|
|
|
|
|
'Shared'
|
2015-06-17 04:11:04 +00:00
|
|
|
];
|
|
|
|
|
|
2015-06-18 03:22:55 +00:00
|
|
|
function tasksFactory($rootScope, User, Shared) {
|
2015-06-17 04:11:04 +00:00
|
|
|
|
|
|
|
|
function editTask(task) {
|
|
|
|
|
task._editing = !task._editing;
|
|
|
|
|
task._tags = !User.user.preferences.tagsCollapsed;
|
|
|
|
|
task._advanced = !User.user.preferences.advancedCollapsed;
|
|
|
|
|
if($rootScope.charts[task.id]) $rootScope.charts[task.id] = false;
|
|
|
|
|
}
|
|
|
|
|
|
2015-06-18 03:22:55 +00:00
|
|
|
function cloneTasks(tasksToClone, arrayWithClonedTasks) {
|
|
|
|
|
var len = tasksToClone.length;
|
|
|
|
|
for (var i = 0; i < len; i+=1) {
|
|
|
|
|
var tmpTask = {};
|
|
|
|
|
var task = tasksToClone[i];
|
|
|
|
|
for( var property in task ) {
|
|
|
|
|
if ( property !== "_id" && property !== "id" && property !== "dateCreated" ) {
|
|
|
|
|
tmpTask[property] = task[property];
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
var newTask = Shared.taskDefaults(tmpTask);
|
|
|
|
|
arrayWithClonedTasks[newTask.type].push(newTask);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2015-06-17 04:11:04 +00:00
|
|
|
return {
|
2015-06-18 03:22:55 +00:00
|
|
|
editTask: editTask,
|
|
|
|
|
cloneTasks: cloneTasks,
|
2015-06-17 04:11:04 +00:00
|
|
|
};
|
|
|
|
|
}
|