Review page titles due to menu revamp
FEA: ItEr76S30PermissionsEnhancements
This commit is contained in:
parent
a77e7c6ce1
commit
403d1fed64
38 changed files with 97 additions and 98 deletions
|
|
@ -47,13 +47,13 @@ import org.libreplan.business.workreports.entities.WorkReportType;
|
|||
*/
|
||||
public enum EntityNameEnum {
|
||||
|
||||
ORDER("Order", false), CRITERION("Criterion", true), LABEL("Label", true), MACHINE(
|
||||
"Machine", true), WORKER("Worker", true), UNIT_TYPE("Unit type",
|
||||
ORDER("Project", false), CRITERION("Criterion", true), LABEL("Label", true), MACHINE(
|
||||
"Machine", true), WORKER("Worker", true), UNIT_TYPE(
|
||||
"Material unit",
|
||||
true), CALENDAR("Calendar", true), WORK_HOURS_TYPE(
|
||||
"Type of work hours", true), MATERIAL_CATEGORY("Material category",
|
||||
true), WORK_REPORT("Work report", true), WORKREPORTTYPE(
|
||||
"Work report type", false), CALENDAR_EXCEPTION_TYPE(
|
||||
"Calendar exception type", true), COST_CATEGORY("Cost category",
|
||||
"Hours type", true), MATERIAL_CATEGORY("Material category", true), WORK_REPORT(
|
||||
"Timesheet", true), WORKREPORTTYPE("Timesheet template", false), CALENDAR_EXCEPTION_TYPE(
|
||||
"Calendar exception day", true), COST_CATEGORY("Cost category",
|
||||
true), RESOURCE_CALENDAR("Resource calendar", true), CRITERION_SATISFACTION(
|
||||
"Criterion satisfaction", true), RESOURCE_COST_CATEGORY_ASSIGNMENT(
|
||||
"Resource cost category assignment", true), EXPENSE_SHEET("Expense sheet", true);
|
||||
|
|
|
|||
|
|
@ -158,7 +158,7 @@ public class TypeOfWorkHoursDAO extends IntegrationEntityDAO<TypeOfWorkHours>
|
|||
if (!workReportLines.isEmpty()) {
|
||||
throw ValidationException
|
||||
.invalidValue(
|
||||
"Cannot delete type of work hours. It is being used at this moment in some work report line.",
|
||||
"Cannot delete type of work hours. It is being used at this moment in some timesheet line.",
|
||||
type);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ import static org.libreplan.business.users.entities.UserRole.ROLE_VIRTUAL_WORKER
|
|||
import static org.libreplan.business.users.entities.UserRole.ROLE_WORKERS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_WORK_AND_PROGRESS_PER_PROJECT_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_WORK_AND_PROGRESS_PER_TASK_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_WORK_REPORT_LINES_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_TIMESHEET_LINES_LIST_REPORT;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
|
|
@ -97,7 +97,7 @@ public enum PredefinedProfiles {
|
|||
TIME_TRACKING_AND_EXPENSES_RESPONSIBLE(
|
||||
"Time Tracking & Expenses Responsible", ROLE_TIMESHEETS,
|
||||
ROLE_TIMESHEETS_TEMPLATES, ROLE_EXPENSES, ROLE_HOURS_TYPES,
|
||||
ROLE_WORK_REPORT_LINES_REPORT,
|
||||
ROLE_TIMESHEET_LINES_LIST_REPORT,
|
||||
ROLE_HOURS_WORKED_PER_RESOURCE_REPORT,
|
||||
ROLE_TOTAL_WORKED_HOURS_BY_RESOURCE_IN_A_MONTH_REPORT),
|
||||
|
||||
|
|
@ -105,7 +105,7 @@ public enum PredefinedProfiles {
|
|||
ROLE_SEND_TO_SUBCONTRACTORS, ROLE_RECEIVED_FROM_SUBCONTRACTORS,
|
||||
ROLE_SEND_TO_CUSTOMERS, ROLE_RECEIVED_FROM_CUSTOMERS),
|
||||
|
||||
REPORTS_RESPONSIBLE("Reports Responsible", ROLE_WORK_REPORT_LINES_REPORT,
|
||||
REPORTS_RESPONSIBLE("Reports Responsible", ROLE_TIMESHEET_LINES_LIST_REPORT,
|
||||
ROLE_HOURS_WORKED_PER_RESOURCE_REPORT,
|
||||
ROLE_TOTAL_WORKED_HOURS_BY_RESOURCE_IN_A_MONTH_REPORT,
|
||||
ROLE_WORK_AND_PROGRESS_PER_PROJECT_REPORT,
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ public enum UserRole {
|
|||
ROLE_RECEIVED_FROM_SUBCONTRACTORS(_("Received From Subcontractors")),
|
||||
ROLE_SEND_TO_CUSTOMERS(_("Send To Customers")),
|
||||
ROLE_RECEIVED_FROM_CUSTOMERS(_("Received From Customers")),
|
||||
ROLE_WORK_REPORT_LINES_REPORT(_("Work Report Lines Report")),
|
||||
ROLE_TIMESHEET_LINES_LIST_REPORT(_("Timesheet Lines List Report")),
|
||||
ROLE_HOURS_WORKED_PER_RESOURCE_REPORT(_("Hours Worked Per Resource Report")),
|
||||
ROLE_TOTAL_WORKED_HOURS_BY_RESOURCE_IN_A_MONTH_REPORT(_("Total Worked Hours By Resource In A Month Report")),
|
||||
ROLE_WORK_AND_PROGRESS_PER_PROJECT_REPORT(_("Work And Progress Per Project Report")),
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ public class WorkReport extends IntegrationEntity implements
|
|||
}
|
||||
}
|
||||
|
||||
@NotNull(message = "work report type not specified")
|
||||
@NotNull(message = "timesheet template not specified")
|
||||
public WorkReportType getWorkReportType() {
|
||||
return workReportType;
|
||||
}
|
||||
|
|
@ -259,7 +259,7 @@ public class WorkReport extends IntegrationEntity implements
|
|||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
@AssertTrue(message = "label type:the work report have not assigned this label type")
|
||||
@AssertTrue(message = "label type:the timesheet have not assigned this label type")
|
||||
public boolean checkConstraintAssignedLabelTypes() {
|
||||
if (this.workReportType == null) {
|
||||
return true;
|
||||
|
|
@ -281,7 +281,7 @@ public class WorkReport extends IntegrationEntity implements
|
|||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
@AssertTrue(message = "description value:the work report have not assigned the description field")
|
||||
@AssertTrue(message = "description value:the timesheet have not assigned the description field")
|
||||
public boolean checkConstraintAssignedDescriptionValues() {
|
||||
if (this.workReportType == null) {
|
||||
return true;
|
||||
|
|
@ -304,7 +304,7 @@ public class WorkReport extends IntegrationEntity implements
|
|||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
@AssertTrue(message = "There are repeated description values in the work report ")
|
||||
@AssertTrue(message = "There are repeated description values in the timesheet ")
|
||||
public boolean checkConstraintAssignedRepeatedDescriptionValues() {
|
||||
|
||||
Set<String> textFields = new HashSet<String>();
|
||||
|
|
@ -359,7 +359,7 @@ public class WorkReport extends IntegrationEntity implements
|
|||
assignItsDescriptionValues(workReportType);
|
||||
assignItsLabels(workReportType);
|
||||
|
||||
// it updates the fields and labels of its work report lines
|
||||
// it updates the fields and labels of its timesheet lines
|
||||
for (WorkReportLine line : getWorkReportLines()) {
|
||||
line.updateItsFieldsAndLabels();
|
||||
}
|
||||
|
|
@ -432,7 +432,7 @@ public class WorkReport extends IntegrationEntity implements
|
|||
|
||||
}
|
||||
|
||||
@AssertTrue(message = "The work report line codes must be unique.")
|
||||
@AssertTrue(message = "The timesheet line codes must be unique.")
|
||||
public boolean checkConstraintNonRepeatedWorkReportLinesCodes() {
|
||||
return getFirstRepeatedCode(this.workReportLines) == null;
|
||||
}
|
||||
|
|
@ -470,7 +470,7 @@ public class WorkReport extends IntegrationEntity implements
|
|||
return result;
|
||||
}
|
||||
|
||||
@AssertTrue(message = "only one work report line per day and task is allowed in monthly timesheets")
|
||||
@AssertTrue(message = "only one timesheet line per day and task is allowed in monthly timesheets")
|
||||
public boolean checkConstraintOnlyOneWorkReportLinePerDayAndOrderElementInMonthlyTimesheet() {
|
||||
if (!getWorkReportType().isMonthlyTimesheetsType()) {
|
||||
return true;
|
||||
|
|
@ -492,7 +492,7 @@ public class WorkReport extends IntegrationEntity implements
|
|||
return true;
|
||||
}
|
||||
|
||||
@AssertTrue(message = "all work report lines have to be in the same month in monthly timesheets")
|
||||
@AssertTrue(message = "all timesheet lines have to be in the same month in monthly timesheets")
|
||||
public boolean checkConstraintAllWorkReportLinesInTheSameMonthInMonthlyTimesheet() {
|
||||
if (!getWorkReportType().isMonthlyTimesheetsType()) {
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -164,7 +164,7 @@ public class WorkReportType extends IntegrationEntity implements IHumanIdentifia
|
|||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
@AssertTrue(message = "work report type name is already being used")
|
||||
@AssertTrue(message = "timeshet template name is already being used")
|
||||
public boolean checkConstraintUniqueWorkReportTypeName() {
|
||||
IWorkReportTypeDAO workReportTypeDAO = Registry.getWorkReportTypeDAO();
|
||||
if (isNewObject()) {
|
||||
|
|
@ -195,7 +195,7 @@ public class WorkReportType extends IntegrationEntity implements IHumanIdentifia
|
|||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
@AssertTrue(message = "the assigned label type can not repeat in the work report type.")
|
||||
@AssertTrue(message = "the assigned label type can not repeat in the timeshet template.")
|
||||
public boolean checkConstraintNotExistRepeatedLabelTypes() {
|
||||
for (WorkReportLabelTypeAssigment assignedLabelType : this.workReportLabelTypeAssigments) {
|
||||
if (existRepeatedLabelType(assignedLabelType)) {
|
||||
|
|
|
|||
|
|
@ -440,8 +440,8 @@ public class CustomMenuController extends Div implements IMenuItemsRegister {
|
|||
|
||||
List<CustomMenuItem> reportsItems = new ArrayList<CustomMenuItem>();
|
||||
if (SecurityUtils
|
||||
.isSuperuserOrUserInRoles(UserRole.ROLE_WORK_REPORT_LINES_REPORT)) {
|
||||
reportsItems.add(subItem(_("Work Report Lines"),
|
||||
.isSuperuserOrUserInRoles(UserRole.ROLE_TIMESHEET_LINES_LIST_REPORT)) {
|
||||
reportsItems.add(subItem(_("Timesheet Lines List"),
|
||||
"/workreports/workReportQuery.zul", "09-partes.html#id4"));
|
||||
}
|
||||
if (SecurityUtils
|
||||
|
|
|
|||
|
|
@ -109,12 +109,12 @@ public class TypeOfWorkHoursCRUDController extends BaseCRUDController<TypeOfWork
|
|||
|
||||
@Override
|
||||
protected String getEntityType() {
|
||||
return _("Type of hours");
|
||||
return _("Hours Type");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getPluralEntityType() {
|
||||
return _("Types of hours");
|
||||
return _("Hours Types");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -197,7 +197,7 @@ public class CalendarExceptionTypeCRUDController extends
|
|||
messagesForUser
|
||||
.showMessage(
|
||||
Level.ERROR,
|
||||
_("Cannot remove the predefined Exception Day Type \"{0}\"",
|
||||
_("Cannot remove the predefined calendar exception day \"{0}\"",
|
||||
calendarExceptionType.getHumanId()));
|
||||
return false;
|
||||
}
|
||||
|
|
@ -244,12 +244,12 @@ public class CalendarExceptionTypeCRUDController extends
|
|||
|
||||
@Override
|
||||
protected String getEntityType() {
|
||||
return _("Exception Day Type");
|
||||
return _("Calendar Exception Day");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getPluralEntityType() {
|
||||
return _("Exception Day Types");
|
||||
return _("Calendar Exception Days");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -587,12 +587,12 @@ public class ExpenseSheetCRUDController extends
|
|||
|
||||
@Override
|
||||
protected String getEntityType() {
|
||||
return _("Expense sheet");
|
||||
return _("Expense Sheet");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getPluralEntityType() {
|
||||
return _("Expense sheets");
|
||||
return _("Expense Sheets");
|
||||
}
|
||||
|
||||
public String getCurrencySymbol() {
|
||||
|
|
|
|||
|
|
@ -181,12 +181,12 @@ public class UnitTypeController extends BaseCRUDController<UnitType> {
|
|||
|
||||
@Override
|
||||
protected String getEntityType() {
|
||||
return _("Unit Measure");
|
||||
return _("Material Unit");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getPluralEntityType() {
|
||||
return _("Unit Measures");
|
||||
return _("Material Units");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -918,7 +918,7 @@ public class OrderCRUDController extends GenericForwardComposer {
|
|||
.showMessage(
|
||||
Level.ERROR,
|
||||
_(
|
||||
"You can not remove the project \"{0}\" because of any of its tasks are already in use in some work reports and the project just exists in the current scenario",
|
||||
"You can not remove the project \"{0}\" because of any of its tasks are already in use in some timesheets and the project just exists in the current scenario",
|
||||
order.getName()));
|
||||
} else {
|
||||
if (!StringUtils.isBlank(order.getExternalCode())) {
|
||||
|
|
|
|||
|
|
@ -713,7 +713,7 @@ public class OrderElementTreeController extends TreeController<OrderElement> {
|
|||
messagesForUser
|
||||
.showMessage(
|
||||
Level.ERROR,
|
||||
_("You can not remove the task \"{0}\" because of this or any of its children are already in use in some work reports",
|
||||
_("You can not remove the task \"{0}\" because of this or any of its children are already in use in some timesheets",
|
||||
element.getName()));
|
||||
} else {
|
||||
super.remove(element);
|
||||
|
|
|
|||
|
|
@ -251,7 +251,7 @@ public class WorkReportCRUDController extends GenericForwardComposer implements
|
|||
if (Messagebox.OK == status) {
|
||||
workReportModel.remove(workReport);
|
||||
messagesForUser.showMessage(Level.INFO,
|
||||
_("Work report removed successfully"));
|
||||
_("Timesheet removed successfully"));
|
||||
loadComponentslist(listWindow);
|
||||
Util.reloadBindings(listWindow);
|
||||
}
|
||||
|
|
@ -293,8 +293,7 @@ public class WorkReportCRUDController extends GenericForwardComposer implements
|
|||
workReportModel.generateWorkReportLinesIfIsNecessary();
|
||||
try {
|
||||
workReportModel.confirmSave();
|
||||
messagesForUser.showMessage(Level.INFO,
|
||||
_("Work report saved"));
|
||||
messagesForUser.showMessage(Level.INFO, _("Timesheet saved"));
|
||||
return true;
|
||||
} catch (ValidationException e) {
|
||||
showInvalidValues(e);
|
||||
|
|
@ -660,7 +659,7 @@ public class WorkReportCRUDController extends GenericForwardComposer implements
|
|||
cameBackList = false;
|
||||
workReportModel.initCreate(workReportType);
|
||||
prepareWorkReportList();
|
||||
createWindow.setTitle(_("Create Work Report"));
|
||||
createWindow.setTitle(_("Create Timesheet"));
|
||||
getVisibility().showOnly(createWindow);
|
||||
loadComponents(createWindow);
|
||||
Util.reloadBindings(createWindow);
|
||||
|
|
@ -679,7 +678,7 @@ public class WorkReportCRUDController extends GenericForwardComposer implements
|
|||
goToEditMonthlyTimeSheet(workReport);
|
||||
} else {
|
||||
workReportModel.initEdit(workReport);
|
||||
createWindow.setTitle(_("Edit Work Report"));
|
||||
createWindow.setTitle(_("Edit Timesheet"));
|
||||
loadComponents(createWindow);
|
||||
prepareWorkReportList();
|
||||
getVisibility().showOnly(createWindow);
|
||||
|
|
@ -1533,7 +1532,7 @@ public class WorkReportCRUDController extends GenericForwardComposer implements
|
|||
|
||||
private final String SHOW_ALL = _("Show all");
|
||||
|
||||
private final String FILTER = _("Filter work reports");
|
||||
private final String FILTER = _("Filter timesheets");
|
||||
|
||||
public List<WorkReportType> getFilterWorkReportTypes() {
|
||||
List<WorkReportType> result = workReportModel.getWorkReportTypes();
|
||||
|
|
@ -1863,13 +1862,13 @@ public class WorkReportCRUDController extends GenericForwardComposer implements
|
|||
Listitem selectedItem = listTypeToAssign.getSelectedItem();
|
||||
if (selectedItem == null) {
|
||||
throw new WrongValueException(listTypeToAssign,
|
||||
_("please, select a work report type"));
|
||||
_("please, select a timesheet template type"));
|
||||
}
|
||||
|
||||
WorkReportType type = (WorkReportType) selectedItem.getValue();
|
||||
if (type == null) {
|
||||
throw new WrongValueException(listTypeToAssign,
|
||||
_("please, select a work report type"));
|
||||
_("please, select a timesheet template type"));
|
||||
}
|
||||
|
||||
goToCreateForm(type);
|
||||
|
|
|
|||
|
|
@ -654,7 +654,7 @@ public class WorkReportTypeCRUDController extends BaseCRUDController<WorkReportT
|
|||
workReportLabelTypeAssigment.setLabelType(null);
|
||||
throw new WrongValueException(
|
||||
comboLabelTypes,
|
||||
_("This label type already is assigned to the work report type."));
|
||||
_("This label type already is assigned to the timesheet template."));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -942,12 +942,12 @@ public class WorkReportTypeCRUDController extends BaseCRUDController<WorkReportT
|
|||
|
||||
@Override
|
||||
protected String getEntityType() {
|
||||
return _("Work Report Type");
|
||||
return _("Timesheets Template");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getPluralEntityType() {
|
||||
return _("Work Report Types");
|
||||
return _("Timesheets Templates");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -972,7 +972,7 @@ public class WorkReportTypeCRUDController extends BaseCRUDController<WorkReportT
|
|||
if (thereAreWorkReportsFor(workReportType)) {
|
||||
try {
|
||||
Messagebox
|
||||
.show(_("Cannot delete work report type. There are some work reports bound to it."),
|
||||
.show(_("Cannot delete timesheet template. There are some timesheets bound to it."),
|
||||
_("Warning"), Messagebox.OK, Messagebox.EXCLAMATION);
|
||||
} catch (InterruptedException e) {
|
||||
LOG.error(
|
||||
|
|
|
|||
|
|
@ -153,7 +153,7 @@ public class WorkReportTypeModel extends IntegrationEntityModel implements
|
|||
public void initEdit(WorkReportType workReportType) {
|
||||
if (workReportType.isMonthlyTimesheetsType()) {
|
||||
throw new IllegalArgumentException(
|
||||
"Monthly timesheets work report type cannot be edited");
|
||||
"Monthly timesheets timesheet template cannot be edited");
|
||||
}
|
||||
|
||||
setListing(false);
|
||||
|
|
@ -222,7 +222,7 @@ public class WorkReportTypeModel extends IntegrationEntityModel implements
|
|||
public void confirmRemove(WorkReportType workReportType) {
|
||||
if (workReportType.isMonthlyTimesheetsType()) {
|
||||
throw new IllegalArgumentException(
|
||||
"Monthly timesheets work report type cannot be removed");
|
||||
"Monthly timesheets timesheet template cannot be removed");
|
||||
}
|
||||
|
||||
try {
|
||||
|
|
|
|||
|
|
@ -96,7 +96,7 @@
|
|||
<intercept-url pattern="/subcontract/customerCommunications.zul"
|
||||
access="ROLE_SUPERUSER,ROLE_RECEIVED_FROM_CUSTOMERS" />
|
||||
<intercept-url pattern="/workreports/workReportQuery.zul"
|
||||
access="ROLE_SUPERUSER,ROLE_WORK_REPORT_LINES_REPORT" />
|
||||
access="ROLE_SUPERUSER,ROLE_TIMESHEET_LINES_LIST_REPORT" />
|
||||
<intercept-url pattern="/reports/hoursWorkedPerWorkerReport.zul"
|
||||
access="ROLE_SUPERUSER,ROLE_HOURS_WORKED_PER_RESOURCE_REPORT" />
|
||||
<intercept-url pattern="/reports/hoursWorkedPerWorkerInAMonthReport.zul"
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page title="${i18n:_('LibrePlan: Progress')}"?>
|
||||
<?page title="${i18n:_('LibrePlan: Progress Types')}"?>
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?page id="List"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page title="${i18n:_('LibrePlan: Configuration')}"?>
|
||||
<?page title="${i18n:_('LibrePlan: Main Settings')}"?>
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?>
|
||||
<?page id="List"?>
|
||||
|
|
@ -33,7 +33,7 @@
|
|||
|
||||
<window id="configurationWindow" self="@{define(content)}"
|
||||
apply="org.libreplan.web.common.ConfigurationController"
|
||||
title="${i18n:_('Configuration')}">
|
||||
title="${i18n:_('Main Settings')}">
|
||||
|
||||
<vbox id="messagesContainer" />
|
||||
|
||||
|
|
@ -131,17 +131,17 @@
|
|||
<rows>
|
||||
<row>
|
||||
<checkbox
|
||||
label="${i18n:_('Criterion')}"
|
||||
label="${i18n:_('Criteria')}"
|
||||
checked="@{configurationController.generateCodeForCriterion}"
|
||||
onCheck="configurationController.reloadGeneralConfiguration();" />
|
||||
<checkbox
|
||||
label="${i18n:_('Label')}"
|
||||
label="${i18n:_('Labels')}"
|
||||
checked="@{configurationController.generateCodeForLabel}"
|
||||
onCheck="configurationController.reloadGeneralConfiguration();" />
|
||||
</row>
|
||||
<row>
|
||||
<checkbox
|
||||
label="${i18n:_('Work report')}"
|
||||
label="${i18n:_('Timesheets')}"
|
||||
checked="@{configurationController.generateCodeForWorkReport}"
|
||||
onCheck="configurationController.reloadGeneralConfiguration();" />
|
||||
<checkbox
|
||||
|
|
@ -151,7 +151,7 @@
|
|||
</row>
|
||||
<row>
|
||||
<checkbox
|
||||
label="${i18n:_('Types of work hours')}"
|
||||
label="${i18n:_('Hours Types')}"
|
||||
checked="@{configurationController.generateCodeForTypesOfWorkHours}"
|
||||
onCheck="configurationController.reloadGeneralConfiguration();" />
|
||||
<checkbox
|
||||
|
|
@ -161,7 +161,7 @@
|
|||
</row>
|
||||
<row>
|
||||
<checkbox
|
||||
label="${i18n:_('Unit Measures')}"
|
||||
label="${i18n:_('Material Units')}"
|
||||
checked="@{configurationController.generateCodeForUnitTypes}"
|
||||
onCheck="configurationController.reloadGeneralConfiguration();" />
|
||||
<checkbox
|
||||
|
|
@ -171,11 +171,11 @@
|
|||
</row>
|
||||
<row>
|
||||
<checkbox
|
||||
label="${i18n:_('Work report types')}"
|
||||
label="${i18n:_('Timesheet templates')}"
|
||||
checked="@{configurationController.generateCodeForWorkReportType}"
|
||||
onCheck="configurationController.reloadGeneralConfiguration();" />
|
||||
<checkbox
|
||||
label="${i18n:_('Calendar exception types')}"
|
||||
label="${i18n:_('Calendar exception days')}"
|
||||
checked="@{configurationController.generateCodeForCalendarExceptionType}"
|
||||
onCheck="configurationController.reloadGeneralConfiguration();" />
|
||||
</row>
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page id="exceptionDayTypesList" title="${i18n:_('LibrePlan: Exception Days')}" ?>
|
||||
<?page id="exceptionDayTypesList" title="${i18n:_('LibrePlan: Calendar Exception Days')}" ?>
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
-->
|
||||
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?page title="${i18n:_('LibrePlan: Expense Sheet')}" id="expense_sheet_admin"?>
|
||||
<?page title="${i18n:_('LibrePlan: Expenses')}" id="expense_sheet_admin"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
<div id="messagesContainer" />
|
||||
|
||||
<div visible="@{controller.notCurrentUser}" class="footer-messages-area">
|
||||
<label value="${i18n:_('Warning: Editing from work reports page')}" />
|
||||
<label value="${i18n:_('Warning: Not editing from home page of bound users')}" />
|
||||
</div>
|
||||
|
||||
<div visible="@{controller.currentUser}">
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page title="${i18n:_('LibrePlan: Scheduling')}"?>
|
||||
<?page title="${i18n:_('LibrePlan: Planning')}"?>
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?taglib uri="/WEB-INF/tld/i18n.tld" prefix="i18n"?>
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page title="${i18n:_('LibrePlan: Hours Worked Per Worker In A Month')}" id="reports"?>
|
||||
<?page title="${i18n:_('LibrePlan: Total Worked Hours By Resource In A Month')}" id="reports"?>
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@
|
|||
<hbox>
|
||||
<radiogroup>
|
||||
<label value="${i18n:_('Apply filter to')}:"/>
|
||||
<radio id="filterByWorkReports" label="${i18n:_('Work reports')}" />
|
||||
<radio id="filterByWorkReports" label="${i18n:_('Timesheets')}" />
|
||||
<radio id="filterByOrderElements" label="${i18n:_('Tasks')}" />
|
||||
<radio id="filterByBoth" label="${i18n:_('Both')}" checked="true" />
|
||||
</radiogroup>
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page id="reports" title="${i18n:_('LibrePlan: Project Costs Per Resource')}" ?>
|
||||
<?page id="reports" title="${i18n:_('LibrePlan: Project Costs')}" ?>
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
|
||||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
<window self="@{define(content)}"
|
||||
apply="org.libreplan.web.reports.OrderCostsPerResourceController"
|
||||
title="${i18n:_('Project Costs Per Resource')}">
|
||||
title="${i18n:_('Project Costs')}">
|
||||
|
||||
<tabbox>
|
||||
<tabs>
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page title="${i18n:_('LibrePlan: Received from customers')}"?>
|
||||
<?page title="${i18n:_('LibrePlan: Received From Customers')}"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
@ -30,7 +30,7 @@
|
|||
<zk>
|
||||
<window self="@{define(content)}"
|
||||
apply="org.libreplan.web.subcontract.CustomerCommunicationCRUDController"
|
||||
title="${i18n:_('Communications from customers')}">
|
||||
title="${i18n:_('Communications From Customers')}">
|
||||
|
||||
<vbox id="messagesContainer" />
|
||||
<div align="right">
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page title="${i18n:_('LibrePlan: Send to customers')}"?>
|
||||
<?page title="${i18n:_('LibrePlan: Send To Customers')}"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
@ -32,7 +32,7 @@
|
|||
<div self="@{define(content)}">
|
||||
|
||||
<window apply="${reportAdvancesController}"
|
||||
title="${i18n:_('Communications to customers')}">
|
||||
title="${i18n:_('Communications To Customers')}">
|
||||
|
||||
<vbox id="messagesContainer" />
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page title="${i18n:_('LibrePlan: Send to subcontractors')}"?>
|
||||
<?page title="${i18n:_('LibrePlan: Send To Subcontractors')}"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
@ -32,7 +32,7 @@
|
|||
<div self="@{define(content)}">
|
||||
|
||||
<window apply="${subcontractedTasksController}"
|
||||
title="${i18n:_('Communications to subcontractors')}">
|
||||
title="${i18n:_('Communications To Subcontractors')}">
|
||||
|
||||
<vbox id="messagesContainer" />
|
||||
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page title="${i18n:_('LibrePlan: Received from subcontractors')}"?>
|
||||
<?page title="${i18n:_('LibrePlan: Received From Subcontractors')}"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
@ -30,7 +30,7 @@
|
|||
<zk>
|
||||
<window self="@{define(content)}"
|
||||
apply="org.libreplan.web.subcontract.SubcontractorCommunicationCRUDController"
|
||||
title="${i18n:_('Communications from subcontractors')}">
|
||||
title="${i18n:_('Communications From Subcontractors')}">
|
||||
|
||||
<vbox id="messagesContainer" />
|
||||
<div align="right">
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<?page title="${i18n:_('LibrePlan: Scheduling')}"?>
|
||||
<?page title="${i18n:_('LibrePlan: Templates')}"?>
|
||||
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
-->
|
||||
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?page title="${i18n:_('LibrePlan: Work Hours')}" id="work_report_admin"?>
|
||||
<?page title="${i18n:_('LibrePlan: Hours Types')}" id="work_report_admin"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<?page title="${i18n:_('LibrePlan: Units')}" id="unitTypes"?>
|
||||
<?page title="${i18n:_('LibrePlan: Material Units')}" id="unitTypes"?>
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
-->
|
||||
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?page title="${i18n:_('LibrePlan: Accounts')}" id="work_report_admin"?>
|
||||
<?page title="${i18n:_('LibrePlan: User Accounts')}" id="work_report_admin"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
|
||||
<window id="${arg.top_id}" title="${i18n:_('Work Report Models')}">
|
||||
<window id="${arg.top_id}">
|
||||
<grid id="listing" mold="paging" pageSize="10"
|
||||
model="@{controller.workReportTypes}" sclass="clickable-rows"
|
||||
onInitRender ="controller.sortWorkReportTypes();">
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
onClick="controller.confirmDelete(self.parent.parent.value);">
|
||||
</button>
|
||||
|
||||
<button label="${i18n:_('New work report')}"
|
||||
<button label="${i18n:_('New timesheet')}"
|
||||
onClick="controller.goToEditNewWorkReportForm(self.parent.parent.value);">
|
||||
</button>
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
-->
|
||||
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?page title="${i18n:_('LibrePlan: Work Reports')}" id="work_report_admin"?>
|
||||
<?page title="${i18n:_('LibrePlan: Timesheets')}" id="work_report_admin"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
@ -35,12 +35,12 @@
|
|||
apply="org.libreplan.web.workreports.WorkReportCRUDController">
|
||||
<vbox id="messagesContainer"></vbox>
|
||||
|
||||
<window id="listWindow" title="${i18n:_('Work Reports List')}">
|
||||
<window id="listWindow" title="${i18n:_('Timesheets List')}">
|
||||
<vbox align="right">
|
||||
<hbox id="hboxFilter" align="center">
|
||||
<!-- Filter by type, start date and finish date -->
|
||||
<label value="${i18n:_('Filter work report by')}:"/>
|
||||
<label value="${i18n:_('Type')}"/>
|
||||
<label value="${i18n:_('Filter timesheet by')}:"/>
|
||||
<label value="${i18n:_('Template')}"/>
|
||||
<listbox id="listType" mold="select" rows="1"
|
||||
model="@{controller.filterWorkReportTypes}" width="150px">
|
||||
<listitem self="@{each='workReportType'}" value="@{workReportType}">
|
||||
|
|
@ -62,7 +62,7 @@
|
|||
<columns sizable="true">
|
||||
<column id="columnDateStart" label="${i18n:_('Date Start')}" sort="auto(dateStart, dateFinish)" sortDirection="ascending"/>
|
||||
<column id="columnDateFinish" label="${i18n:_('Date Finish')}" sort="auto(dateFinish, dateStart)" sortDirection="ascending"/>
|
||||
<column label="${i18n:_('Type')}" sort="auto(type)"/>
|
||||
<column label="${i18n:_('Template')}" sort="auto(type)"/>
|
||||
<column label="${i18n:_('Total work')}" sort="auto(hours)" />
|
||||
<column label="${i18n:_('Code')}" />
|
||||
<column label="${i18n:_('Actions')}" />
|
||||
|
|
@ -95,7 +95,7 @@
|
|||
<div align="left">
|
||||
<hbox align="center">
|
||||
<!-- Create new Work Report -->
|
||||
<label value="${i18n:_('Select type')}:"/>
|
||||
<label value="${i18n:_('Select template')}:"/>
|
||||
<listbox id="listTypeToAssign" mold="select" rows="1"
|
||||
model="@{controller.workReportTypes}" width="150px"
|
||||
selectedItem="@{controller.firstType}">
|
||||
|
|
@ -103,7 +103,7 @@
|
|||
<listcell label="@{workReportType.name}" />
|
||||
</listitem>
|
||||
</listbox>
|
||||
<button label="${i18n:_('New work report')}" style="margin-top: -4px"
|
||||
<button label="${i18n:_('New timesheet')}" style="margin-top: -4px"
|
||||
onClick="controller.onCreateNewWorkReport()"/>
|
||||
</hbox>
|
||||
</div>
|
||||
|
|
@ -214,7 +214,7 @@
|
|||
|
||||
<!-- Work report lines -->
|
||||
<groupbox closable="false">
|
||||
<caption label="${i18n:_('Work report lines')}" />
|
||||
<caption label="${i18n:_('Timesheet lines')}" />
|
||||
<hbox>
|
||||
<button label="${i18n:_('Add new row')}"
|
||||
onClick="controller.addWorkReportLine()" />
|
||||
|
|
@ -233,7 +233,7 @@
|
|||
<button onClick="controller.saveAndContinue();"
|
||||
label="${i18n:_('Save & Continue')}" sclass="saveandcontinue-button global-action"/>
|
||||
<button onClick="controller.newWorkReportWithSameType();"
|
||||
label="${i18n:_('Save & New work report')}" sclass="saveandcontinue-button global-action"/>
|
||||
label="${i18n:_('Save & New timesheet')}" sclass="saveandcontinue-button global-action"/>
|
||||
<button onClick="controller.cancel();"
|
||||
label="${i18n:_('Cancel')}" sclass="cancel-button global-action"/>
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
-->
|
||||
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?page title="${i18n:_('LibrePlan: Work Reports')}" id="work_report_admin_query"?>
|
||||
<?page title="${i18n:_('LibrePlan: Timesheet Lines List')}" id="work_report_admin_query"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
@ -31,8 +31,8 @@
|
|||
apply="org.libreplan.web.workreports.WorkReportCRUDController">
|
||||
<vbox id="messagesContainer"></vbox>
|
||||
|
||||
<window id="listQueryWindow" title="${i18n:_('Work Report Lines List')}">
|
||||
<panel title="${i18n:_('Filter work report by')}" border="normal"
|
||||
<window id="listQueryWindow" title="${i18n:_('Timesheet Lines List')}">
|
||||
<panel title="${i18n:_('Filter timesheet lines by')}" border="normal"
|
||||
style="overflow:auto">
|
||||
<panelchildren>
|
||||
<separator bar="false" spacing="5px" orient="horizontal"/>
|
||||
|
|
@ -114,7 +114,7 @@
|
|||
sort="auto(effort)" sortDirection="ascending"/>
|
||||
<column id="hourType" label="${i18n:_('Hours type')}" align="center"
|
||||
sort="auto(typeOfWorkHours.name)" sortDirection="ascending"/>
|
||||
<column label="${i18n:_('Work Report')}" align="center"/>
|
||||
<column label="${i18n:_('Timesheet')}" align="center"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row self="@{each='queryWorkReportLine'}" value="@{queryWorkReportLine}">
|
||||
|
|
@ -156,7 +156,7 @@
|
|||
|
||||
</window>
|
||||
|
||||
<window id="createWindow" title="${i18n:_('Edit work report')}">
|
||||
<window id="createWindow" title="${i18n:_('Edit timesheet')}">
|
||||
<tabbox>
|
||||
<tabs>
|
||||
<tab label="${i18n:_('Report data')}"></tab>
|
||||
|
|
@ -211,7 +211,7 @@
|
|||
<separator bar="false" spacing="80px" orient="vertical"/>
|
||||
|
||||
<!-- Work report lines -->
|
||||
<panel title="${i18n:_('Work report lines')}"
|
||||
<panel title="${i18n:_('Timesheet lines')}"
|
||||
border="normal">
|
||||
<panelchildren>
|
||||
<hbox>
|
||||
|
|
@ -233,7 +233,7 @@
|
|||
<button onClick="controller.saveAndContinue();"
|
||||
label="${i18n:_('Save & Continue')}" sclass="saveandcontinue-button global-action"/>
|
||||
<button onClick="controller.newWorkReportWithSameType();"
|
||||
label="${i18n:_('Save & New work report')}" sclass="saveandcontinue-button global-action"/>
|
||||
label="${i18n:_('Save & New timesheet')}" sclass="saveandcontinue-button global-action"/>
|
||||
<button onClick="controller.cancel();"
|
||||
label="${i18n:_('Cancel')}" sclass="cancel-button global-action"/>
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
-->
|
||||
|
||||
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
|
||||
<?page title="${i18n:_('LibrePlan: Work Reports')}" id="List"?>
|
||||
<?page title="${i18n:_('LibrePlan: Timesheets Templates')}" id="List"?>
|
||||
<?init class="org.zkoss.zk.ui.util.Composition" arg0="/common/layout/template.zul"?>
|
||||
<?link rel="shortcut icon" href="/common/img/favicon.ico" type="image/x-icon"?>
|
||||
<?link rel="stylesheet" type="text/css" href="/common/css/libreplan.css"?>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue