Verschiedene BugFixes und Formtierungen
git-svn-id: https://svn.libreccm.org/ccm/trunk@1326 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
6152ff491e
commit
4b8b30bf80
|
|
@ -21,13 +21,13 @@ package com.arsdigita.cms.lifecycle;
|
||||||
import com.arsdigita.runtime.AbstractConfig;
|
import com.arsdigita.runtime.AbstractConfig;
|
||||||
// import com.arsdigita.runtime.CCMResourceManager;
|
// import com.arsdigita.runtime.CCMResourceManager;
|
||||||
// import com.arsdigita.util.UncheckedWrapperException;
|
// import com.arsdigita.util.UncheckedWrapperException;
|
||||||
|
import com.arsdigita.util.parameter.BooleanParameter;
|
||||||
import com.arsdigita.util.parameter.IntegerParameter;
|
import com.arsdigita.util.parameter.IntegerParameter;
|
||||||
import com.arsdigita.util.parameter.Parameter;
|
import com.arsdigita.util.parameter.Parameter;
|
||||||
// import com.arsdigita.util.parameter.StringParameter;
|
// import com.arsdigita.util.parameter.StringParameter;
|
||||||
|
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* LifecycleConfig
|
* LifecycleConfig
|
||||||
*
|
*
|
||||||
|
|
@ -37,7 +37,6 @@ import org.apache.log4j.Logger;
|
||||||
public class LifecycleConfig extends AbstractConfig {
|
public class LifecycleConfig extends AbstractConfig {
|
||||||
|
|
||||||
private static final Logger s_log = Logger.getLogger(LifecycleConfig.class);
|
private static final Logger s_log = Logger.getLogger(LifecycleConfig.class);
|
||||||
|
|
||||||
private static LifecycleConfig s_conf;
|
private static LifecycleConfig s_conf;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -55,20 +54,20 @@ public class LifecycleConfig extends AbstractConfig {
|
||||||
|
|
||||||
return s_conf;
|
return s_conf;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* How long do we wait (in seconds) after system startup before we start
|
* How long do we wait (in seconds) after system startup before we start
|
||||||
* processing lifecycles?
|
* processing lifecycles?
|
||||||
*/
|
*/
|
||||||
private IntegerParameter m_delay = new IntegerParameter
|
private IntegerParameter m_delay = new IntegerParameter(
|
||||||
("com.arsdigita.cms.lifecycle.delay", Parameter.REQUIRED,
|
"com.arsdigita.cms.lifecycle.delay", Parameter.REQUIRED,
|
||||||
new Integer(60));
|
new Integer(60));
|
||||||
/**
|
/**
|
||||||
* How often (in seconds) does the system look for pending items to make
|
* How often (in seconds) does the system look for pending items to make
|
||||||
* live and live items to expire? A value of 0 disables LC background thread.
|
* live and live items to expire? A value of 0 disables LC background thread.
|
||||||
*/
|
*/
|
||||||
private IntegerParameter m_frequency = new IntegerParameter
|
private IntegerParameter m_frequency =
|
||||||
("com.arsdigita.cms.lifecycle.frequency", Parameter.REQUIRED,
|
new IntegerParameter(
|
||||||
|
"com.arsdigita.cms.lifecycle.frequency", Parameter.REQUIRED,
|
||||||
new Integer(600));
|
new Integer(600));
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ com.arsdigita.cms.lifecycle.delay.title=Delay
|
||||||
com.arsdigita.cms.lifecycle.delay.purpose=How long to wait (in seconds) after system startup before start lifecycle processing A value of 0 disables LC background thread..
|
com.arsdigita.cms.lifecycle.delay.purpose=How long to wait (in seconds) after system startup before start lifecycle processing A value of 0 disables LC background thread..
|
||||||
com.arsdigita.cms.lifecycle.delay.example=60
|
com.arsdigita.cms.lifecycle.delay.example=60
|
||||||
com.arsdigita.cms.lifecycle.delay.format=[integer]
|
com.arsdigita.cms.lifecycle.delay.format=[integer]
|
||||||
|
|
||||||
com.arsdigita.cms.lifecycle.frequency.title=Frequency
|
com.arsdigita.cms.lifecycle.frequency.title=Frequency
|
||||||
com.arsdigita.cms.lifecycle.frequency.purpose=How often (in seconds) does the system look for pending items to make them live and live items to expire.
|
com.arsdigita.cms.lifecycle.frequency.purpose=How often (in seconds) does the system look for pending items to make them live and live items to expire.
|
||||||
com.arsdigita.cms.lifecycle.frequency.example=600
|
com.arsdigita.cms.lifecycle.frequency.example=600
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,6 @@ import com.arsdigita.bebop.event.ActionListener;
|
||||||
import com.arsdigita.bebop.event.FormInitListener;
|
import com.arsdigita.bebop.event.FormInitListener;
|
||||||
import com.arsdigita.bebop.event.FormProcessListener;
|
import com.arsdigita.bebop.event.FormProcessListener;
|
||||||
import com.arsdigita.bebop.form.Option;
|
import com.arsdigita.bebop.form.Option;
|
||||||
import com.arsdigita.bebop.form.Select;
|
|
||||||
import com.arsdigita.bebop.form.SingleSelect;
|
import com.arsdigita.bebop.form.SingleSelect;
|
||||||
import com.arsdigita.bebop.form.Submit;
|
import com.arsdigita.bebop.form.Submit;
|
||||||
import com.arsdigita.cms.CMS;
|
import com.arsdigita.cms.CMS;
|
||||||
|
|
|
||||||
|
|
@ -82,7 +82,7 @@ public final class KernelConfig extends AbstractConfig {
|
||||||
private final Parameter m_languageIndependentItems = new BooleanParameter
|
private final Parameter m_languageIndependentItems = new BooleanParameter
|
||||||
("waf.kernel.language_independent_items", Parameter.REQUIRED, Boolean.FALSE);
|
("waf.kernel.language_independent_items", Parameter.REQUIRED, Boolean.FALSE);
|
||||||
private final Parameter m_languageIndependentCode = new StringParameter
|
private final Parameter m_languageIndependentCode = new StringParameter
|
||||||
("waf.kernel.languages_independent_code", Parameter.OPTIONAL,
|
("waf.kernel.language_independent_code", Parameter.OPTIONAL,
|
||||||
"--");
|
"--");
|
||||||
|
|
||||||
public KernelConfig() {
|
public KernelConfig() {
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitPersonCollection;
|
||||||
import com.arsdigita.cms.contenttypes.GenericPerson;
|
import com.arsdigita.cms.contenttypes.GenericPerson;
|
||||||
import com.arsdigita.cms.contenttypes.GenericPersonContactCollection;
|
import com.arsdigita.cms.contenttypes.GenericPersonContactCollection;
|
||||||
import com.arsdigita.cms.contenttypes.SciProject;
|
import com.arsdigita.cms.contenttypes.SciProject;
|
||||||
import com.arsdigita.cms.util.LanguageUtil;
|
|
||||||
import com.arsdigita.domain.DomainObject;
|
import com.arsdigita.domain.DomainObject;
|
||||||
import com.arsdigita.domain.DomainObjectFactory;
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
import com.arsdigita.globalization.GlobalizationHelper;
|
import com.arsdigita.globalization.GlobalizationHelper;
|
||||||
|
|
@ -700,8 +699,13 @@ public class PersonalProjects implements ContentGenerator {
|
||||||
|
|
||||||
public int compare(final SciProject project1,
|
public int compare(final SciProject project1,
|
||||||
final SciProject project2) {
|
final SciProject project2) {
|
||||||
int ret = project2.getBegin().compareTo(project1.getBegin());
|
int ret = 0;
|
||||||
if (ret == 0) {
|
if ((project2.getBegin() != null) && (project1.getBegin() != null)) {
|
||||||
|
ret = project2.getBegin().compareTo(project1.getBegin());
|
||||||
|
}
|
||||||
|
if ((ret == 0)
|
||||||
|
&& (project2.getEnd() != null)
|
||||||
|
&& (project1.getEnd() != null)) {
|
||||||
ret = project2.getEnd().compareTo(project1.getBegin());
|
ret = project2.getEnd().compareTo(project1.getBegin());
|
||||||
}
|
}
|
||||||
if (ret == 0) {
|
if (ret == 0) {
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,8 @@ import com.arsdigita.cms.contenttypes.ui.PublicationXmlHelper;
|
||||||
import com.arsdigita.cms.contenttypes.ui.panels.Paginator;
|
import com.arsdigita.cms.contenttypes.ui.panels.Paginator;
|
||||||
import com.arsdigita.cms.dispatcher.SimpleXMLGenerator;
|
import com.arsdigita.cms.dispatcher.SimpleXMLGenerator;
|
||||||
import com.arsdigita.domain.DomainObjectFactory;
|
import com.arsdigita.domain.DomainObjectFactory;
|
||||||
|
import com.arsdigita.globalization.GlobalizationHelper;
|
||||||
|
import com.arsdigita.kernel.Kernel;
|
||||||
import com.arsdigita.persistence.DataQuery;
|
import com.arsdigita.persistence.DataQuery;
|
||||||
import com.arsdigita.persistence.OID;
|
import com.arsdigita.persistence.OID;
|
||||||
import com.arsdigita.persistence.SessionManager;
|
import com.arsdigita.persistence.SessionManager;
|
||||||
|
|
@ -191,20 +193,39 @@ public class PersonalPublications implements ContentGenerator {
|
||||||
private void applyAuthorFilter(final GenericPerson person,
|
private void applyAuthorFilter(final GenericPerson person,
|
||||||
final DataQuery query,
|
final DataQuery query,
|
||||||
final boolean addOrders) {
|
final boolean addOrders) {
|
||||||
query.addFilter(String.format("authorId = %s",
|
final StringBuilder authorFilterBuilder = new StringBuilder();
|
||||||
|
authorFilterBuilder.append('(');
|
||||||
|
authorFilterBuilder.append(String.format("authorId = %s",
|
||||||
person.getID().toString()));
|
person.getID().toString()));
|
||||||
/*if (Kernel.getConfig().languageIndependentItems()) {
|
if (person.getAlias() != null) {
|
||||||
FilterFactory ff = query.getFilterFactory();
|
addAliasToFilter(authorFilterBuilder, person.getAlias());
|
||||||
|
}
|
||||||
|
|
||||||
|
authorFilterBuilder.append(')');
|
||||||
|
|
||||||
|
query.addFilter(authorFilterBuilder.toString());
|
||||||
|
|
||||||
|
/*query.addFilter(String.format("authorId = %s",
|
||||||
|
person.getID().toString()));*/
|
||||||
|
if (Kernel.getConfig().languageIndependentItems()) {
|
||||||
|
/*FilterFactory ff = query.getFilterFactory();
|
||||||
Filter filter = ff.or().
|
Filter filter = ff.or().
|
||||||
addFilter(ff.equals("language", com.arsdigita.globalization.GlobalizationHelper.getNegotiatedLocale().getLanguage())).
|
addFilter(ff.equals("language", com.arsdigita.globalization.GlobalizationHelper.getNegotiatedLocale().getLanguage())).
|
||||||
addFilter(ff.and().
|
addFilter(ff.and().
|
||||||
addFilter(ff.equals("language", GlobalizationHelper.LANG_INDEPENDENT)).
|
addFilter(ff.equals("language", GlobalizationHelper.LANG_INDEPENDENT)).
|
||||||
addFilter(ff.notIn("parent", "com.arsdigita.navigation.getParentIDsOfMatchedItems")
|
addFilter(ff.notIn("parent", "com.arsdigita.navigation.getParentIDsOfMatchedItems")
|
||||||
.set("language", com.arsdigita.globalization.GlobalizationHelper.getNegotiatedLocale().getLanguage())));
|
.set("language", com.arsdigita.globalization.GlobalizationHelper.getNegotiatedLocale().getLanguage())));
|
||||||
query.addFilter(filter);
|
query.addFilter(filter);*/
|
||||||
} else {*/
|
query.addFilter(
|
||||||
query.addEqualsFilter("language", com.arsdigita.globalization.GlobalizationHelper.getNegotiatedLocale().getLanguage());
|
String.format("(language = '%s' or language = '%s')",
|
||||||
//}
|
GlobalizationHelper.getNegotiatedLocale().
|
||||||
|
getLanguage(),
|
||||||
|
GlobalizationHelper.LANG_INDEPENDENT));
|
||||||
|
} else {
|
||||||
|
query.addEqualsFilter("language",
|
||||||
|
com.arsdigita.globalization.GlobalizationHelper.
|
||||||
|
getNegotiatedLocale().getLanguage());
|
||||||
|
}
|
||||||
if (addOrders) {
|
if (addOrders) {
|
||||||
final String[] orders = config.getOrder().split(",");
|
final String[] orders = config.getOrder().split(",");
|
||||||
for (String order : orders) {
|
for (String order : orders) {
|
||||||
|
|
@ -213,6 +234,15 @@ public class PersonalPublications implements ContentGenerator {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void addAliasToFilter(final StringBuilder builder,
|
||||||
|
final GenericPerson alias) {
|
||||||
|
builder.append(String.format("or authorId = %s", alias.getID().toString()));
|
||||||
|
|
||||||
|
if (alias.getAlias() != null) {
|
||||||
|
addAliasToFilter(builder, alias.getAlias());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private Map<String, List<String>> getGroupsConfig() {
|
private Map<String, List<String>> getGroupsConfig() {
|
||||||
final String conf = config.getPublictionGroups();
|
final String conf = config.getPublictionGroups();
|
||||||
|
|
||||||
|
|
@ -350,7 +380,8 @@ public class PersonalPublications implements ContentGenerator {
|
||||||
/*final XmlGenerator generator = new XmlGenerator(publication);
|
/*final XmlGenerator generator = new XmlGenerator(publication);
|
||||||
generator.setItemElemName("publications", "");
|
generator.setItemElemName("publications", "");
|
||||||
generator.generateXML(state, parent, "");*/
|
generator.generateXML(state, parent, "");*/
|
||||||
final PublicationXmlHelper xmlHelper = new PublicationXmlHelper(parent,
|
final PublicationXmlHelper xmlHelper =
|
||||||
|
new PublicationXmlHelper(parent,
|
||||||
(Publication) publication);
|
(Publication) publication);
|
||||||
xmlHelper.generateXml();
|
xmlHelper.generateXml();
|
||||||
if (logger.isDebugEnabled()) {
|
if (logger.isDebugEnabled()) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue