Modul ccm-sci-types-organization:
- Steps und Forms Description für SciOrganization und SciDepartment - Steps und Forms für SuperProject in SciProject - Steps und Forms für SuperDepartment und Organization in SciDepartment - Alle Steps für Verknüpfungen zwischen SciOrganization, SciDepartment und SciProject sind über die Configuration ausblendbar - Für alle Beschriebungsfelder kann der DHTML-Editor abgeschaltet werden - Verschiedene Korrekturen an den PDL-Dateien git-svn-id: https://svn.libreccm.org/ccm/trunk@570 8810af33-2d31-482b-a856-94f89814c4dfmaster
parent
bbccc86661
commit
cbc5154f03
|
|
@ -4,13 +4,14 @@ import com.arsdigita.kernel.ACSObject;
|
||||||
import com.arsdigita.cms.*;
|
import com.arsdigita.cms.*;
|
||||||
|
|
||||||
object type SciDepartment extends GenericOrganizationalUnit {
|
object type SciDepartment extends GenericOrganizationalUnit {
|
||||||
String[0..1] departmentDescription = ct_sciorga_departments.description VARCHAR(4096);
|
String[0..1] departmentShortDescription = ct_sciorga_departments.shortdescription VARCHAR(500);
|
||||||
|
String[0..1] departmentDescription = ct_sciorga_departments.description CLOB;
|
||||||
|
|
||||||
reference key ( ct_sciorga_departments.department_id );
|
reference key ( ct_sciorga_departments.department_id );
|
||||||
}
|
}
|
||||||
|
|
||||||
association {
|
association {
|
||||||
SciDepartment[0..n] department = join ct_sciorga_departments.department_id
|
SciDepartment[0..n] superDepartment = join ct_sciorga_departments.department_id
|
||||||
to ct_sciorga_departments_subdepartments_map.subdepartment_id,
|
to ct_sciorga_departments_subdepartments_map.subdepartment_id,
|
||||||
join ct_sciorga_departments_subdepartments_map.department_id
|
join ct_sciorga_departments_subdepartments_map.department_id
|
||||||
to ct_sciorga_departments.department_id;
|
to ct_sciorga_departments.department_id;
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,9 @@ import com.arsdigita.kernel.ACSObject;
|
||||||
import com.arsdigita.cms.*;
|
import com.arsdigita.cms.*;
|
||||||
|
|
||||||
object type SciOrganization extends GenericOrganizationalUnit {
|
object type SciOrganization extends GenericOrganizationalUnit {
|
||||||
String[0..1] organizationDescription = ct_sciorga_organizations.description VARCHAR(4096);
|
|
||||||
|
String[0..1] organizationShortDescription = ct_sciorga_organizations.shortdescription VARCHAR(500);
|
||||||
|
String[0..1] organizationDescription = ct_sciorga_organizations.description CLOB;
|
||||||
|
|
||||||
reference key ( ct_sciorga_organizations.organization_id );
|
reference key ( ct_sciorga_organizations.organization_id );
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,14 @@
|
||||||
component="com.arsdigita.cms.contenttypes.ui.SciDepartmentPropertiesStep"
|
component="com.arsdigita.cms.contenttypes.ui.SciDepartmentPropertiesStep"
|
||||||
ordering="1"/>
|
ordering="1"/>
|
||||||
|
|
||||||
|
<ctd:authoring-step
|
||||||
|
labelKey="sciorganization.ui.department_description.title"
|
||||||
|
labelBundle="com.arsdigita.cms.contenttypes.ui.SciOrganizationResources"
|
||||||
|
descriptionKey="sciorganization.ui.department_description.title.description"
|
||||||
|
component="com.arsdigita.cms.contenttypes.ui.SciDepartmentDescriptionStep"
|
||||||
|
ordering="2"/>
|
||||||
|
|
||||||
|
|
||||||
<ctd:include href="/WEB-INF/content-types/assign-categories-step.xml"/>
|
<ctd:include href="/WEB-INF/content-types/assign-categories-step.xml"/>
|
||||||
|
|
||||||
</ctd:authoring-kit>
|
</ctd:authoring-kit>
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,13 @@
|
||||||
component="com.arsdigita.cms.contenttypes.ui.SciOrganizationPropertiesStep"
|
component="com.arsdigita.cms.contenttypes.ui.SciOrganizationPropertiesStep"
|
||||||
ordering="1"/>
|
ordering="1"/>
|
||||||
|
|
||||||
|
<ctd:authoring-step
|
||||||
|
labelKey="sciorganization.ui.organizsation_description.title"
|
||||||
|
labelBundle="com.arsdigita.cms.contenttypes.ui.SciOrganizationResources"
|
||||||
|
descriptionKey="sciorganization.ui.organization_description.title.description"
|
||||||
|
component="com.arsdigita.cms.contenttypes.ui.SciOrganizationDescriptionStep"
|
||||||
|
ordering="2"/>
|
||||||
|
|
||||||
<ctd:include href="/WEB-INF/content-types/assign-categories-step.xml"/>
|
<ctd:include href="/WEB-INF/content-types/assign-categories-step.xml"/>
|
||||||
|
|
||||||
</ctd:authoring-kit>
|
</ctd:authoring-kit>
|
||||||
|
|
|
||||||
|
|
@ -13,13 +13,23 @@ import java.math.BigDecimal;
|
||||||
*/
|
*/
|
||||||
public class SciDepartment extends GenericOrganizationalUnit {
|
public class SciDepartment extends GenericOrganizationalUnit {
|
||||||
|
|
||||||
|
public static final String DEPARTMENT_SHORT_DESCRIPTION =
|
||||||
|
"departmentShortDescription";
|
||||||
public static final String DEPARTMENT_DESCRIPTION = "departmentDescription";
|
public static final String DEPARTMENT_DESCRIPTION = "departmentDescription";
|
||||||
|
public static final String ORGANIZATION = "organization";
|
||||||
|
public static final String SUPER_DEPARTMENT = "superDepartment";
|
||||||
public static final String SUBDEPARTMENTS = "subDepartments";
|
public static final String SUBDEPARTMENTS = "subDepartments";
|
||||||
public static final String SUBDEPARTMENT_ORDER = "subDepartmentOrder";
|
public static final String SUBDEPARTMENT_ORDER = "subDepartmentOrder";
|
||||||
public static final String PROJECTS = "projects";
|
public static final String PROJECTS = "projects";
|
||||||
public static final String PROJECT_ORDER = "projectOrder";
|
public static final String PROJECT_ORDER = "projectOrder";
|
||||||
public static final String BASE_DATA_OBJECT_TYPE =
|
public static final String BASE_DATA_OBJECT_TYPE =
|
||||||
"com.arsdigita.cms.contenttypes.SciDepartment";
|
"com.arsdigita.cms.contenttypes.SciDepartment";
|
||||||
|
private static final SciOrganizationConfig s_config =
|
||||||
|
new SciOrganizationConfig();
|
||||||
|
|
||||||
|
static {
|
||||||
|
s_config.load();
|
||||||
|
}
|
||||||
|
|
||||||
public SciDepartment() {
|
public SciDepartment() {
|
||||||
this(BASE_DATA_OBJECT_TYPE);
|
this(BASE_DATA_OBJECT_TYPE);
|
||||||
|
|
@ -41,6 +51,18 @@ public class SciDepartment extends GenericOrganizationalUnit {
|
||||||
super(type);
|
super(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static final SciOrganizationConfig getConfig() {
|
||||||
|
return s_config;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDepartmentShortDescription() {
|
||||||
|
return (String) get(DEPARTMENT_SHORT_DESCRIPTION);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDepartmentShortDescription(String description) {
|
||||||
|
set(DEPARTMENT_SHORT_DESCRIPTION, description);
|
||||||
|
}
|
||||||
|
|
||||||
public String getDepartmentDescription() {
|
public String getDepartmentDescription() {
|
||||||
return (String) get(DEPARTMENT_DESCRIPTION);
|
return (String) get(DEPARTMENT_DESCRIPTION);
|
||||||
}
|
}
|
||||||
|
|
@ -49,6 +71,64 @@ public class SciDepartment extends GenericOrganizationalUnit {
|
||||||
set(DEPARTMENT_DESCRIPTION, description);
|
set(DEPARTMENT_DESCRIPTION, description);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public SciDepartment getSuperDepartment() {
|
||||||
|
DataCollection collection;
|
||||||
|
|
||||||
|
collection = (DataCollection) get(SUPER_DEPARTMENT);
|
||||||
|
|
||||||
|
if (0 == collection.size()) {
|
||||||
|
return null;
|
||||||
|
} else {
|
||||||
|
DataObject dobj;
|
||||||
|
|
||||||
|
collection.next();
|
||||||
|
dobj = collection.getDataObject();
|
||||||
|
|
||||||
|
return new SciDepartment(dobj);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSuperDepartment(SciDepartment department) {
|
||||||
|
SciDepartment oldSuperDepartment;
|
||||||
|
|
||||||
|
oldSuperDepartment = getSuperDepartment();
|
||||||
|
remove(SUPER_DEPARTMENT, oldSuperDepartment);
|
||||||
|
|
||||||
|
if (null != department) {
|
||||||
|
Assert.exists(department, SciDepartment.class);
|
||||||
|
add(SUPER_DEPARTMENT, department);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public SciOrganization getOrganization() {
|
||||||
|
DataCollection collection;
|
||||||
|
|
||||||
|
collection = (DataCollection) get(ORGANIZATION);
|
||||||
|
|
||||||
|
if (0 == collection.size()) {
|
||||||
|
return null;
|
||||||
|
} else {
|
||||||
|
DataObject dobj;
|
||||||
|
|
||||||
|
collection.next();
|
||||||
|
dobj = collection.getDataObject();
|
||||||
|
|
||||||
|
return new SciOrganization(dobj);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOrganization(SciOrganization orga) {
|
||||||
|
SciOrganization oldOrganization;
|
||||||
|
|
||||||
|
oldOrganization = getOrganization();
|
||||||
|
remove(ORGANIZATION, oldOrganization);
|
||||||
|
|
||||||
|
if (null != orga) {
|
||||||
|
Assert.exists(orga, SciOrganization.class);
|
||||||
|
add(ORGANIZATION, orga);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public SciDepartmentSubDepartmentsCollection getSubDepartments() {
|
public SciDepartmentSubDepartmentsCollection getSubDepartments() {
|
||||||
return new SciDepartmentSubDepartmentsCollection(
|
return new SciDepartmentSubDepartmentsCollection(
|
||||||
(DataCollection) get(SUBDEPARTMENTS));
|
(DataCollection) get(SUBDEPARTMENTS));
|
||||||
|
|
|
||||||
|
|
@ -13,14 +13,22 @@ import java.math.BigDecimal;
|
||||||
*/
|
*/
|
||||||
public class SciOrganization extends GenericOrganizationalUnit {
|
public class SciOrganization extends GenericOrganizationalUnit {
|
||||||
|
|
||||||
|
public static final String ORGANIZATION_SHORT_DESCRIPTION =
|
||||||
|
"organizationShortDescription";
|
||||||
public static final String ORGANIZATION_DESCRIPTION =
|
public static final String ORGANIZATION_DESCRIPTION =
|
||||||
"organizationDescription";
|
"organizationDescription";
|
||||||
public static final String DEPARTMENTS = "departments";
|
public static final String DEPARTMENTS = "departments";
|
||||||
public static final String DEPARTMENT_ORDER = "departmentOrder";
|
public static final String DEPARTMENT_ORDER = "departmentOrder";
|
||||||
public static final String PROJECTS ="projects";
|
public static final String PROJECTS = "projects";
|
||||||
public static final String PROJECT_ORDER = "projectOrder";
|
public static final String PROJECT_ORDER = "projectOrder";
|
||||||
public static final String BASE_DATA_OBJECT_TYPE =
|
public static final String BASE_DATA_OBJECT_TYPE =
|
||||||
"com.arsdigita.cms.contenttypes.SciOrganization";
|
"com.arsdigita.cms.contenttypes.SciOrganization";
|
||||||
|
private static final SciOrganizationConfig s_config =
|
||||||
|
new SciOrganizationConfig();
|
||||||
|
|
||||||
|
static {
|
||||||
|
s_config.load();
|
||||||
|
}
|
||||||
|
|
||||||
public SciOrganization() {
|
public SciOrganization() {
|
||||||
this(BASE_DATA_OBJECT_TYPE);
|
this(BASE_DATA_OBJECT_TYPE);
|
||||||
|
|
@ -42,6 +50,18 @@ public class SciOrganization extends GenericOrganizationalUnit {
|
||||||
super(type);
|
super(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static final SciOrganizationConfig getConfig() {
|
||||||
|
return s_config;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getOrganizationShortDescription() {
|
||||||
|
return (String) get(ORGANIZATION_SHORT_DESCRIPTION);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOrganizationShortDescription(String description) {
|
||||||
|
set(ORGANIZATION_SHORT_DESCRIPTION, description);
|
||||||
|
}
|
||||||
|
|
||||||
public String getOrganizationDescription() {
|
public String getOrganizationDescription() {
|
||||||
return (String) get(ORGANIZATION_DESCRIPTION);
|
return (String) get(ORGANIZATION_DESCRIPTION);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,12 +10,108 @@ import com.arsdigita.util.parameter.Parameter;
|
||||||
*/
|
*/
|
||||||
public class SciOrganizationConfig extends AbstractConfig {
|
public class SciOrganizationConfig extends AbstractConfig {
|
||||||
|
|
||||||
|
private final Parameter m_organizationAddPersonHide;
|
||||||
|
private final Parameter m_organizationAddDepartmentHide;
|
||||||
|
private final Parameter m_organizationAddProjectHide;
|
||||||
|
private final Parameter m_organizationAddContactHide;
|
||||||
|
private final Parameter m_departmentAddPersonHide;
|
||||||
|
private final Parameter m_departmentAddSubDepartmentHide;
|
||||||
|
private final Parameter m_departmentAddProjectHide;
|
||||||
|
private final Parameter m_departmentSetOrganizationHide;
|
||||||
|
private final Parameter m_departmentSetSuperDepartmentHide;
|
||||||
|
private final Parameter m_departmentAddContactHide;
|
||||||
|
private final Parameter m_projectAddPersonHide;
|
||||||
|
private final Parameter m_projectAddOrganizationHide;
|
||||||
|
private final Parameter m_projectAddDepartmentHide;
|
||||||
|
private final Parameter m_projectAddSubProjectHide;
|
||||||
|
private final Parameter m_projectSetSuperProjectHide;
|
||||||
|
private final Parameter m_projectAddContactHide;
|
||||||
|
private final Parameter m_organizationDescriptionDhtml;
|
||||||
|
private final Parameter m_departmentDescriptionDhtml;
|
||||||
|
private final Parameter m_projectDescriptionDhtml;
|
||||||
private final Parameter m_projectFundingHide;
|
private final Parameter m_projectFundingHide;
|
||||||
private final Parameter m_projectFundingDhtml;
|
private final Parameter m_projectFundingDhtml;
|
||||||
private final Parameter m_projectMaterialsHide;
|
private final Parameter m_projectMaterialsHide;
|
||||||
private final Parameter m_organizationPersonsHide;
|
|
||||||
|
|
||||||
public SciOrganizationConfig() {
|
public SciOrganizationConfig() {
|
||||||
|
|
||||||
|
m_organizationAddPersonHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciorganization.add_person_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_organizationAddDepartmentHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciorganization.add_department_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_organizationAddProjectHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciorganization.add_project_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_organizationAddContactHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciorganization.add_contact_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_departmentAddPersonHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.scidepartment.add_person_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_departmentAddSubDepartmentHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.scidepartment.add_subdepartment_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_departmentAddProjectHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.scidepartment.add_project_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_departmentSetOrganizationHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.scidepartment.organization_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_departmentSetSuperDepartmentHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.scidepartment.set_superdepartment_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_departmentAddContactHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.scidepartment.add_contact_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_projectAddPersonHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciproject.add_person_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_projectAddOrganizationHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciproject.add_organization_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_projectAddDepartmentHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciproject.add_department_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_projectAddSubProjectHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciproject.add_subproject_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_projectSetSuperProjectHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciproject.set_superproject_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_projectAddContactHide = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciorganization.add_project_hide",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.FALSE);
|
||||||
|
m_organizationDescriptionDhtml = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciorganization.description_dhtml",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.TRUE);
|
||||||
|
m_departmentDescriptionDhtml = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.scidepartment.description_dhtml",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.TRUE);
|
||||||
|
m_projectDescriptionDhtml = new BooleanParameter(
|
||||||
|
"com.arsdigita.cms.contenttypes.sciproject.description_dhtml",
|
||||||
|
Parameter.REQUIRED,
|
||||||
|
Boolean.TRUE);
|
||||||
|
|
||||||
m_projectFundingHide = new BooleanParameter(
|
m_projectFundingHide = new BooleanParameter(
|
||||||
"com.arsdigita.cms.contenttypes.sciproject.funding_hide",
|
"com.arsdigita.cms.contenttypes.sciproject.funding_hide",
|
||||||
Parameter.REQUIRED,
|
Parameter.REQUIRED,
|
||||||
|
|
@ -28,32 +124,119 @@ public class SciOrganizationConfig extends AbstractConfig {
|
||||||
"com.arsdigita.cms.contenttypes.sciproject.materials_hide",
|
"com.arsdigita.cms.contenttypes.sciproject.materials_hide",
|
||||||
Parameter.REQUIRED,
|
Parameter.REQUIRED,
|
||||||
Boolean.FALSE);
|
Boolean.FALSE);
|
||||||
m_organizationPersonsHide = new BooleanParameter(
|
|
||||||
"com.arsdigita.cms.contenttypes.sciorganization.persons_hide",
|
register(m_organizationAddPersonHide);
|
||||||
Parameter.REQUIRED,
|
register(m_organizationAddDepartmentHide);
|
||||||
Boolean.TRUE);
|
register(m_organizationAddProjectHide);
|
||||||
|
register(m_departmentAddPersonHide);
|
||||||
|
register(m_departmentAddSubDepartmentHide);
|
||||||
|
register(m_departmentAddProjectHide);
|
||||||
|
register(m_departmentSetOrganizationHide);
|
||||||
|
register(m_departmentSetSuperDepartmentHide);
|
||||||
|
register(m_projectAddPersonHide);
|
||||||
|
register(m_projectAddOrganizationHide);
|
||||||
|
register(m_projectAddDepartmentHide);
|
||||||
|
register(m_projectAddSubProjectHide);
|
||||||
|
register(m_projectSetSuperProjectHide);
|
||||||
|
register(m_organizationDescriptionDhtml);
|
||||||
|
register(m_departmentDescriptionDhtml);
|
||||||
|
register(m_projectDescriptionDhtml);
|
||||||
|
register(m_organizationAddContactHide);
|
||||||
|
register(m_departmentAddContactHide);
|
||||||
|
register(m_projectAddContactHide);
|
||||||
|
|
||||||
register(m_projectFundingHide);
|
register(m_projectFundingHide);
|
||||||
register(m_projectFundingDhtml);
|
register(m_projectFundingDhtml);
|
||||||
register(m_projectMaterialsHide);
|
register(m_projectMaterialsHide);
|
||||||
register(m_organizationPersonsHide);
|
|
||||||
|
|
||||||
loadInfo();
|
loadInfo();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public final boolean getOrganizationAddPersonHide() {
|
||||||
|
return (Boolean) get(m_organizationAddPersonHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getOrganizationAddDepartmentHide() {
|
||||||
|
return (Boolean) get(m_organizationAddDepartmentHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getOrganizationAddProjectHide() {
|
||||||
|
return (Boolean) get(m_organizationAddProjectHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getOrganizationAddContactHide() {
|
||||||
|
return (Boolean) get(m_organizationAddContactHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getDepartmentAddPersonHide() {
|
||||||
|
return (Boolean) get(m_departmentAddPersonHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getDepartmentAddSubDepartmentHide() {
|
||||||
|
return (Boolean) get(m_departmentAddSubDepartmentHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getDepartmentAddProjectHide() {
|
||||||
|
return (Boolean) get(m_departmentAddProjectHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getDepartmentSetOrganizationHide() {
|
||||||
|
return (Boolean) get(m_departmentSetOrganizationHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getDepartmentSetSuperDepartmentHide() {
|
||||||
|
return (Boolean) get(m_departmentSetSuperDepartmentHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getDepartmentAddContactHide() {
|
||||||
|
return (Boolean) get(m_departmentAddContactHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getProjectAddPersonHide() {
|
||||||
|
return (Boolean) get(m_projectAddPersonHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getProjectAddOrganizationHide() {
|
||||||
|
return (Boolean) get(m_projectAddOrganizationHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getProjectAddDepartmentHide() {
|
||||||
|
return (Boolean) get(m_projectAddDepartmentHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getProjectAddSubProjectHide() {
|
||||||
|
return (Boolean) get(m_projectAddSubProjectHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getProjectSetSuperProjectHide() {
|
||||||
|
return (Boolean) get(m_projectSetSuperProjectHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getProjectAddContactHide() {
|
||||||
|
return (Boolean) get(m_projectAddContactHide);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getOrganizationDescriptionDhtml() {
|
||||||
|
return (Boolean) get(m_organizationDescriptionDhtml);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getDepartmentDescriptionDhtml() {
|
||||||
|
return (Boolean) get(m_departmentDescriptionDhtml);
|
||||||
|
}
|
||||||
|
|
||||||
|
public final boolean getProjectDescriptionDhtml() {
|
||||||
|
return (Boolean) get(m_projectDescriptionDhtml);
|
||||||
|
}
|
||||||
|
|
||||||
public final boolean getProjectFundingHide() {
|
public final boolean getProjectFundingHide() {
|
||||||
return (Boolean) get(m_projectFundingHide);
|
return (Boolean) get(m_projectFundingHide);
|
||||||
}
|
}
|
||||||
|
|
||||||
public final boolean getProjectFundingDhtml() {
|
public final boolean getProjectFundingDhtml() {
|
||||||
return (Boolean) get(m_projectFundingDhtml);
|
return (Boolean) get(m_projectFundingDhtml);
|
||||||
}
|
}
|
||||||
|
|
||||||
public final boolean getProjectMaterialsHide() {
|
public final boolean getProjectMaterialsHide() {
|
||||||
return (Boolean) get(m_projectMaterialsHide);
|
return (Boolean) get(m_projectMaterialsHide);
|
||||||
}
|
}
|
||||||
|
|
||||||
public final boolean getOrganizationPersonsHide() {
|
|
||||||
return (Boolean) get(m_organizationPersonsHide);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,100 @@
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_person_hide.title = Hide the persons add step of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_person_hide.purpose = Hide the persons add step of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_person_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_person_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_department_hide.title = Hide the department add step of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_department_hide.purpose = Hide the department add step of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_department_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_department_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_project_hide.title = Hide the project add step of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_project_hide.purpose = Hide the project add step of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_project_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_project_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_contact_hide.title = Hide the contact add step of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_contact_hide.purpose = Hide the contact add step of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_contact_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.add_contact_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_person_hide.title = Hide the person add step of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_person_hide.purpose = Hide the person add step of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_person_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_person_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_subdepartment_hide.title = Hide the subdepartment add step of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_subdepartment_hide.purpose = Hide the subdepartment add step of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_subdepartment_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_subdepartment_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.set_organization_hide.title = Hide the organization set step of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.set_organization_hide.purpose = Hide the organization set step of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.set_organization_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.set_organization_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.set_superdepartment_hide.title = Hide the superdepartment set step of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.set_superdepartment_hide.purpose = Hide the superdepartment set step of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.set_superdepartment_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.set_superdepartment_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_contact_hide.title = Hide the contact add step of Scidepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_contact_hide.purpose = Hide the contact add step of Scidepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_contact_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.add_contact_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_person_hide.title = Hide the person add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_person_hide.purpose = Hide the person add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_person_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_person_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_organization_hide.title = Hide the organization add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_organization_hide.purpose = Hide the organization add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_organization_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_organization_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_department_hide.title = Hide the department add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_department_hide.purpose Hide the department add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_department_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_department_hide = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_subproject_hide.title = Hide the subproject add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_subproject_hide.purpose = Hide the subproject add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_subproject_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_subproject_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.set_superproject_hide.title = Hide the superproject add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.set_superproject_hide.purpose = Hide the superprojecft add step of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.set_superproject_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.set_superproject_hide.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.description_dhtml.title = Toggles the DHTML for the description of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.description_dhtml.purpose = Toggles the DHTML for the description of SciOrganization
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.description_dhtml.example = true
|
||||||
|
com.arsdigita.cms.contenttypes.sciorganization.description_dhtml.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.description_dhtml.title = Toggles the DHTML for the description of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.description_dhtml.purpose = Toggles the DHTML for the description of SciDepartment
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.description_dhtml.example = true
|
||||||
|
com.arsdigita.cms.contenttypes.scidepartment.description_dhtml = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.description_dhtml.title = Toggles the DHTML for the description of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.description_dhtml.purpose = Toggles the DHTML for the description of SciProject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.description_dhtml.example = true
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.description_dhtml.format = [boolean]
|
||||||
|
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_contact_hide.title = Hide the contact add step of Sciproject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_contact_hide.purpose = Hide the contact add step of Sciproject
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_contact_hide.example = false
|
||||||
|
com.arsdigita.cms.contenttypes.sciproject.add_contact_hide.format = [boolean]
|
||||||
|
|
||||||
com.arsdigita.cms.contenttypes.sciproject.funding_hide.title = Hide funding text input
|
com.arsdigita.cms.contenttypes.sciproject.funding_hide.title = Hide funding text input
|
||||||
com.arsdigita.cms.contenttypes.sciproject.funding_hide.purpose = Hide the funding text inpu
|
com.arsdigita.cms.contenttypes.sciproject.funding_hide.purpose = Hide the funding text inpu
|
||||||
com.arsdigita.cms.contenttypes.sciproject.funding_hide.example = false
|
com.arsdigita.cms.contenttypes.sciproject.funding_hide.example = true
|
||||||
com.arsdigita.cms.contenttypes.sciproject.funding_hide.format = [boolean]
|
com.arsdigita.cms.contenttypes.sciproject.funding_hide.format = [boolean]
|
||||||
|
|
||||||
com.arsdigita.cms.contenttypes.sciproject.funding_dhtml.title = Toggles the DHTML for funding
|
com.arsdigita.cms.contenttypes.sciproject.funding_dhtml.title = Toggles the DHTML editor for funding
|
||||||
com.arsdigita.cms.contenttypes.sciproject.funding_dhtml.purpose = Toggles the DHTML editor
|
com.arsdigita.cms.contenttypes.sciproject.funding_dhtml.purpose = Toggles the DHTML editor for funding
|
||||||
com.arsdigita.cms.contenttypes.sciproject.funding_dhtml.example = false
|
com.arsdigita.cms.contenttypes.sciproject.funding_dhtml.example = false
|
||||||
com.arsdigita.cms.contenttypes.sciproject.funding_dhtml.format = [boolean]
|
com.arsdigita.cms.contenttypes.sciproject.funding_dhtml.format = [boolean]
|
||||||
|
|
||||||
|
|
@ -13,7 +103,3 @@ com.arsdigita.cms.contenttypes.sciproject.materials_hide.purpose = Hides the ste
|
||||||
com.arsdigita.cms.contenttypes.sciproject.materials_hide.example = false
|
com.arsdigita.cms.contenttypes.sciproject.materials_hide.example = false
|
||||||
com.arsdigita.cms.contenttypes.sciproject.materials_hide.format = [boolean]
|
com.arsdigita.cms.contenttypes.sciproject.materials_hide.format = [boolean]
|
||||||
|
|
||||||
com.arsdigita.cms.contenttypes.sciorganization.persons_hide.title = Hides the persons step for SciOrganization
|
|
||||||
com.arsdigita.cms.contenttypes.sciorganization.persons_hide.purpose = Hides the persons step for SciOrganization
|
|
||||||
com.arsdigita.cms.contenttypes.sciorganization.persons_hide.example = true
|
|
||||||
com.arsdigita.cms.contenttypes.sciorganization.persons_hide.format = [boolean]
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,80 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.FormData;
|
||||||
|
import com.arsdigita.bebop.FormProcessException;
|
||||||
|
import com.arsdigita.bebop.Label;
|
||||||
|
import com.arsdigita.bebop.PageState;
|
||||||
|
import com.arsdigita.bebop.event.FormInitListener;
|
||||||
|
import com.arsdigita.bebop.event.FormProcessListener;
|
||||||
|
import com.arsdigita.bebop.event.FormSectionEvent;
|
||||||
|
import com.arsdigita.bebop.form.TextArea;
|
||||||
|
import com.arsdigita.bebop.parameters.ParameterModel;
|
||||||
|
import com.arsdigita.bebop.parameters.StringParameter;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
|
import com.arsdigita.cms.ui.CMSDHTMLEditor;
|
||||||
|
import com.arsdigita.cms.ui.authoring.BasicItemForm;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciDepartmentDescriptionEditForm
|
||||||
|
extends BasicItemForm
|
||||||
|
implements FormProcessListener,
|
||||||
|
FormInitListener {
|
||||||
|
|
||||||
|
public SciDepartmentDescriptionEditForm(ItemSelectionModel itemModel) {
|
||||||
|
super("scidepartmentEditDescForm", itemModel);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void addWidgets() {
|
||||||
|
add(new Label(SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.description")));
|
||||||
|
ParameterModel descParam = new StringParameter(
|
||||||
|
SciDepartment.DEPARTMENT_DESCRIPTION);
|
||||||
|
TextArea desc;
|
||||||
|
if (SciDepartment.getConfig().getDepartmentDescriptionDhtml()) {
|
||||||
|
desc = new CMSDHTMLEditor(descParam);
|
||||||
|
} else {
|
||||||
|
desc = new TextArea(descParam);
|
||||||
|
}
|
||||||
|
desc.setCols(75);
|
||||||
|
desc.setRows(25);
|
||||||
|
add(desc);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void init(FormSectionEvent fse) throws FormProcessException {
|
||||||
|
PageState state = fse.getPageState();
|
||||||
|
|
||||||
|
FormData data = fse.getFormData();
|
||||||
|
SciDepartment department = (SciDepartment) getItemSelectionModel().
|
||||||
|
getSelectedObject(state);
|
||||||
|
|
||||||
|
data.put(SciDepartment.DEPARTMENT_DESCRIPTION,
|
||||||
|
department.getDepartmentDescription());
|
||||||
|
|
||||||
|
setVisible(state, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void process(FormSectionEvent fse) throws FormProcessException {
|
||||||
|
PageState state = fse.getPageState();
|
||||||
|
|
||||||
|
FormData data = fse.getFormData();
|
||||||
|
SciDepartment department = (SciDepartment) getItemSelectionModel().
|
||||||
|
getSelectedObject(state);
|
||||||
|
|
||||||
|
if ((department != null) && getSaveCancelSection().getSaveButton().
|
||||||
|
isSelected(state)) {
|
||||||
|
department.setDepartmentDescription((String) data.get(
|
||||||
|
SciDepartment.DEPARTMENT_DESCRIPTION));
|
||||||
|
|
||||||
|
department.save();
|
||||||
|
|
||||||
|
init(fse);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,63 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.Component;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
|
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
||||||
|
import com.arsdigita.cms.ui.authoring.BasicItemForm;
|
||||||
|
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
|
||||||
|
import com.arsdigita.cms.ui.workflow.WorkflowLockedComponentAccess;
|
||||||
|
import com.arsdigita.toolbox.ui.DomainObjectPropertySheet;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciDepartmentDescriptionStep extends SimpleEditStep {
|
||||||
|
|
||||||
|
private String EDIT_DEPARTMENT_DESC_SHEET_NAME = "editDepartmentDesc";
|
||||||
|
private String UPLOAD_DEPARTMENT_DESC_SHEET_NAME = "uploadDepartmentDesc";
|
||||||
|
|
||||||
|
public SciDepartmentDescriptionStep(ItemSelectionModel itemModel,
|
||||||
|
AuthoringKitWizard parent) {
|
||||||
|
this(itemModel, parent, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public SciDepartmentDescriptionStep(ItemSelectionModel itemModel,
|
||||||
|
AuthoringKitWizard parent,
|
||||||
|
String prefix) {
|
||||||
|
super(itemModel, parent, prefix);
|
||||||
|
|
||||||
|
BasicItemForm editDescForm =
|
||||||
|
new SciDepartmentDescriptionEditForm(itemModel);
|
||||||
|
add(EDIT_DEPARTMENT_DESC_SHEET_NAME,
|
||||||
|
(String) SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.edit_desc").localize(),
|
||||||
|
new WorkflowLockedComponentAccess(editDescForm, itemModel),
|
||||||
|
editDescForm.getSaveCancelSection().getCancelButton());
|
||||||
|
|
||||||
|
SciDepartmentDescriptionUploadForm uploadDescForm =
|
||||||
|
new SciDepartmentDescriptionUploadForm(
|
||||||
|
itemModel);
|
||||||
|
add(UPLOAD_DEPARTMENT_DESC_SHEET_NAME,
|
||||||
|
(String) SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.upload_desc").localize(),
|
||||||
|
new WorkflowLockedComponentAccess(uploadDescForm, itemModel),
|
||||||
|
uploadDescForm.getSaveCancelSection().getCancelButton());
|
||||||
|
|
||||||
|
setDisplayComponent(
|
||||||
|
getSciDepartmentDescSheet(itemModel));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Component getSciDepartmentDescSheet(
|
||||||
|
ItemSelectionModel itemModel) {
|
||||||
|
DomainObjectPropertySheet sheet = new DomainObjectPropertySheet(
|
||||||
|
itemModel);
|
||||||
|
|
||||||
|
sheet.add(SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.desc"),
|
||||||
|
SciDepartment.DEPARTMENT_DESCRIPTION);
|
||||||
|
|
||||||
|
return sheet;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.PageState;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
|
import com.arsdigita.globalization.GlobalizedMessage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciDepartmentDescriptionUploadForm extends AbstractTextUploadForm {
|
||||||
|
|
||||||
|
public SciDepartmentDescriptionUploadForm(ItemSelectionModel itemModel) {
|
||||||
|
super(itemModel);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GlobalizedMessage getLabelText() {
|
||||||
|
return SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.description.upload");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GlobalizedMessage getMimeTypeLabel() {
|
||||||
|
return SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.description.upload.mimetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setText(ItemSelectionModel itemModel,
|
||||||
|
PageState state,
|
||||||
|
String text) {
|
||||||
|
SciDepartment department = (SciDepartment) itemModel.getSelectedObject(
|
||||||
|
state);
|
||||||
|
department.setDepartmentDescription(text);
|
||||||
|
department.save();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,63 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.FormData;
|
||||||
|
import com.arsdigita.bebop.FormProcessException;
|
||||||
|
import com.arsdigita.bebop.Label;
|
||||||
|
import com.arsdigita.bebop.PageState;
|
||||||
|
import com.arsdigita.bebop.event.FormInitListener;
|
||||||
|
import com.arsdigita.bebop.event.FormProcessListener;
|
||||||
|
import com.arsdigita.bebop.event.FormSectionEvent;
|
||||||
|
import com.arsdigita.cms.ContentType;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciOrganization;
|
||||||
|
import com.arsdigita.cms.ui.ItemSearchWidget;
|
||||||
|
import com.arsdigita.cms.ui.authoring.BasicItemForm;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciDepartmentOrganizationForm
|
||||||
|
extends BasicItemForm
|
||||||
|
implements FormProcessListener,
|
||||||
|
FormInitListener {
|
||||||
|
|
||||||
|
private ItemSearchWidget m_itemSearch;
|
||||||
|
private final String ITEM_SEARCH = "departmentOrga";
|
||||||
|
|
||||||
|
public SciDepartmentOrganizationForm(ItemSelectionModel itemModel) {
|
||||||
|
super("DepartmentOrganizationForm", itemModel);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void addWidgets() {
|
||||||
|
add(new Label(SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.select_organization")));
|
||||||
|
m_itemSearch = new ItemSearchWidget(ITEM_SEARCH,
|
||||||
|
ContentType.
|
||||||
|
findByAssociatedObjectType(SciOrganization.class.getName()));
|
||||||
|
add(m_itemSearch);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void init(FormSectionEvent fse) throws FormProcessException {
|
||||||
|
PageState state = fse.getPageState();
|
||||||
|
|
||||||
|
setVisible(state, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void process(FormSectionEvent fse) throws FormProcessException {
|
||||||
|
FormData data = fse.getFormData();
|
||||||
|
PageState state = fse.getPageState();
|
||||||
|
SciDepartment department = (SciDepartment) getItemSelectionModel().
|
||||||
|
getSelectedObject(state);
|
||||||
|
|
||||||
|
if (this.getSaveCancelSection().getSaveButton().isSelected(state)) {
|
||||||
|
department.setOrganization((SciOrganization) data.get(ITEM_SEARCH));
|
||||||
|
|
||||||
|
init(fse);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,205 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.Component;
|
||||||
|
import com.arsdigita.bebop.ControlLink;
|
||||||
|
import com.arsdigita.bebop.Label;
|
||||||
|
import com.arsdigita.bebop.PageState;
|
||||||
|
import com.arsdigita.bebop.Table;
|
||||||
|
import com.arsdigita.bebop.event.TableActionEvent;
|
||||||
|
import com.arsdigita.bebop.event.TableActionListener;
|
||||||
|
import com.arsdigita.bebop.table.TableCellRenderer;
|
||||||
|
import com.arsdigita.bebop.table.TableColumn;
|
||||||
|
import com.arsdigita.bebop.table.TableColumnModel;
|
||||||
|
import com.arsdigita.bebop.table.TableModel;
|
||||||
|
import com.arsdigita.bebop.table.TableModelBuilder;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.SecurityManager;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciOrganization;
|
||||||
|
import com.arsdigita.cms.dispatcher.Utilities;
|
||||||
|
import com.arsdigita.util.LockableImpl;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciDepartmentOrganizationSheet
|
||||||
|
extends Table
|
||||||
|
implements TableActionListener {
|
||||||
|
|
||||||
|
private final String TABLE_COL_EDIT = "table_col_edit";
|
||||||
|
private final String TABLE_COL_DEL = "table_col_del";
|
||||||
|
private ItemSelectionModel m_itemModel;
|
||||||
|
|
||||||
|
public SciDepartmentOrganizationSheet(ItemSelectionModel itemModel) {
|
||||||
|
super();
|
||||||
|
m_itemModel = itemModel;
|
||||||
|
|
||||||
|
setEmptyView(
|
||||||
|
new Label(SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.organization_none")));
|
||||||
|
|
||||||
|
TableColumnModel colModel = getColumnModel();
|
||||||
|
colModel.add(new TableColumn(
|
||||||
|
0,
|
||||||
|
SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.organization").localize(),
|
||||||
|
TABLE_COL_EDIT));
|
||||||
|
colModel.add(new TableColumn(
|
||||||
|
1,
|
||||||
|
SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.organization.remove").localize(),
|
||||||
|
TABLE_COL_DEL));
|
||||||
|
|
||||||
|
setModelBuilder(
|
||||||
|
new SciDepartmentOrganizationSheetModelBuilder(itemModel));
|
||||||
|
colModel.get(0).setCellRenderer(new EditCellRenderer());
|
||||||
|
colModel.get(1).setCellRenderer(new DeleteCellRenderer());
|
||||||
|
|
||||||
|
addTableActionListener(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
private class SciDepartmentOrganizationSheetModelBuilder
|
||||||
|
extends LockableImpl
|
||||||
|
implements TableModelBuilder {
|
||||||
|
|
||||||
|
private ItemSelectionModel m_itemModel;
|
||||||
|
|
||||||
|
public SciDepartmentOrganizationSheetModelBuilder(
|
||||||
|
ItemSelectionModel itemModel) {
|
||||||
|
m_itemModel = itemModel;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TableModel makeModel(Table table, PageState state) {
|
||||||
|
table.getRowSelectionModel().clearSelection(state);
|
||||||
|
SciDepartment department = (SciDepartment) m_itemModel.
|
||||||
|
getSelectedObject(state);
|
||||||
|
return new SciDepartmentOrganizationSheetModel(table,
|
||||||
|
state,
|
||||||
|
department);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private class SciDepartmentOrganizationSheetModel
|
||||||
|
implements TableModel {
|
||||||
|
|
||||||
|
private Table m_table;
|
||||||
|
private SciOrganization m_orga;
|
||||||
|
|
||||||
|
public SciDepartmentOrganizationSheetModel(Table table,
|
||||||
|
PageState state,
|
||||||
|
SciDepartment department) {
|
||||||
|
m_table = table;
|
||||||
|
m_orga = department.getOrganization();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getColumnCount() {
|
||||||
|
return m_table.getColumnModel().size();
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean nextRow() {
|
||||||
|
boolean ret;
|
||||||
|
|
||||||
|
if (null == m_orga) {
|
||||||
|
ret = false;
|
||||||
|
} else {
|
||||||
|
ret = true;
|
||||||
|
m_orga = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Object getElementAt(int columnIndex) {
|
||||||
|
switch (columnIndex) {
|
||||||
|
case 0:
|
||||||
|
return m_orga.getTitle();
|
||||||
|
case 1:
|
||||||
|
return SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.departemnt.organzation.remove");
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public Object getKeyAt(int columnIndex) {
|
||||||
|
return m_orga.getID();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private class EditCellRenderer
|
||||||
|
extends LockableImpl
|
||||||
|
implements TableCellRenderer {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Component getComponent(Table table,
|
||||||
|
PageState state,
|
||||||
|
Object value,
|
||||||
|
boolean isSelected,
|
||||||
|
Object key,
|
||||||
|
int row,
|
||||||
|
int column) {
|
||||||
|
Label label = new Label(value.toString());
|
||||||
|
return label;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private class DeleteCellRenderer
|
||||||
|
extends LockableImpl
|
||||||
|
implements TableCellRenderer {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Component getComponent(Table table,
|
||||||
|
PageState state,
|
||||||
|
Object value,
|
||||||
|
boolean isSelected,
|
||||||
|
Object key,
|
||||||
|
int row,
|
||||||
|
int col) {
|
||||||
|
SecurityManager securityManager =
|
||||||
|
Utilities.getSecurityManager(state);
|
||||||
|
SciDepartment project = (SciDepartment) m_itemModel.
|
||||||
|
getSelectedObject(
|
||||||
|
state);
|
||||||
|
|
||||||
|
boolean canEdit = securityManager.canAccess(
|
||||||
|
state.getRequest(),
|
||||||
|
SecurityManager.DELETE_ITEM,
|
||||||
|
project);
|
||||||
|
|
||||||
|
if (canEdit) {
|
||||||
|
ControlLink link = new ControlLink(value.toString());
|
||||||
|
link.setConfirmation((String) SciOrganizationGlobalizationUtil.
|
||||||
|
globalize(
|
||||||
|
"sciorganization.ui.department.organization."
|
||||||
|
+ ".confirm_remove").
|
||||||
|
localize());
|
||||||
|
return link;
|
||||||
|
} else {
|
||||||
|
Label label = new Label(value.toString());
|
||||||
|
return label;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void cellSelected(TableActionEvent event) {
|
||||||
|
PageState state = event.getPageState();
|
||||||
|
|
||||||
|
SciDepartment department = (SciDepartment) m_itemModel.getSelectedObject(
|
||||||
|
state);
|
||||||
|
|
||||||
|
TableColumn column = getColumnModel().get(event.getColumn().intValue());
|
||||||
|
|
||||||
|
if (column.getHeaderKey().toString().equals(TABLE_COL_EDIT)) {
|
||||||
|
} else if (column.getHeaderKey().toString().equals(TABLE_COL_DEL)) {
|
||||||
|
department.setOrganization(null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void headSelected(TableActionEvent event) {
|
||||||
|
//Nothing to do
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
||||||
|
import com.arsdigita.cms.ui.authoring.BasicItemForm;
|
||||||
|
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
|
||||||
|
import com.arsdigita.cms.ui.workflow.WorkflowLockedComponentAccess;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciDepartmentOrganizationStep extends SimpleEditStep {
|
||||||
|
|
||||||
|
private String SET_DEPARTMENT_ORGANIZATION_STEP =
|
||||||
|
"setDepartmentOrganization";
|
||||||
|
|
||||||
|
public SciDepartmentOrganizationStep(ItemSelectionModel itemModel,
|
||||||
|
AuthoringKitWizard parent) {
|
||||||
|
this(itemModel, parent, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public SciDepartmentOrganizationStep(ItemSelectionModel itemModel,
|
||||||
|
AuthoringKitWizard parent,
|
||||||
|
String prefix) {
|
||||||
|
super(itemModel, parent, prefix);
|
||||||
|
|
||||||
|
BasicItemForm setOrgaForm =
|
||||||
|
new SciDepartmentOrganizationForm(itemModel);
|
||||||
|
add(SET_DEPARTMENT_ORGANIZATION_STEP,
|
||||||
|
(String) SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.setOrganization").localize(),
|
||||||
|
new WorkflowLockedComponentAccess(setOrgaForm, itemModel),
|
||||||
|
setOrgaForm.getSaveCancelSection().getCancelButton());
|
||||||
|
|
||||||
|
SciDepartmentOrganizationSheet sheet =
|
||||||
|
new SciDepartmentOrganizationSheet(
|
||||||
|
itemModel);
|
||||||
|
setDisplayComponent(sheet);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -3,6 +3,8 @@ package com.arsdigita.cms.contenttypes.ui;
|
||||||
import com.arsdigita.bebop.Component;
|
import com.arsdigita.bebop.Component;
|
||||||
import com.arsdigita.bebop.Label;
|
import com.arsdigita.bebop.Label;
|
||||||
import com.arsdigita.cms.ItemSelectionModel;
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciOrganizationConfig;
|
||||||
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
||||||
import com.arsdigita.cms.ui.authoring.BasicPageForm;
|
import com.arsdigita.cms.ui.authoring.BasicPageForm;
|
||||||
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
|
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
|
||||||
|
|
@ -61,12 +63,41 @@ public class SciDepartmentPropertiesStep
|
||||||
@Override
|
@Override
|
||||||
protected void addSteps(ItemSelectionModel itemModel,
|
protected void addSteps(ItemSelectionModel itemModel,
|
||||||
AuthoringKitWizard parent) {
|
AuthoringKitWizard parent) {
|
||||||
super.addSteps(itemModel, parent);
|
//super.addSteps(itemModel, parent);
|
||||||
|
|
||||||
addStep(new SciDepartmentSubDepartmentsStep(itemModel, parent),
|
SciOrganizationConfig config;
|
||||||
"sciorganization.ui.department.subdepartments");
|
config = SciDepartment.getConfig();
|
||||||
|
|
||||||
addStep(new SciDepartmentProjectsStep(itemModel, parent),
|
if (!config.getDepartmentAddContactHide()) {
|
||||||
"sciorganization.ui.department.projects");
|
addStep(new GenericOrganizationalUnitContactPropertiesStep(itemModel,
|
||||||
|
parent),
|
||||||
|
"cms.contenttypes.ui.orgaunit.contact");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getDepartmentAddPersonHide()) {
|
||||||
|
addStep(new GenericOrganizationalUnitPersonPropertiesStep(itemModel,
|
||||||
|
parent),
|
||||||
|
"cms.contenttypes.ui.orgaunit.persons");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getDepartmentAddSubDepartmentHide()) {
|
||||||
|
addStep(new SciDepartmentSubDepartmentsStep(itemModel, parent),
|
||||||
|
"sciorganization.ui.department.subdepartments");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getDepartmentSetSuperDepartmentHide()) {
|
||||||
|
addStep(new SciDepartmentSuperDepartmentStep(itemModel, parent),
|
||||||
|
"sciorganization.ui.department.superdepartment");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getDepartmentAddProjectHide()) {
|
||||||
|
addStep(new SciDepartmentProjectsStep(itemModel, parent),
|
||||||
|
"sciorganization.ui.department.projects");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getDepartmentSetOrganizationHide()) {
|
||||||
|
addStep(new SciDepartmentOrganizationStep(itemModel, parent),
|
||||||
|
"sciorganization.ui.department.organization");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -38,13 +38,13 @@ public class SciDepartmentPropertyForm
|
||||||
super.addWidgets();
|
super.addWidgets();
|
||||||
|
|
||||||
Label descLabel = new Label(SciOrganizationGlobalizationUtil.globalize(
|
Label descLabel = new Label(SciOrganizationGlobalizationUtil.globalize(
|
||||||
"sciorganizations.ui.department.description"));
|
"sciorganizations.ui.department.shortdescription"));
|
||||||
add(descLabel);
|
add(descLabel);
|
||||||
ParameterModel descParam = new StringParameter(
|
ParameterModel descParam = new StringParameter(
|
||||||
SciDepartment.DEPARTMENT_DESCRIPTION);
|
SciDepartment.DEPARTMENT_SHORT_DESCRIPTION);
|
||||||
TextArea desc = new TextArea(descParam);
|
TextArea desc = new TextArea(descParam);
|
||||||
desc.setCols(60);
|
desc.setCols(75);
|
||||||
desc.setRows(18);
|
desc.setRows(5);
|
||||||
add(desc);
|
add(desc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -55,8 +55,8 @@ public class SciDepartmentPropertyForm
|
||||||
FormData data = fse.getFormData();
|
FormData data = fse.getFormData();
|
||||||
SciDepartment department = (SciDepartment) super.initBasicWidgets(fse);
|
SciDepartment department = (SciDepartment) super.initBasicWidgets(fse);
|
||||||
|
|
||||||
data.put(SciDepartment.DEPARTMENT_DESCRIPTION,
|
data.put(SciDepartment.DEPARTMENT_SHORT_DESCRIPTION,
|
||||||
department.getDepartmentDescription());
|
department.getDepartmentShortDescription());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -69,8 +69,8 @@ public class SciDepartmentPropertyForm
|
||||||
|
|
||||||
if ((department != null) && getSaveCancelSection().getSaveButton().
|
if ((department != null) && getSaveCancelSection().getSaveButton().
|
||||||
isSelected(fse.getPageState())) {
|
isSelected(fse.getPageState())) {
|
||||||
department.setDepartmentDescription(
|
department.setDepartmentShortDescription(
|
||||||
(String) data.get(SciDepartment.DEPARTMENT_DESCRIPTION));
|
(String) data.get(SciDepartment.DEPARTMENT_SHORT_DESCRIPTION));
|
||||||
|
|
||||||
department.save();
|
department.save();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,65 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.FormData;
|
||||||
|
import com.arsdigita.bebop.FormProcessException;
|
||||||
|
import com.arsdigita.bebop.Label;
|
||||||
|
import com.arsdigita.bebop.PageState;
|
||||||
|
import com.arsdigita.bebop.event.FormInitListener;
|
||||||
|
import com.arsdigita.bebop.event.FormProcessListener;
|
||||||
|
import com.arsdigita.bebop.event.FormSectionEvent;
|
||||||
|
import com.arsdigita.cms.ContentType;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
|
import com.arsdigita.cms.ui.ItemSearchWidget;
|
||||||
|
import com.arsdigita.cms.ui.authoring.BasicItemForm;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciDepartmentSuperDepartmentForm
|
||||||
|
extends BasicItemForm
|
||||||
|
implements FormProcessListener,
|
||||||
|
FormInitListener {
|
||||||
|
|
||||||
|
private ItemSearchWidget m_itemSearch;
|
||||||
|
private final String ITEM_SEARCH = "superdepartment";
|
||||||
|
|
||||||
|
public SciDepartmentSuperDepartmentForm(ItemSelectionModel itemModel) {
|
||||||
|
super("SuperDepartmentSetForm", itemModel);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addWidgets() {
|
||||||
|
add(new Label((String) SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.select_superdepartment").
|
||||||
|
localize()));
|
||||||
|
m_itemSearch = new ItemSearchWidget(
|
||||||
|
ITEM_SEARCH,
|
||||||
|
ContentType.findByAssociatedObjectType(
|
||||||
|
SciDepartment.class.getName()));
|
||||||
|
add(m_itemSearch);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void init(FormSectionEvent fse) throws FormProcessException {
|
||||||
|
PageState state = fse.getPageState();
|
||||||
|
|
||||||
|
setVisible(state, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void process(FormSectionEvent fse) throws FormProcessException {
|
||||||
|
FormData data = fse.getFormData();
|
||||||
|
PageState state = fse.getPageState();
|
||||||
|
SciDepartment department = (SciDepartment) getItemSelectionModel().
|
||||||
|
getSelectedObject(state);
|
||||||
|
|
||||||
|
if ((this.getSaveCancelSection().getSaveButton().isSelected(state))) {
|
||||||
|
department.setSuperDepartment(
|
||||||
|
(SciDepartment) data.get(ITEM_SEARCH));
|
||||||
|
|
||||||
|
init(fse);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,205 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.Component;
|
||||||
|
import com.arsdigita.bebop.ControlLink;
|
||||||
|
import com.arsdigita.bebop.Label;
|
||||||
|
import com.arsdigita.bebop.PageState;
|
||||||
|
import com.arsdigita.bebop.Table;
|
||||||
|
import com.arsdigita.bebop.event.TableActionEvent;
|
||||||
|
import com.arsdigita.bebop.event.TableActionListener;
|
||||||
|
import com.arsdigita.bebop.table.TableCellRenderer;
|
||||||
|
import com.arsdigita.bebop.table.TableColumn;
|
||||||
|
import com.arsdigita.bebop.table.TableColumnModel;
|
||||||
|
import com.arsdigita.bebop.table.TableModel;
|
||||||
|
import com.arsdigita.bebop.table.TableModelBuilder;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.SecurityManager;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciDepartment;
|
||||||
|
import com.arsdigita.cms.dispatcher.Utilities;
|
||||||
|
import com.arsdigita.util.LockableImpl;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciDepartmentSuperDepartmentSheet
|
||||||
|
extends Table
|
||||||
|
implements TableActionListener {
|
||||||
|
|
||||||
|
private final String TABLE_COL_EDIT = "table_col_edit";
|
||||||
|
private final String TABLE_COL_DEL = "table_col_del";
|
||||||
|
private ItemSelectionModel m_itemModel;
|
||||||
|
|
||||||
|
public SciDepartmentSuperDepartmentSheet(ItemSelectionModel itemModel) {
|
||||||
|
super();
|
||||||
|
m_itemModel = itemModel;
|
||||||
|
|
||||||
|
setEmptyView(
|
||||||
|
new Label(SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.superdepartment_none")));
|
||||||
|
|
||||||
|
TableColumnModel colModel = getColumnModel();
|
||||||
|
colModel.add(new TableColumn(
|
||||||
|
0,
|
||||||
|
SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.superdepartment").localize(),
|
||||||
|
TABLE_COL_EDIT));
|
||||||
|
colModel.add(new TableColumn(
|
||||||
|
1,
|
||||||
|
SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.superdepartment.remove").localize(),
|
||||||
|
TABLE_COL_DEL));
|
||||||
|
|
||||||
|
setModelBuilder(
|
||||||
|
new SciDepartmentSuperDepartmentSheetModelBuilder(itemModel));
|
||||||
|
colModel.get(0).setCellRenderer(new EditCellRenderer());
|
||||||
|
colModel.get(1).setCellRenderer(new DeleteCellRenderer());
|
||||||
|
|
||||||
|
addTableActionListener(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
private class SciDepartmentSuperDepartmentSheetModelBuilder
|
||||||
|
extends LockableImpl
|
||||||
|
implements TableModelBuilder {
|
||||||
|
|
||||||
|
private ItemSelectionModel m_itemModel;
|
||||||
|
|
||||||
|
public SciDepartmentSuperDepartmentSheetModelBuilder(
|
||||||
|
ItemSelectionModel itemModel) {
|
||||||
|
m_itemModel = itemModel;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TableModel makeModel(Table table, PageState state) {
|
||||||
|
table.getRowSelectionModel().clearSelection(state);
|
||||||
|
SciDepartment department = (SciDepartment) m_itemModel.
|
||||||
|
getSelectedObject(state);
|
||||||
|
return new SciDepartmentSuperDepartmentSheetModel(table,
|
||||||
|
state,
|
||||||
|
department);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private class SciDepartmentSuperDepartmentSheetModel
|
||||||
|
implements TableModel {
|
||||||
|
|
||||||
|
private Table m_table;
|
||||||
|
private SciDepartment m_superDepartment;
|
||||||
|
|
||||||
|
public SciDepartmentSuperDepartmentSheetModel(Table table,
|
||||||
|
PageState state,
|
||||||
|
SciDepartment department) {
|
||||||
|
m_table = table;
|
||||||
|
m_superDepartment = department.getSuperDepartment();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getColumnCount() {
|
||||||
|
return m_table.getColumnModel().size();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean nextRow() {
|
||||||
|
boolean ret;
|
||||||
|
|
||||||
|
if (null == m_superDepartment) {
|
||||||
|
ret = false;
|
||||||
|
} else {
|
||||||
|
ret = true;
|
||||||
|
m_superDepartment = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object getElementAt(int columnIndex) {
|
||||||
|
switch (columnIndex) {
|
||||||
|
case 0:
|
||||||
|
return m_superDepartment.getTitle();
|
||||||
|
case 1:
|
||||||
|
return SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.superdepartment.remove");
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object getKeyAt(int columnIndex) {
|
||||||
|
return m_superDepartment.getID();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private class EditCellRenderer
|
||||||
|
extends LockableImpl
|
||||||
|
implements TableCellRenderer {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Component getComponent(Table table,
|
||||||
|
PageState state, Object value,
|
||||||
|
boolean isSelected,
|
||||||
|
Object key,
|
||||||
|
int row,
|
||||||
|
int column) {
|
||||||
|
Label label = new Label(value.toString());
|
||||||
|
return label;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private class DeleteCellRenderer
|
||||||
|
extends LockableImpl
|
||||||
|
implements TableCellRenderer {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Component getComponent(Table table,
|
||||||
|
PageState state, Object value,
|
||||||
|
boolean isSelected,
|
||||||
|
Object key,
|
||||||
|
int row,
|
||||||
|
int column) {
|
||||||
|
SecurityManager securityManager =
|
||||||
|
Utilities.getSecurityManager(state);
|
||||||
|
SciDepartment project = (SciDepartment) m_itemModel.
|
||||||
|
getSelectedObject(
|
||||||
|
state);
|
||||||
|
|
||||||
|
boolean canEdit = securityManager.canAccess(
|
||||||
|
state.getRequest(),
|
||||||
|
SecurityManager.DELETE_ITEM,
|
||||||
|
project);
|
||||||
|
|
||||||
|
if (canEdit) {
|
||||||
|
ControlLink link = new ControlLink(value.toString());
|
||||||
|
link.setConfirmation((String) SciOrganizationGlobalizationUtil.
|
||||||
|
globalize(
|
||||||
|
"sciorganization.ui.department.superdepartment."
|
||||||
|
+ ".confirm_remove").
|
||||||
|
localize());
|
||||||
|
return link;
|
||||||
|
} else {
|
||||||
|
Label label = new Label(value.toString());
|
||||||
|
return label;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void cellSelected(TableActionEvent event) {
|
||||||
|
PageState state = event.getPageState();
|
||||||
|
|
||||||
|
SciDepartment department = (SciDepartment) m_itemModel.getSelectedObject(
|
||||||
|
state);
|
||||||
|
|
||||||
|
TableColumn column = getColumnModel().get(event.getColumn().intValue());
|
||||||
|
|
||||||
|
if (column.getHeaderKey().toString().equals(TABLE_COL_EDIT)) {
|
||||||
|
|
||||||
|
} else if (column.getHeaderKey().toString().equals(TABLE_COL_DEL)) {
|
||||||
|
department.setSuperDepartment(null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void headSelected(TableActionEvent event) {
|
||||||
|
//Noting to do
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,43 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
||||||
|
import com.arsdigita.cms.ui.authoring.BasicItemForm;
|
||||||
|
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
|
||||||
|
import com.arsdigita.cms.ui.workflow.WorkflowLockedComponentAccess;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciDepartmentSuperDepartmentStep extends SimpleEditStep {
|
||||||
|
|
||||||
|
private String SET_SUPER_DEPARTMENT_STEP = "setSuperDepartment";
|
||||||
|
|
||||||
|
public SciDepartmentSuperDepartmentStep(ItemSelectionModel itemModel,
|
||||||
|
AuthoringKitWizard parent) {
|
||||||
|
this(itemModel, parent, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public SciDepartmentSuperDepartmentStep(ItemSelectionModel itemModel,
|
||||||
|
AuthoringKitWizard parent,
|
||||||
|
String prefix) {
|
||||||
|
super(itemModel, parent, prefix);
|
||||||
|
|
||||||
|
BasicItemForm setSuperDepartmentForm =
|
||||||
|
new SciDepartmentSuperDepartmentForm(itemModel);
|
||||||
|
add(SET_SUPER_DEPARTMENT_STEP,
|
||||||
|
(String) SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.department.setSuperDepartment").localize(),
|
||||||
|
new WorkflowLockedComponentAccess(setSuperDepartmentForm,
|
||||||
|
itemModel),
|
||||||
|
setSuperDepartmentForm.getSaveCancelSection().
|
||||||
|
getCancelButton());
|
||||||
|
|
||||||
|
SciDepartmentSuperDepartmentSheet sheet =
|
||||||
|
new SciDepartmentSuperDepartmentSheet(
|
||||||
|
itemModel);
|
||||||
|
setDisplayComponent(sheet);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,81 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.FormData;
|
||||||
|
import com.arsdigita.bebop.FormProcessException;
|
||||||
|
import com.arsdigita.bebop.Label;
|
||||||
|
import com.arsdigita.bebop.PageState;
|
||||||
|
import com.arsdigita.bebop.event.FormInitListener;
|
||||||
|
import com.arsdigita.bebop.event.FormProcessListener;
|
||||||
|
import com.arsdigita.bebop.event.FormSectionEvent;
|
||||||
|
import com.arsdigita.bebop.form.TextArea;
|
||||||
|
import com.arsdigita.bebop.parameters.ParameterModel;
|
||||||
|
import com.arsdigita.bebop.parameters.StringParameter;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciOrganization;
|
||||||
|
import com.arsdigita.cms.ui.CMSDHTMLEditor;
|
||||||
|
import com.arsdigita.cms.ui.authoring.BasicItemForm;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciOrganizationDescriptionEditForm
|
||||||
|
extends BasicItemForm
|
||||||
|
implements FormProcessListener,
|
||||||
|
FormInitListener {
|
||||||
|
|
||||||
|
public SciOrganizationDescriptionEditForm(ItemSelectionModel itemModel) {
|
||||||
|
super("sciorganizationEditDescForm", itemModel);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addWidgets() {
|
||||||
|
add(new Label(SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.organization.description")));
|
||||||
|
ParameterModel descParam = new StringParameter(
|
||||||
|
SciOrganization.ORGANIZATION_DESCRIPTION);
|
||||||
|
TextArea desc;
|
||||||
|
if (SciOrganization.getConfig().getOrganizationDescriptionDhtml()) {
|
||||||
|
desc = new CMSDHTMLEditor(descParam);
|
||||||
|
} else {
|
||||||
|
desc = new TextArea(descParam);
|
||||||
|
}
|
||||||
|
desc.setCols(75);
|
||||||
|
desc.setRows(25);
|
||||||
|
add(desc);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void init(FormSectionEvent fse) throws FormProcessException {
|
||||||
|
PageState state = fse.getPageState();
|
||||||
|
|
||||||
|
FormData data = fse.getFormData();
|
||||||
|
SciOrganization orga = (SciOrganization) getItemSelectionModel().
|
||||||
|
getSelectedObject(state);
|
||||||
|
|
||||||
|
data.put(SciOrganization.ORGANIZATION_DESCRIPTION,
|
||||||
|
orga.getOrganizationDescription());
|
||||||
|
|
||||||
|
setVisible(state, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void process(FormSectionEvent fse) throws FormProcessException {
|
||||||
|
PageState state = fse.getPageState();
|
||||||
|
|
||||||
|
FormData data = fse.getFormData();
|
||||||
|
|
||||||
|
SciOrganization orga = (SciOrganization) getItemSelectionModel().
|
||||||
|
getSelectedObject(state);
|
||||||
|
|
||||||
|
if ((orga != null) && this.getSaveCancelSection().getSaveButton().
|
||||||
|
isSelected(state)) {
|
||||||
|
orga.setOrganizationDescription((String) data.get(
|
||||||
|
SciOrganization.ORGANIZATION_DESCRIPTION));
|
||||||
|
|
||||||
|
orga.save();
|
||||||
|
|
||||||
|
init(fse);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,62 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.Component;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciOrganization;
|
||||||
|
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
||||||
|
import com.arsdigita.cms.ui.authoring.BasicItemForm;
|
||||||
|
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
|
||||||
|
import com.arsdigita.cms.ui.workflow.WorkflowLockedComponentAccess;
|
||||||
|
import com.arsdigita.toolbox.ui.DomainObjectPropertySheet;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciOrganizationDescriptionStep extends SimpleEditStep {
|
||||||
|
|
||||||
|
private String EDIT_ORGANIZATION_DESC_SHEET_NAME = "editOrganizationDesc";
|
||||||
|
private String UPLOAD_ORGANIZATION_DESC_SHEET_NAME =
|
||||||
|
"uploadOrganizationDesc";
|
||||||
|
|
||||||
|
public SciOrganizationDescriptionStep(ItemSelectionModel itemModel,
|
||||||
|
AuthoringKitWizard parent) {
|
||||||
|
this(itemModel, parent, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
public SciOrganizationDescriptionStep(ItemSelectionModel itemModel,
|
||||||
|
AuthoringKitWizard parent,
|
||||||
|
String prefix) {
|
||||||
|
super(itemModel, parent, prefix);
|
||||||
|
|
||||||
|
BasicItemForm editDescForm =
|
||||||
|
new SciOrganizationDescriptionEditForm(itemModel);
|
||||||
|
add(EDIT_ORGANIZATION_DESC_SHEET_NAME,
|
||||||
|
(String) SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.organization.edit_desc").localize(),
|
||||||
|
new WorkflowLockedComponentAccess(editDescForm, itemModel),
|
||||||
|
editDescForm.getSaveCancelSection().getCancelButton());
|
||||||
|
|
||||||
|
SciOrganizationDescriptionUploadForm uploadDescForm =
|
||||||
|
new SciOrganizationDescriptionUploadForm(itemModel);
|
||||||
|
add(UPLOAD_ORGANIZATION_DESC_SHEET_NAME,
|
||||||
|
(String) SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.organization.upload_desc").localize(),
|
||||||
|
new WorkflowLockedComponentAccess(uploadDescForm, itemModel),
|
||||||
|
uploadDescForm.getSaveCancelSection().getCancelButton());
|
||||||
|
|
||||||
|
setDisplayComponent(getSciOrganizationEditDescSheet(itemModel));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Component getSciOrganizationEditDescSheet(
|
||||||
|
ItemSelectionModel itemModel) {
|
||||||
|
DomainObjectPropertySheet sheet = new DomainObjectPropertySheet(
|
||||||
|
itemModel);
|
||||||
|
|
||||||
|
sheet.add(SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.organization.desc"),
|
||||||
|
SciOrganization.ORGANIZATION_DESCRIPTION);
|
||||||
|
|
||||||
|
return sheet;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
|
import com.arsdigita.bebop.PageState;
|
||||||
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciOrganization;
|
||||||
|
import com.arsdigita.globalization.GlobalizedMessage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jens Pelzetter
|
||||||
|
*/
|
||||||
|
public class SciOrganizationDescriptionUploadForm
|
||||||
|
extends AbstractTextUploadForm {
|
||||||
|
|
||||||
|
public SciOrganizationDescriptionUploadForm(ItemSelectionModel itemModel) {
|
||||||
|
super(itemModel);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GlobalizedMessage getLabelText() {
|
||||||
|
return SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.organization.description.upload");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GlobalizedMessage getMimeTypeLabel() {
|
||||||
|
return SciOrganizationGlobalizationUtil.globalize(
|
||||||
|
"sciorganization.ui.organization.description.upload.mimetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setText(ItemSelectionModel itemModel,
|
||||||
|
PageState state,
|
||||||
|
String text) {
|
||||||
|
SciOrganization orga = (SciOrganization) itemModel.getSelectedObject(
|
||||||
|
state);
|
||||||
|
orga.setOrganizationDescription(text);
|
||||||
|
orga.save();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -2,6 +2,8 @@ package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
import com.arsdigita.bebop.Label;
|
import com.arsdigita.bebop.Label;
|
||||||
import com.arsdigita.cms.ItemSelectionModel;
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciOrganization;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciOrganizationConfig;
|
||||||
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
||||||
import com.arsdigita.cms.ui.authoring.BasicPageForm;
|
import com.arsdigita.cms.ui.authoring.BasicPageForm;
|
||||||
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
|
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
|
||||||
|
|
@ -50,12 +52,31 @@ public class SciOrganizationPropertiesStep
|
||||||
@Override
|
@Override
|
||||||
protected void addSteps(ItemSelectionModel itemModel,
|
protected void addSteps(ItemSelectionModel itemModel,
|
||||||
AuthoringKitWizard parent) {
|
AuthoringKitWizard parent) {
|
||||||
super.addSteps(itemModel, parent);
|
//super.addSteps(itemModel, parent);
|
||||||
|
|
||||||
addStep(new SciOrganizationDepartmentsStep(itemModel, parent),
|
SciOrganizationConfig config;
|
||||||
"sciorganization.ui.organization.departments");
|
config = SciOrganization.getConfig();
|
||||||
|
|
||||||
addStep(new SciOrganizationProjectsStep(itemModel, parent),
|
if (!config.getOrganizationAddContactHide()) {
|
||||||
"sciorganization.ui.organization.projects");
|
addStep(new GenericOrganizationalUnitContactPropertiesStep(itemModel,
|
||||||
|
parent),
|
||||||
|
"cms.contenttypes.ui.orgaunit.contact");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getOrganizationAddPersonHide()) {
|
||||||
|
addStep(new GenericOrganizationalUnitPersonPropertiesStep(itemModel,
|
||||||
|
parent),
|
||||||
|
"cms.contenttypes.ui.orgaunit.persons");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getOrganizationAddDepartmentHide()) {
|
||||||
|
addStep(new SciOrganizationDepartmentsStep(itemModel, parent),
|
||||||
|
"sciorganization.ui.organization.departments");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getOrganizationAddProjectHide()) {
|
||||||
|
addStep(new SciOrganizationProjectsStep(itemModel, parent),
|
||||||
|
"sciorganization.ui.organization.projects");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -40,13 +40,13 @@ public class SciOrganizationPropertyForm
|
||||||
super.addWidgets();
|
super.addWidgets();
|
||||||
|
|
||||||
Label descLabel = new Label(SciOrganizationGlobalizationUtil.globalize(
|
Label descLabel = new Label(SciOrganizationGlobalizationUtil.globalize(
|
||||||
"sciorganizations.ui.organization.description"));
|
"sciorganizations.ui.organization.shortdescription"));
|
||||||
add(descLabel);
|
add(descLabel);
|
||||||
ParameterModel descParam = new StringParameter(
|
ParameterModel descParam = new StringParameter(
|
||||||
SciOrganization.ORGANIZATION_DESCRIPTION);
|
SciOrganization.ORGANIZATION_SHORT_DESCRIPTION);
|
||||||
TextArea desc = new TextArea(descParam);
|
TextArea desc = new TextArea(descParam);
|
||||||
desc.setCols(60);
|
desc.setCols(75);
|
||||||
desc.setRows(18);
|
desc.setRows(5);
|
||||||
add(desc);
|
add(desc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -57,8 +57,8 @@ public class SciOrganizationPropertyForm
|
||||||
FormData data = fse.getFormData();
|
FormData data = fse.getFormData();
|
||||||
SciOrganization orga = (SciOrganization) super.initBasicWidgets(fse);
|
SciOrganization orga = (SciOrganization) super.initBasicWidgets(fse);
|
||||||
|
|
||||||
data.put(SciOrganization.ORGANIZATION_DESCRIPTION,
|
data.put(SciOrganization.ORGANIZATION_SHORT_DESCRIPTION,
|
||||||
orga.getOrganizationDescription());
|
orga.getOrganizationShortDescription());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -72,8 +72,8 @@ public class SciOrganizationPropertyForm
|
||||||
if ((organization != null) && getSaveCancelSection().getSaveButton().
|
if ((organization != null) && getSaveCancelSection().getSaveButton().
|
||||||
isSelected(fse.getPageState())) {
|
isSelected(fse.getPageState())) {
|
||||||
|
|
||||||
organization.setOrganizationDescription((String) data.get(
|
organization.setOrganizationShortDescription((String) data.get(
|
||||||
SciOrganization.ORGANIZATION_DESCRIPTION));
|
SciOrganization.ORGANIZATION_SHORT_DESCRIPTION));
|
||||||
|
|
||||||
organization.save();
|
organization.save();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,12 @@ public class SciProjectDescriptionEditForm
|
||||||
"sciorganizazion.ui.project.description")));
|
"sciorganizazion.ui.project.description")));
|
||||||
ParameterModel descParam = new StringParameter(
|
ParameterModel descParam = new StringParameter(
|
||||||
SciProject.PROJECT_DESCRIPTION);
|
SciProject.PROJECT_DESCRIPTION);
|
||||||
CMSDHTMLEditor desc = new CMSDHTMLEditor(descParam);
|
TextArea desc;
|
||||||
|
if (SciProject.getConfig().getProjectDescriptionDhtml()) {
|
||||||
|
desc = new CMSDHTMLEditor(descParam);
|
||||||
|
} else {
|
||||||
|
desc = new TextArea(descParam);
|
||||||
|
}
|
||||||
desc.setCols(75);
|
desc.setCols(75);
|
||||||
desc.setRows(25);
|
desc.setRows(25);
|
||||||
add(desc);
|
add(desc);
|
||||||
|
|
@ -51,7 +56,6 @@ public class SciProjectDescriptionEditForm
|
||||||
} else {
|
} else {
|
||||||
funding = new TextArea(fundingParam);
|
funding = new TextArea(fundingParam);
|
||||||
}
|
}
|
||||||
|
|
||||||
funding.setCols(75);
|
funding.setCols(75);
|
||||||
funding.setRows(25);
|
funding.setRows(25);
|
||||||
add(funding);
|
add(funding);
|
||||||
|
|
@ -83,7 +87,7 @@ public class SciProjectDescriptionEditForm
|
||||||
SciProject project = (SciProject) getItemSelectionModel().
|
SciProject project = (SciProject) getItemSelectionModel().
|
||||||
getSelectedObject(state);
|
getSelectedObject(state);
|
||||||
|
|
||||||
if ((project != null) && this.getSaveCancelSection().getSaveButton().
|
if ((project != null) && getSaveCancelSection().getSaveButton().
|
||||||
isSelected(state)) {
|
isSelected(state)) {
|
||||||
project.setProjectDescription((String) data.get(
|
project.setProjectDescription((String) data.get(
|
||||||
SciProject.PROJECT_DESCRIPTION));
|
SciProject.PROJECT_DESCRIPTION));
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
package com.arsdigita.cms.contenttypes.ui;
|
package com.arsdigita.cms.contenttypes.ui;
|
||||||
|
|
||||||
import com.arsdigita.bebop.Component;
|
import com.arsdigita.bebop.Component;
|
||||||
import com.arsdigita.bebop.Form;
|
|
||||||
import com.arsdigita.cms.ItemSelectionModel;
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
import com.arsdigita.cms.contenttypes.SciProject;
|
import com.arsdigita.cms.contenttypes.SciProject;
|
||||||
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
||||||
|
|
@ -38,12 +37,13 @@ public class SciProjectDescriptionStep extends SimpleEditStep {
|
||||||
editDescForm.getSaveCancelSection().getCancelButton());
|
editDescForm.getSaveCancelSection().getCancelButton());
|
||||||
|
|
||||||
SciProjectDescriptionUploadForm uploadDescForm =
|
SciProjectDescriptionUploadForm uploadDescForm =
|
||||||
new SciProjectDescriptionUploadForm(itemModel);
|
new SciProjectDescriptionUploadForm(
|
||||||
|
itemModel);
|
||||||
add(UPLOAD_PROJECT_DESC_SHEET_NAME,
|
add(UPLOAD_PROJECT_DESC_SHEET_NAME,
|
||||||
(String) SciOrganizationGlobalizationUtil.globalize(
|
(String) SciOrganizationGlobalizationUtil.globalize(
|
||||||
"sciorganization.ui.project.upload_desc").localize(),
|
"sciorganization.ui.project.upload_desc").localize(),
|
||||||
new WorkflowLockedComponentAccess(uploadDescForm, itemModel),
|
new WorkflowLockedComponentAccess(uploadDescForm, itemModel),
|
||||||
uploadDescForm.getSaveCancelSection().getCancelButton());
|
uploadDescForm.getSaveCancelSection().getCancelButton());
|
||||||
|
|
||||||
setDisplayComponent(
|
setDisplayComponent(
|
||||||
getSciProjectEditDescSheet(itemModel));
|
getSciProjectEditDescSheet(itemModel));
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,8 @@ public class SciProjectDescriptionUploadForm extends AbstractTextUploadForm {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setText(ItemSelectionModel itemModel, PageState state,
|
public void setText(ItemSelectionModel itemModel,
|
||||||
|
PageState state,
|
||||||
String text) {
|
String text) {
|
||||||
SciProject project = (SciProject) itemModel.getSelectedObject(state);
|
SciProject project = (SciProject) itemModel.getSelectedObject(state);
|
||||||
project.setProjectDescription(text);
|
project.setProjectDescription(text);
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package com.arsdigita.cms.contenttypes.ui;
|
||||||
import com.arsdigita.bebop.Component;
|
import com.arsdigita.bebop.Component;
|
||||||
import com.arsdigita.bebop.Label;
|
import com.arsdigita.bebop.Label;
|
||||||
import com.arsdigita.cms.ItemSelectionModel;
|
import com.arsdigita.cms.ItemSelectionModel;
|
||||||
|
import com.arsdigita.cms.contenttypes.SciOrganizationConfig;
|
||||||
import com.arsdigita.cms.contenttypes.SciProject;
|
import com.arsdigita.cms.contenttypes.SciProject;
|
||||||
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
|
||||||
import com.arsdigita.cms.ui.authoring.BasicPageForm;
|
import com.arsdigita.cms.ui.authoring.BasicPageForm;
|
||||||
|
|
@ -72,26 +73,43 @@ public class SciProjectPropertiesStep
|
||||||
@Override
|
@Override
|
||||||
protected void addSteps(ItemSelectionModel itemModel,
|
protected void addSteps(ItemSelectionModel itemModel,
|
||||||
AuthoringKitWizard parent) {
|
AuthoringKitWizard parent) {
|
||||||
addStep(new GenericOrganizationalUnitContactPropertiesStep(itemModel,
|
SciOrganizationConfig config;
|
||||||
parent),
|
config = SciProject.getConfig();
|
||||||
"cms.contenttypes.ui.orgaunit.contact");
|
|
||||||
addStep(new GenericOrganizationalUnitPersonPropertiesStep(itemModel,
|
|
||||||
parent),
|
|
||||||
"cms.contenttypes.ui.orgaunit.persons");
|
|
||||||
|
|
||||||
super.addSteps(itemModel, parent);
|
if (!config.getProjectAddContactHide()) {
|
||||||
|
addStep(new GenericOrganizationalUnitContactPropertiesStep(itemModel,
|
||||||
|
parent),
|
||||||
|
"cms.contenttypes.ui.orgaunit.contact");
|
||||||
|
}
|
||||||
|
|
||||||
addStep(new SciProjectSuperProjectStep(itemModel,
|
if (!config.getProjectAddPersonHide()) {
|
||||||
parent),
|
addStep(new GenericOrganizationalUnitPersonPropertiesStep(itemModel,
|
||||||
"sciorganization.ui.project.superproject");
|
parent),
|
||||||
addStep(new SciProjectSubprojectsStep(itemModel,
|
"cms.contenttypes.ui.orgaunit.persons");
|
||||||
parent),
|
}
|
||||||
"sciorganization.ui.project.subprojects");
|
|
||||||
|
|
||||||
addStep(new SciProjectOrganizationsStep(itemModel, parent),
|
//super.addSteps(itemModel, parent);
|
||||||
"sciorganization.ui.project.organizations");
|
|
||||||
|
|
||||||
addStep(new SciProjectDepartmentsStep(itemModel, parent),
|
if (!config.getProjectSetSuperProjectHide()) {
|
||||||
"sciorganization.ui.project.departments");
|
addStep(new SciProjectSuperProjectStep(itemModel,
|
||||||
|
parent),
|
||||||
|
"sciorganization.ui.project.superproject");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getProjectAddSubProjectHide()) {
|
||||||
|
addStep(new SciProjectSubprojectsStep(itemModel,
|
||||||
|
parent),
|
||||||
|
"sciorganization.ui.project.subprojects");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getProjectAddOrganizationHide()) {
|
||||||
|
addStep(new SciProjectOrganizationsStep(itemModel, parent),
|
||||||
|
"sciorganization.ui.project.organizations");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!config.getProjectAddDepartmentHide()) {
|
||||||
|
addStep(new SciProjectDepartmentsStep(itemModel, parent),
|
||||||
|
"sciorganization.ui.project.departments");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ import com.arsdigita.cms.ui.authoring.BasicItemForm;
|
||||||
*
|
*
|
||||||
* @author Jens Pelzetter
|
* @author Jens Pelzetter
|
||||||
*/
|
*/
|
||||||
public class SciProjectSuperProjectAttachForm
|
public class SciProjectSuperProjectSetForm
|
||||||
extends BasicItemForm
|
extends BasicItemForm
|
||||||
implements FormProcessListener,
|
implements FormProcessListener,
|
||||||
FormInitListener {
|
FormInitListener {
|
||||||
|
|
@ -25,14 +25,14 @@ public class SciProjectSuperProjectAttachForm
|
||||||
private ItemSearchWidget m_itemSearch;
|
private ItemSearchWidget m_itemSearch;
|
||||||
private final String ITEM_SEARCH = "superproject";
|
private final String ITEM_SEARCH = "superproject";
|
||||||
|
|
||||||
public SciProjectSuperProjectAttachForm(ItemSelectionModel itemModel) {
|
public SciProjectSuperProjectSetForm(ItemSelectionModel itemModel) {
|
||||||
super("SuperProjectAttachForm", itemModel);
|
super("SuperProjectSetForm", itemModel);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void addWidgets() {
|
protected void addWidgets() {
|
||||||
add(new Label((String) SciOrganizationGlobalizationUtil.globalize(
|
add(new Label(SciOrganizationGlobalizationUtil.globalize(
|
||||||
"sciorganization.ui.project.select_superproject").localize()));
|
"sciorganization.ui.project.select_superproject")));
|
||||||
m_itemSearch = new ItemSearchWidget(
|
m_itemSearch = new ItemSearchWidget(
|
||||||
ITEM_SEARCH,
|
ITEM_SEARCH,
|
||||||
ContentType.findByAssociatedObjectType(
|
ContentType.findByAssociatedObjectType(
|
||||||
|
|
@ -54,8 +54,8 @@ public class SciProjectSuperProjectAttachForm
|
||||||
SciProject project = (SciProject) getItemSelectionModel().
|
SciProject project = (SciProject) getItemSelectionModel().
|
||||||
getSelectedObject(state);
|
getSelectedObject(state);
|
||||||
|
|
||||||
if (!(this.getSaveCancelSection().getCancelButton().
|
if (this.getSaveCancelSection().getSaveButton().
|
||||||
isSelected(state))) {
|
isSelected(state)) {
|
||||||
project.setSuperProject((SciProject) data.get(ITEM_SEARCH));
|
project.setSuperProject((SciProject) data.get(ITEM_SEARCH));
|
||||||
|
|
||||||
init(fse);
|
init(fse);
|
||||||
|
|
@ -18,7 +18,6 @@ import com.arsdigita.cms.contenttypes.SciProject;
|
||||||
import com.arsdigita.cms.dispatcher.Utilities;
|
import com.arsdigita.cms.dispatcher.Utilities;
|
||||||
|
|
||||||
import com.arsdigita.util.LockableImpl;
|
import com.arsdigita.util.LockableImpl;
|
||||||
import java.math.BigDecimal;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -187,8 +186,8 @@ public class SciProjectSuperProjectSheet
|
||||||
public void cellSelected(TableActionEvent event) {
|
public void cellSelected(TableActionEvent event) {
|
||||||
PageState state = event.getPageState();
|
PageState state = event.getPageState();
|
||||||
|
|
||||||
SciProject superProject = new SciProject(
|
/*SciProject superProject = new SciProject(
|
||||||
new BigDecimal(event.getRowKey().toString()));
|
new BigDecimal(event.getRowKey().toString()));*/
|
||||||
|
|
||||||
SciProject project = (SciProject) m_itemModel.getSelectedObject(state);
|
SciProject project = (SciProject) m_itemModel.getSelectedObject(state);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ import com.arsdigita.cms.ui.workflow.WorkflowLockedComponentAccess;
|
||||||
*/
|
*/
|
||||||
public class SciProjectSuperProjectStep extends SimpleEditStep {
|
public class SciProjectSuperProjectStep extends SimpleEditStep {
|
||||||
|
|
||||||
private String ATTACH_SUPER_PROJECT_STEP = "attachSuperProject";
|
private String SET_SUPER_PROJECT_STEP = "setSuperProject";
|
||||||
|
|
||||||
public SciProjectSuperProjectStep(ItemSelectionModel itemModel,
|
public SciProjectSuperProjectStep(ItemSelectionModel itemModel,
|
||||||
AuthoringKitWizard parent) {
|
AuthoringKitWizard parent) {
|
||||||
|
|
@ -24,14 +24,14 @@ public class SciProjectSuperProjectStep extends SimpleEditStep {
|
||||||
String prefix) {
|
String prefix) {
|
||||||
super(itemModel, parent, prefix);
|
super(itemModel, parent, prefix);
|
||||||
|
|
||||||
BasicItemForm attachSuperProjectForm =
|
BasicItemForm setSuperProjectForm =
|
||||||
new SciProjectSuperProjectAttachForm(itemModel);
|
new SciProjectSuperProjectSetForm(itemModel);
|
||||||
add(ATTACH_SUPER_PROJECT_STEP,
|
add(SET_SUPER_PROJECT_STEP,
|
||||||
(String) SciOrganizationGlobalizationUtil.globalize(
|
(String) SciOrganizationGlobalizationUtil.globalize(
|
||||||
"sciorganization.ui.project.attachSuperProject").localize(),
|
"sciorganization.ui.project.setSuperProject").localize(),
|
||||||
new WorkflowLockedComponentAccess(attachSuperProjectForm,
|
new WorkflowLockedComponentAccess(setSuperProjectForm,
|
||||||
itemModel),
|
itemModel),
|
||||||
attachSuperProjectForm.getSaveCancelSection().
|
setSuperProjectForm.getSaveCancelSection().
|
||||||
getCancelButton());
|
getCancelButton());
|
||||||
|
|
||||||
SciProjectSuperProjectSheet superProjectSheet =
|
SciProjectSuperProjectSheet superProjectSheet =
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue