diff --git a/ccm-atoz/pdl/com/arsdigita/atoz/AtoZ.pdl b/ccm-atoz/pdl/com/arsdigita/atoz/AtoZ.pdl
index 0002af494..825f1c46a 100755
--- a/ccm-atoz/pdl/com/arsdigita/atoz/AtoZ.pdl
+++ b/ccm-atoz/pdl/com/arsdigita/atoz/AtoZ.pdl
@@ -22,5 +22,5 @@ import com.arsdigita.web.Application;
// In contrast to other applications atoz_app is needed here and used in
// associations, e.g. AtoZProvider.
object type AtoZ extends Application {
- reference key (atoz_app.application_id);
+ reference key (atoz_app.application_id);
}
diff --git a/ccm-cms-types-article/src/com/arsdigita/cms/contenttypes/ui/ArticlePropertyForm.java b/ccm-cms-types-article/src/com/arsdigita/cms/contenttypes/ui/ArticlePropertyForm.java
index 0ad5597d1..d5714583a 100755
--- a/ccm-cms-types-article/src/com/arsdigita/cms/contenttypes/ui/ArticlePropertyForm.java
+++ b/ccm-cms-types-article/src/com/arsdigita/cms/contenttypes/ui/ArticlePropertyForm.java
@@ -96,7 +96,7 @@ public class ArticlePropertyForm extends GenericArticlePropertyForm
@Override
public void validate(FormSectionEvent e) throws FormProcessException {
- FormData d = e.getFormData();
+ super.validate(e);
}
/** Form initialisation hook. Fills widgets with data. */
diff --git a/ccm-cms-types-event/src/com/arsdigita/cms/contenttypes/ui/EventPropertyForm.java b/ccm-cms-types-event/src/com/arsdigita/cms/contenttypes/ui/EventPropertyForm.java
index 5085db783..c1d393c7f 100755
--- a/ccm-cms-types-event/src/com/arsdigita/cms/contenttypes/ui/EventPropertyForm.java
+++ b/ccm-cms-types-event/src/com/arsdigita/cms/contenttypes/ui/EventPropertyForm.java
@@ -242,6 +242,8 @@ public class EventPropertyForm extends BasicPageForm
@Override
public void validate(FormSectionEvent e) throws FormProcessException {
+ super.validate(e);
+
FormData d = e.getFormData();
java.util.Date startDate = d.getDate(START_DATE);
java.util.Date endDate = d.getDate(END_DATE);
diff --git a/ccm-cms-types-htmlform/src/com/arsdigita/cms/contenttypes/ui/HTMLFormPropertyForm.java b/ccm-cms-types-htmlform/src/com/arsdigita/cms/contenttypes/ui/HTMLFormPropertyForm.java
index 5a00e6285..50856c59f 100644
--- a/ccm-cms-types-htmlform/src/com/arsdigita/cms/contenttypes/ui/HTMLFormPropertyForm.java
+++ b/ccm-cms-types-htmlform/src/com/arsdigita/cms/contenttypes/ui/HTMLFormPropertyForm.java
@@ -94,7 +94,7 @@ public class HTMLFormPropertyForm extends BasicPageForm implements FormProcessLi
@Override
public void validate(FormSectionEvent e) throws FormProcessException {
- FormData d = e.getFormData();
+ super.validate(e);
}
/** Form initialisation hook. Fills widgets with data. */
diff --git a/ccm-cms/src/com/arsdigita/cms/contenttypes/ui/GenericArticlePropertyForm.java b/ccm-cms/src/com/arsdigita/cms/contenttypes/ui/GenericArticlePropertyForm.java
index 85e24b503..278a4863e 100755
--- a/ccm-cms/src/com/arsdigita/cms/contenttypes/ui/GenericArticlePropertyForm.java
+++ b/ccm-cms/src/com/arsdigita/cms/contenttypes/ui/GenericArticlePropertyForm.java
@@ -72,7 +72,7 @@ public class GenericArticlePropertyForm extends BasicPageForm
@Override
public void validate(FormSectionEvent e) throws FormProcessException {
- FormData d = e.getFormData();
+ super.validate(e);
}
/** Form initialisation hook. Fills widgets with data. */
diff --git a/ccm-cms/src/com/arsdigita/cms/ui/authoring/BasicPageForm.java b/ccm-cms/src/com/arsdigita/cms/ui/authoring/BasicPageForm.java
index a3dd23db3..0d7be0a8a 100755
--- a/ccm-cms/src/com/arsdigita/cms/ui/authoring/BasicPageForm.java
+++ b/ccm-cms/src/com/arsdigita/cms/ui/authoring/BasicPageForm.java
@@ -31,6 +31,7 @@ import com.arsdigita.bebop.parameters.DateParameter;
import com.arsdigita.bebop.parameters.ParameterData;
import com.arsdigita.bebop.parameters.ParameterModel;
import com.arsdigita.cms.ContentBundle;
+import com.arsdigita.cms.ContentItem;
import com.arsdigita.cms.ContentPage;
import com.arsdigita.cms.ContentSection;
import com.arsdigita.cms.Folder;
@@ -43,12 +44,12 @@ import javax.servlet.ServletException;
import java.util.Date;
/**
- * A form for editing subclasses of ContentPage. This is just a convenience
- * class.
+ * A form for editing subclasses of ContentPage. This is just a convenience class.
*
* @author Stanislav Freidin (stas@arsdigita.com)
* @version $Revision: #22 $ $DateTime: 2004/08/17 23:15:09 $
- **/
+ *
+ */
public abstract class BasicPageForm extends BasicItemForm {
private FormSection m_widgetSection;
@@ -59,8 +60,7 @@ public abstract class BasicPageForm extends BasicItemForm {
* Construct a new BasicPageForm
*
* @param formName the name of this form
- * @param itemModel The {@link ItemSelectionModel} which will
- * be responsible for loading the current item
+ * @param itemModel The {@link ItemSelectionModel} which will be responsible for loading the current item
*/
public BasicPageForm(String formName, ItemSelectionModel itemModel) {
super(formName, itemModel);
@@ -71,8 +71,7 @@ public abstract class BasicPageForm extends BasicItemForm {
*
* @param formName the name of this form
* @param columnPanel the columnpanel of the form
- * @param itemModel The {@link ItemSelectionModel} which will
- * be responsible for loading the current item
+ * @param itemModel The {@link ItemSelectionModel} which will be responsible for loading the current item
*/
public BasicPageForm(String formName,
ColumnPanel columnPanel,
@@ -81,8 +80,8 @@ public abstract class BasicPageForm extends BasicItemForm {
}
/**
- * Add various widgets to the form. Child classes should override
- * this method to perform all their widget-adding needs
+ * Add various widgets to the form. Child classes should override this method to perform all their widget-adding
+ * needs
*/
@Override
protected void addWidgets() {
@@ -109,13 +108,10 @@ public abstract class BasicPageForm extends BasicItemForm {
}
/**
- * Utility method to initialize the name/title widgets. Child classes
- * may call this method from the init listener
+ * Utility method to initialize the name/title widgets. Child classes may call this method from the init listener
*
- * @param e the {@link FormSectionEvent} which was passed to the
- * init listener
- * @return the ContentPage instance which was extracted from the
- * ItemSelectionModel
+ * @param e the {@link FormSectionEvent} which was passed to the init listener
+ * @return the ContentPage instance which was extracted from the ItemSelectionModel
*/
public ContentPage initBasicWidgets(FormSectionEvent e) {
Assert.exists(getItemSelectionModel());
@@ -143,9 +139,10 @@ public abstract class BasicPageForm extends BasicItemForm {
return item;
}
- /*@Override
+ @Override
public void validate(final FormSectionEvent fse) throws FormProcessException {
- ACSObject parent = getItemSelectionModel().getSelectedItem(fse.getPageState()).getParent();
+ final ContentItem item = getItemSelectionModel().getSelectedItem(fse.getPageState());
+ ACSObject parent = item.getParent();
if (parent instanceof ContentBundle) {
@@ -154,16 +151,18 @@ public abstract class BasicPageForm extends BasicItemForm {
if (parent instanceof Folder) {
final Folder folder = (Folder) parent;
Assert.exists(folder);
- validateNameUniqueness(folder, fse);
+ final FormData data = fse.getFormData();
+ final String name = data.getString(NAME);
+ if (!item.getName().equals(name)) {
+ validateNameUniqueness(folder, fse);
+ }
}
- }*/
+ }
/**
- * Utility method to process the name/title widgets. Child classes
- * may call this method from the process listener.
+ * Utility method to process the name/title widgets. Child classes may call this method from the process listener.
*
- * @param e the {@link FormSectionEvent} which was passed to the
- * process listener
+ * @param e the {@link FormSectionEvent} which was passed to the process listener
*/
public ContentPage processBasicWidgets(FormSectionEvent e) {
Assert.exists(getItemSelectionModel());
@@ -187,15 +186,11 @@ public abstract class BasicPageForm extends BasicItemForm {
}
/**
- * A utility method that will create a new item and tell the selection
- * model to select the new item. Creation components may call this method
- * in the process listener of their form. See {@link PageCreate} for
- * an example.
+ * A utility method that will create a new item and tell the selection model to select the new item. Creation
+ * components may call this method in the process listener of their form. See {@link PageCreate} for an example.
*
* @param state the current page state
- * @return the new content item (or a proper subclass thereof)
- * @pre state != null
- * @post return != null
+ * @return the new content item (or a proper subclass thereof) @pre state != null @post return != null
*/
public ContentPage createContentPage(PageState state)
throws FormProcessException {
@@ -220,7 +215,8 @@ public abstract class BasicPageForm extends BasicItemForm {
}
/**
- * Constructs a new LaunchDateValidationListener.
+ * Constructs a new
+ * LaunchDateValidationListener.
*/
public class LaunchDateValidationListener implements ParameterListener {
@@ -235,6 +231,5 @@ public abstract class BasicPageForm extends BasicItemForm {
return;
}
}
-
}
}
diff --git a/ccm-sci-publications/src/com/arsdigita/cms/contenttypes/ui/PublisherCreate.java b/ccm-sci-publications/src/com/arsdigita/cms/contenttypes/ui/PublisherCreate.java
index 717412926..3405851c5 100644
--- a/ccm-sci-publications/src/com/arsdigita/cms/contenttypes/ui/PublisherCreate.java
+++ b/ccm-sci-publications/src/com/arsdigita/cms/contenttypes/ui/PublisherCreate.java
@@ -67,9 +67,11 @@ public class PublisherCreate extends PageCreate {
add(launchDate);
}
}
-
+
@Override
- public void validate(FormSectionEvent fse) throws FormProcessException {
+ public void validate(FormSectionEvent fse) throws FormProcessException {
+ //We don't call super.validate(fse); here because the name (URL fragment) of a publisher is generated in a different manner
+ //than the name (URL fragment) of other content items.
Folder folder = m_parent.getFolder(fse.getPageState());
Assert.exists(folder);
validateNameUniqueness(folder, fse, Publisher.urlSave(getFullName(fse)));
diff --git a/ccm-webpage/src/com/arsdigita/cms/webpage/ui/authoring/WebpagePropertiesForm.java b/ccm-webpage/src/com/arsdigita/cms/webpage/ui/authoring/WebpagePropertiesForm.java
index 69128864c..fa5f497ea 100755
--- a/ccm-webpage/src/com/arsdigita/cms/webpage/ui/authoring/WebpagePropertiesForm.java
+++ b/ccm-webpage/src/com/arsdigita/cms/webpage/ui/authoring/WebpagePropertiesForm.java
@@ -104,8 +104,9 @@ public class WebpagePropertiesForm
}
+ @Override
public void validate(FormSectionEvent e) throws FormProcessException {
- FormData d = e.getFormData();
+ super.validate(e);
}
/** Form initialisation hook. Fills widgets with data. */