EN · DE · RU · FR · ES

#3090: TeamCalEditForm.java

projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java Java-класс, projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java 435 строк · 340 кода · 62 комментария · 33 пустых
Назначение: Исходный файл: web/teamcal/admin/TeamCalEditForm.java. TeamCalEditForm.java является частью приложения управления проектами с открытым исходным кодом ProjectForge.

Исходный код (первые 100 строк)

/////////////////////////////////////////////////////////////////////////////
//
// Project ProjectForge Community Edition
//         www.projectforge.org
//
// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge распространяется по двойной лицензии.
//
// Эта версия для сообщества является бесплатным программным обеспечением; вы можете распространять и/или
// изменять её в соответствии с условиями Стандартной общественной лицензии GNU (GNU General Public License) в том виде,
// в каком она опубликована Фондом свободного программного обеспечения; версия 3 лицензии.
//
// Эта версия для сообщества распространяется в надежде, что она будет полезной,
// но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии
// КОММЕРЧЕСКОЙ ЦЕННОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЁННОЙ ЦЕЛИ. См. Стандартную общественную лицензию GNU
// для получения более подробной информации.
//
// Вместе с этой программой вы должны были получить копию Стандартной общественной лицензии GNU;
// если это не так, см. http://www.gnu.org/licenses/.
//
/////////////////////////////////////////////////////////////////////////////

package org.projectforge.web.teamcal.admin;

import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.form.IChoiceRenderer;
import org.apache.wicket.markup.html.form.TextField;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.PropertyModel;
import org.apache.wicket.model.ResourceModel;
import org.projectforge.business.group.service.GroupService;
import org.projectforge.business.teamcal.admin.model.TeamCalDO;
import org.projectforge.business.teamcal.admin.right.TeamCalRight;
import org.projectforge.business.teamcal.externalsubscription.SubscriptionUpdateInterval;
import org.projectforge.business.user.GroupsComparator;
import org.projectforge.business.user.UsersComparator;
import org.projectforge.framework.persistence.user.entities.GroupDO;
import org.projectforge.framework.persistence.user.entities.PFUserDO;
import org.projectforge.web.WicketSupport;
import org.projectforge.web.common.MultiChoiceListHelper;
import org.projectforge.web.teamcal.dialog.TeamCalICSExportDialog;
import org.projectforge.web.user.GroupsWicketProvider;
import org.projectforge.web.user.UserSelectPanel;
import org.projectforge.web.user.UsersProvider;
import org.projectforge.web.wicket.AbstractEditForm;
import org.projectforge.web.wicket.WicketUtils;
import org.projectforge.web.wicket.bootstrap.GridSize;
import org.projectforge.web.wicket.components.JodaDatePanel;
import org.projectforge.web.wicket.components.MaxLengthTextArea;
import org.projectforge.web.wicket.components.RequiredMaxLengthTextField;
import org.projectforge.web.wicket.flowlayout.*;
import org.slf4j.Logger;
import org.wicketstuff.select2.Select2MultiChoice;

import java.util.Collection;
import java.util.List;
import java.util.Objects;

/**
 * Создаёт верхнюю панель формы для добавления функций фильтрации или других опций.
 *
 * @author Maximilian Lauterbach (m.lauterbach@micromata.de)
 */
public class TeamCalEditForm extends AbstractEditForm<TeamCalDO, TeamCalEditPage>
{
  private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(TeamCalEditForm.class);

  private static final long serialVersionUID = 1379614008604844519L;

  private boolean access = false;

  private JodaDatePanel datePanel;

  MultiChoiceListHelper<PFUserDO> fullAccessUsersListHelper, readonlyAccessUsersListHelper,
      minimalAccessUsersListHelper;

  MultiChoiceListHelper<GroupDO> fullAccessGroupsListHelper, readonlyAccessGroupsListHelper,
      minimalAccessGroupsListHelper;

  private TeamCalICSExportDialog icsExportDialog;

  private FieldsetPanel fsExternalSubscriptionUrl;

  private FieldsetPanel fsExternalSubscriptionInterval;

