javascript 获取已标记的Omnifocus任务Applescript
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 获取已标记的Omnifocus任务Applescript相关的知识,希望对你有一定的参考价值。
# javascript for mac - get OF flagged tasks
var of = Application('OmniFocus');
var doc = of.defaultDocument;
getTasks();
function getTasks(){
var today = new Date();
var dueDate = new Date(today.setDate(today.getDate()+7));
var taskList = [];
var flattenedTasks = doc.flattenedTasks.whose({_or: [
{completed: false, flagged: false, blocked: false, dueDate: {"<":dueDate}},
{completed: false, flagged: true, blocked: false},
{completed: false, flagged: false, blocked: false , _match: [ObjectSpecifier().parentTask.flagged, true] },
{completed: false, blocked: false , _match: [ObjectSpecifier().parentTask.dueDate, {"<":dueDate}] }
]});
flattenedTasks().forEach(function(task){
if ( !task.context.hidden && (!task.deferDate()) || (today > task.deferDate()) ) {
var context = (task.context() !== null) ? task.context().name() : '';
var project = (task.container() !== null) ? task.container().name() : '';
var taskDue = false;
if (task.dueDate() || task.parentTask.dueDate()){
taskDue = true;
};
taskList.push({
name: task.name(),
id: task.id(),
context: context,
project: project,
note: task.note(),
due: taskDue,
});
}
});
var retObj = {
'tasks' : taskList,
'count' : taskList.length
};
return JSON.stringify(retObj);
}
以上是关于javascript 获取已标记的Omnifocus任务Applescript的主要内容,如果未能解决你的问题,请参考以下文章
javascript Pivotal Tracker脚本用于标记已完成的故事
如何使用 JavaScript 从元标记中获取信息?
如何在javascript中打印元素异步推送到它的数组?
javascript 获取HTML标记属性
javascript 获取url hash标记href参数
如何使用 JavaScript 函数从 Select Option 标记中获取值