Skip to content
Snippets Groups Projects
Commit 38b663b6 authored by S.Listl's avatar S.Listl
Browse files

Employee fixes

parent 98c670eb
No related branches found
No related tags found
No related merge requests found
Showing
with 132 additions and 33 deletions
......@@ -260,9 +260,10 @@
<entityField>
<name>CREATOR</name>
<title>Creator</title>
<consumer>Contacts</consumer>
<consumer>Employees</consumer>
<linkedContext>Person</linkedContext>
<searchable v="false" />
<valueProcess>%aditoprj%/entity/Activity_entity/entityfields/creator/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/Activity_entity/entityfields/creator/displayValueProcess.js</displayValueProcess>
</entityField>
<entityConsumer>
......@@ -377,12 +378,12 @@
<iconId>VAADIN:CART</iconId>
</entityActionField>
<entityConsumer>
<name>Contacts</name>
<name>Employees</name>
<fieldType>DEPENDENCY_OUT</fieldType>
<dependency>
<name>dependency</name>
<entityName>Person_entity</entityName>
<fieldName>#PROVIDER</fieldName>
<entityName>Employee_entity</entityName>
<fieldName>Employees</fieldName>
</dependency>
</entityConsumer>
<entityParameter>
......
import("system.neon");
import("system.vars");
import("system.result");
import("Employee_lib");
if (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW)
result.string(EmployeeUtils.getCurrentContactId());
\ No newline at end of file
......@@ -4,6 +4,7 @@
<title>Employee</title>
<majorModelMode>DISTRIBUTED</majorModelMode>
<onValidation>%aditoprj%/entity/Employee_entity/onValidation.js</onValidation>
<afterOperatingState>%aditoprj%/entity/Employee_entity/afterOperatingState.js</afterOperatingState>
<iconId>VAADIN:GROUP</iconId>
<titleProcess>%aditoprj%/entity/Employee_entity/titleProcess.js</titleProcess>
<recordContainer>jdito</recordContainer>
......@@ -22,14 +23,14 @@
</entityProvider>
<entityField>
<name>UID</name>
<searchable v="false" />
<valueProcess>%aditoprj%/entity/Employee_entity/entityfields/uid/valueProcess.js</valueProcess>
<title>Username</title>
<mandatory v="true" />
<onValidation>%aditoprj%/entity/Employee_entity/entityfields/uid/onValidation.js</onValidation>
</entityField>
<entityField>
<name>TITLE</name>
<title>Login</title>
<mandatory v="true" />
<onValidation>%aditoprj%/entity/Employee_entity/entityfields/title/onValidation.js</onValidation>
<name>TITLE_ORIGINAL</name>
<description>the original username, this is required to update the correct user when the username is changed</description>
<searchable v="false" />
</entityField>
<entityField>
<name>CONTACT_ID</name>
......@@ -65,13 +66,17 @@
<name>PASSWORD</name>
<title>Password</title>
<contentType>PASSWORD</contentType>
<mandatoryProcess>%aditoprj%/entity/Employee_entity/entityfields/password/mandatoryProcess.js</mandatoryProcess>
<searchable v="false" />
<stateProcess>%aditoprj%/entity/Employee_entity/entityfields/password/stateProcess.js</stateProcess>
</entityField>
<entityField>
<name>CONFIRM_PASSWORD</name>
<title>Confirm password</title>
<contentType>PASSWORD</contentType>
<mandatoryProcess>%aditoprj%/entity/Employee_entity/entityfields/confirm_password/mandatoryProcess.js</mandatoryProcess>
<searchable v="false" />
<stateProcess>%aditoprj%/entity/Employee_entity/entityfields/confirm_password/stateProcess.js</stateProcess>
</entityField>
<entityActionField>
<name>setPassword</name>
......@@ -81,12 +86,14 @@
<iconId>VAADIN:PASSWORD</iconId>
</entityActionField>
<entityParameter>
<name>passwordChange_param</name>
<name>PasswordChange_param</name>
<expose v="true" />
<description>PARAMETER</description>
</entityParameter>
<entityParameter>
<name>onlyActives_param</name>
<name>OnlyActives_param</name>
<valueProcess>%aditoprj%/entity/Employee_entity/entityfields/onlyactives_param/valueProcess.js</valueProcess>
<expose v="true" />
<description>PARAMETER</description>
</entityParameter>
<entityConsumer>
......@@ -228,7 +235,26 @@
</entityConsumer>
<entityField>
<name>STORED_SELECTIONS</name>
<searchable v="false" />
</entityField>
<entityProvider>
<name>Employees</name>
<fieldType>DEPENDENCY_IN</fieldType>
<dependencies>
<entityDependency>
<name>0ca415b9-a940-424e-bee8-05c007b20659</name>
<entityName>Activity_entity</entityName>
<fieldName>Employees</fieldName>
<isConsumer v="false" />
</entityDependency>
</dependencies>
<children>
<entityParameter>
<name>OnlyActives_param</name>
<valueProcess>%aditoprj%/entity/Employee_entity/entityfields/employees/children/onlyactives_param/valueProcess.js</valueProcess>
</entityParameter>
</children>
</entityProvider>
</entityFields>
<recordContainers>
<jDitoRecordContainer>
......@@ -240,7 +266,7 @@
<onDelete>%aditoprj%/entity/Employee_entity/recordcontainers/jdito/onDelete.js</onDelete>
<recordFields>
<element>UID.value</element>
<element>TITLE.value</element>
<element>TITLE_ORIGINAL.value</element>
<element>ISACTIVE.value</element>
<element>FIRSTNAME.value</element>
<element>LASTNAME.value</element>
......
import("system.result");
import("system.neon");
import("system.vars");
if (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW)
neon.setFieldValue("$field.UID", "");
\ No newline at end of file
import("system.vars");
import("system.result");
import("system.neon");
var changePassword = vars.exists("$param.PasswordChange_param") && vars.get("$param.PasswordChange_param");
if (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW || changePassword)
result.string(true);
import("system.vars");
import("system.result");
import("system.neon");
var state = neon.COMPONENTSTATE_INVISIBLE;
var changePassword = vars.exists("$param.PasswordChange_param") && vars.get("$param.PasswordChange_param");
if (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW || changePassword)
state = neon.COMPONENTSTATE_AUTO;
result.string(state);
\ No newline at end of file
import("system.result");
import("system.vars");
import("system.tools");
import("system.translate");
var contactId = vars.get("$field.CONTACT_ID");
var isTaken = tools.getUserByAttribute(tools.CONTACTID, [contactId]);
isTaken = isTaken
? isTaken[tools.TITLE] != vars.get("$field.TITLE_ORIGINAL")
: false;
if (contactId && isTaken)
result.string(translate.text("The person is already associated with another employee!"));
\ No newline at end of file
import("system.result");
result.string(true);
\ No newline at end of file
import("system.result");
result.string(false);
\ No newline at end of file
import("system.vars");
import("system.result");
import("system.neon");
var changePassword = vars.exists("$param.PasswordChange_param") && vars.get("$param.PasswordChange_param");
if (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW || changePassword)
result.string(true);
import("system.vars");
import("system.result");
import("system.neon");
var state = neon.COMPONENTSTATE_INVISIBLE;
var changePassword = vars.exists("$param.PasswordChange_param") && vars.get("$param.PasswordChange_param");
if (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW || changePassword)
state = neon.COMPONENTSTATE_AUTO;
result.string(state);
\ No newline at end of file
......@@ -2,6 +2,6 @@ import("system.vars");
import("system.neon");
var params = {
"passwordChange_param" : true
"PasswordChange_param" : true
};
neon.openContext("Employee", "EmployeePassword_view", [vars.get("$field.TITLE")], neon.OPERATINGSTATE_EDIT, params);
\ No newline at end of file
neon.openContext("Employee", "EmployeePassword_view", [vars.get("$field.UID")], neon.OPERATINGSTATE_EDIT, params);
\ No newline at end of file
import("system.translate");
import("system.neon");
import("system.result");
import("system.vars");
import("system.tools");
import("Entity_lib");
var title = ProcessHandlingUtils.getOnValidationValue(vars.get("$field.UID"));
if (!(vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_EDIT && title == vars.get("$field.TITLE_ORIGINAL"))
&& title != "" && tools.existUsers(title))
result.string(translate.text("Username already exists!"));
\ No newline at end of file
import("system.neon");
import("system.vars");
import("system.result");
if ((vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW || vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_EDIT)
&& vars.get("$field.TITLE"))
result.string(vars.get("$field.TITLE"));
\ No newline at end of file
......@@ -2,6 +2,7 @@ import("system.vars");
import("system.result");
import("system.tools");
import("Util_lib");
import("Contact_lib");
var users;
if (vars.exists("$local.idvalues") && vars.get("$local.idvalues"))
......@@ -20,10 +21,11 @@ users = users.map(function (user)
user[tools.PARAMS][tools.EMAIL],
user[tools.DESCRIPTION],
user[tools.PARAMS][tools.CONTACTID],
user[tools.PARAMS][tools.CONTACTID],
ContactUtils.getTitleByContactId(user[tools.PARAMS][tools.CONTACTID]), //not good
user[tools.PARAMS][tools.FRAME_STOREDSEARCHES]
];
});
ArrayUtils.sort2d(users, 0, true, false);
var filter = vars.exists("$local.filter") && vars.get("$local.filter");
......
import("system.vars");
import("system.tools");
tools.deleteUser(vars.get("$field.TITLE"));
\ No newline at end of file
tools.deleteUser(vars.get("$field.UID"));
\ No newline at end of file
......@@ -11,7 +11,11 @@ params[tools.CALENDARID] = vars.get("$field.EMAIL_ADDRESS");
params[tools.CONTACTID] = vars.get("$field.CONTACT_ID");
params[tools.DESCRIPTION] = vars.get("$field.DESCRIPTION");
user[tools.TITLE] = vars.get("$field.TITLE");
user[tools.TITLE] = vars.get("$field.UID");
user[tools.PARAMS] = params;
if (vars.get("$field.PASSWORD") && vars.get("$field.PASSWORD") == vars.get("$field.CONFIRM_PASSWORD"))
{
user[tools.PASSWORD] = vars.getString("$field.PASSWORD");
}
tools.insertUser(user);
\ No newline at end of file
......@@ -2,8 +2,9 @@ import("system.logging");
import("system.vars");
import("system.tools");
var user = tools.getUser(vars.get("$field.TITLE"));
var user = tools.getUser(vars.get("$field.TITLE_ORIGINAL"));
user[tools.TITLE] = vars.get("$field.UID");
user[tools.PARAMS][tools.FIRSTNAME] = vars.get("$field.FIRSTNAME");
user[tools.PARAMS][tools.LASTNAME] = vars.get("$field.LASTNAME");
user[tools.PARAMS][tools.EMAIL] = vars.get("$field.EMAIL_ADDRESS");
......@@ -11,7 +12,7 @@ user[tools.PARAMS][tools.CALENDARID] = vars.get("$field.EMAIL_ADDRESS");
user[tools.PARAMS][tools.CONTACTID] = vars.get("$field.CONTACT_ID");
user[tools.PARAMS][tools.DESCRIPTION] = vars.get("$field.DESCRIPTION");
if (vars.exists("$param.passwordChange_param") && vars.get("$param.passwordChange_param")
if (vars.exists("$param.PasswordChange_param") && vars.get("$param.PasswordChange_param")
&& vars.get("$field.PASSWORD") == vars.get("$field.CONFIRM_PASSWORD"))
{
user[tools.PASSWORD] = vars.getString("$field.PASSWORD");
......
......@@ -279,12 +279,6 @@ Usually this is used for filtering COMMUNICATION-entries by a specified contact
<fieldName>ContactEditors</fieldName>
<isConsumer v="false" />
</entityDependency>
<entityDependency>
<name>ffdbb464-fa37-4bb7-a66d-d9e0d3a9bc56</name>
<entityName>Activity_entity</entityName>
<fieldName>Contacts</fieldName>
<isConsumer v="false" />
</entityDependency>
</dependencies>
</entityProvider>
<entityField>
......
......@@ -40,6 +40,8 @@
<consumer>Employees</consumer>
<linkedContext>Person</linkedContext>
<mandatory v="true" />
<valueProcess>%aditoprj%/entity/Timetracking_entity/entityfields/contact_id/valueProcess.js</valueProcess>
<displayValueProcess>%aditoprj%/entity/Timetracking_entity/entityfields/contact_id/displayValueProcess.js</displayValueProcess>
</entityField>
<entityField>
<name>TIMETRACKINGID</name>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment