- /** Links to the various contact search pages */
- private void populateContactsGadget(Composite parent) {
- parent.setLayout(EclipseUiUtils.noSpaceGridLayout());
- createGadgetTitleCmp(parent, "Contacts");
- Composite bodyCmp = createGadgetBodyCmp(parent);
- PeopleRapUtils.createOpenSearchEditorLink(getPeopleWorkbenchService(), bodyCmp, "Persons",
- PeopleTypes.PEOPLE_PERSON, getPeopleService().getBasePath(PeopleTypes.PEOPLE_PERSON));
+ private Control createUi(Composite parent, Node context) throws RepositoryException {
+ Composite bodyCmp = new Composite(parent, SWT.NO_FOCUS);
+ bodyCmp.setLayout(new GridLayout());
+
+ // Title
+ Label titleLbl = new Label(bodyCmp, SWT.WRAP | SWT.LEAD);
+ CmsUtils.markup(titleLbl);
+ String titleStr = "<big><b> Hello " + CurrentUser.getDisplayName() + " </b></big>";
+ titleLbl.setText(titleStr);
+ GridData gd = new GridData(SWT.CENTER, SWT.BOTTOM, false, false);
+ gd.verticalIndent = 5;
+ gd.horizontalIndent = 10;
+ titleLbl.setLayoutData(gd);
+
+ Calendar now = GregorianCalendar.getInstance();
+
+ NodeIterator nit = activitiesService.getMyTasks(getSession(), true);
+ if (nit.hasNext()) {
+ List<Node> overdueTasks = new ArrayList<>();
+ while (nit.hasNext()) {
+ Node currNode = nit.nextNode();
+ if (currNode.hasProperty(ActivitiesNames.ACTIVITIES_DUE_DATE)
+ && currNode.getProperty(ActivitiesNames.ACTIVITIES_DUE_DATE).getDate().before(now))
+ overdueTasks.add(currNode);
+ }
+ if (!overdueTasks.isEmpty()) {
+ Label overdueLbl = new Label(bodyCmp, SWT.WRAP | SWT.LEAD);
+ CmsUtils.markup(overdueLbl);
+ long size = overdueTasks.size();
+ String overdueStr = "You have " + size + " overdue task" + (size > 1 ? "s" : "") + ".";
+ overdueLbl.setText(overdueStr);
+ }
+ }
+
+ nit = trackerService.getMyMilestones(getSession(), true);
+ if (nit.hasNext()) {
+ List<Node> overdueMilestones = new ArrayList<>();
+ while (nit.hasNext()) {
+ Node currNode = nit.nextNode();
+ if (currNode.hasProperty(TrackerNames.TRACKER_TARGET_DATE)
+ && currNode.getProperty(TrackerNames.TRACKER_TARGET_DATE).getDate().before(now))
+ overdueMilestones.add(currNode);
+ }
+ if (!overdueMilestones.isEmpty()) {
+ Label overdueLbl = new Label(bodyCmp, SWT.WRAP | SWT.LEAD);
+ CmsUtils.markup(overdueLbl);
+ long size = overdueMilestones.size();
+ String overdueStr = "You have " + size + " overdue milestone" + (size > 1 ? "s" : "") + ".";
+ overdueLbl.setText(overdueStr);
+ }
+ }
+ return bodyCmp;
+ }
+
+ @Override
+ public void setFocus() {
+ // refreshDocListGadget();
+ }
+
+ public void setActivitiesService(ActivitiesService activitiesService) {
+ this.activitiesService = activitiesService;
+ }