  /**
   * @param parentPage
   * @param data
   */
  public TeamCalEditForm(final TeamCalEditPage parentPage, final TeamCalDO data)
  {
    super(parentPage, data);
  }

  /**
   * @see org.projectforge.web.wicket.AbstractEditForm#init()
   */

История Git

868d6abb7 2025 -> 2026
63081666f Заголовки исходных файлов: 2024 -> 2025.
8c0b82f21 Удалены неиспользуемые импорты.
4efcbd0fb Миграция в процессе...
b6092df09 Авторское право 2023 -> 2024

868d6abb7

2025 -> 2026
868d6abb75cd191a892911ac8e45058932cf9074
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
index 544afc8e4..1da79851b 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

63081666f

Заголовки исходных файлов: 2024 -> 2025.
63081666f620fb87315f01b817e560e0b2f6a33a
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
index 4311ae3e3..544afc8e4 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

8c0b82f21

Удалены неиспользуемые импорты.
8c0b82f212543f1da4a56ab523e8e599850e8338
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
index 94b1236ca..4311ae3e3 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
@@ -31,16 +31,12 @@ import org.apache.wicket.markup.html.form.TextField;
 import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.model.ResourceModel;
-import org.apache.wicket.spring.injection.annot.SpringBean;
 import org.projectforge.business.group.service.GroupService;
 import org.projectforge.business.teamcal.admin.model.TeamCalDO;
 import org.projectforge.business.teamcal.admin.right.TeamCalRight;
 import org.projectforge.business.teamcal.externalsubscription.SubscriptionUpdateInterval;
-import org.projectforge.business.user.GroupDao;
 import org.projectforge.business.user.GroupsComparator;
-import org.projectforge.business.user.UserDao;
 import org.projectforge.business.user.UsersComparator;
-import org.projectforge.framework.access.AccessChecker;
 import org.projectforge.framework.persistence.user.entities.GroupDO;
 import org.projectforge.framework.persistence.user.entities.PFUserDO;
 import org.projectforge.web.WicketSupport;

4efcbd0fb

Миграция в процессе...
4efcbd0fb62fb527758bd7d1834d604382c55b33
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
index 8b9aeca7a..94b1236ca 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
@@ -43,6 +43,7 @@ import org.projectforge.business.user.UsersComparator;
 import org.projectforge.framework.access.AccessChecker;
 import org.projectforge.framework.persistence.user.entities.GroupDO;
 import org.projectforge.framework.persistence.user.entities.PFUserDO;
+import org.projectforge.web.WicketSupport;
 import org.projectforge.web.common.MultiChoiceListHelper;
 import org.projectforge.web.teamcal.dialog.TeamCalICSExportDialog;
 import org.projectforge.web.user.GroupsWicketProvider;
@@ -73,18 +74,6 @@ public class TeamCalEditForm extends AbstractEditForm<TeamCalDO, TeamCalEditPage
 
   private static final long serialVersionUID = 1379614008604844519L;
 
-  @SpringBean
-  protected AccessChecker accessChecker;
-
-  @SpringBean
-  GroupDao groupDao;
-
-  @SpringBean
-  UserDao userDao;
-
-  @SpringBean
-  GroupService groupService;
-
   private boolean access = false;
 
   private JodaDatePanel datePanel;
@@ -118,11 +107,13 @@ public class TeamCalEditForm extends AbstractEditForm<TeamCalDO, TeamCalEditPage
   protected void init()
   {
     super.init();
-
+    var accessChecker = WicketSupport.getAccessChecker();
+    var userDao = WicketSupport.getUserDao();
+    var groupService = WicketSupport.get(GroupService.class);
     gridBuilder.newSplitPanel(GridSize.COL50);
 
     // проверка прав видимости
-    final TeamCalRight right = new TeamCalRight(accessChecker);
+    final TeamCalRight right = new TeamCalRight();
     if (isNew() == true || right.hasUpdateAccess(getUser(), data, data) == true) {
       access = true;
     }

b6092df09

Авторское право 2023 -> 2024
b6092df0927c4a3b161e888445f31dcab57493f2
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
index d788aba43..8b9aeca7a 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/teamcal/admin/TeamCalEditForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2023 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //