- Se han implementado los siguientes Endpoints:
GET /api/1.0/{workspace}/project/{prj_uid}/web-entry-events
GET /api/1.0/{workspace}/project/{prj_uid}/web-entry-event/{wee_uid}
GET /api/1.0/{workspace}/project/{prj_uid}/web-entry-event/event/{evn_uid}
POST /api/1.0/{workspace}/project/{prj_uid}/web-entry-event
PUT /api/1.0/{workspace}/project/{prj_uid}/web-entry-event/{wee_uid}
DELETE /api/1.0/{workspace}/project/{prj_uid}/web-entry-event/{wee_uid}
- Se han implementado los metodos necesarios para el Export, Import y
Delete (delete Process) de este nuevo "Objeto"
- Se ha solucionado bugs al importar un Projecto con "Gateway to Gateway"
Issue:
Analisis de los resultados de escaneo de las funciones en ProcessMaker. Plugin/trigger code scanner.
Cause:
Nueva solicitud de funciones
Solution:
Se ha implementado esta nueva funcionalidad, que consta de lo siguiente:
- Escaneo de codigo al importar un plugin (no se aplica a plugins enterprise)
- Escaneo de codigo al habilitar un plugin (si el plugin ya se encuentra fisicamente en el directorio de los plugins)
- Escaneo de codigo al importar un proceso
- Escaneo de codigo al crear/modificar codigo de un trigger
- Escaneo de codigo al ejecutar un caso que tenga seteados triggers en sus steps (si el trigger tiene codigo
no deseado, no se ejecuta el trigger)
- Se ha agregado la opcion "check-plugin-disabled-code" al comando "./gulliver", el mismo muestra
informacion sobre los plugins con codigo no deseado.
Ej: $ ./gulliver check-plugin-disabled-code [enterprise-plugin|custom-plugin|all|<plugin-name>]
- Se ha agregado la opcion "check-workspace-disabled-code" al comando "./processmaker", el mismo muestra
informacion sobre los workspaces con codigo no deseado en sus triggers.
Ej: $ ./processmaker check-workspace-disabled-code <myWorkspace>
- Por defecto ProcessMaker no realiza el escaneo de codigo, si se desea escanear codigo no deseado, se
debera definir el atributo "enable_blacklist = 1" en el archivo "env.ini", este atributo no se aplica
a las nuevas opciones creadas para los comandos "./gulliver" y "./processmaker"
- Para una configuracion personalizada de codigo no deseado (lista negra), se pueden definir las mismas en
el archivo "path/to/processmaker/workflow/engine/config/blacklist.ini" (si no existe el
archivo se puede crear), o tambien en el atributo "disable_functions" esto en el archivo "php.ini"
Ejemplo de "blacklist.ini":
;Classes
;=======
DashletInterface
;Functions
;=========
eval
exec
;date
;echo
strlen
Problem:
Case 1: The same user 'A', creates and imports the process, using the option: "Update the current process...".
Result: The user that created the process, user A in the example, is allways the User Owner of the process.
Case 2: User 'A' creates the process, and user 'B' imports the process, using the option: "Update the current process...".
Result: The user that created the process, user A in the example, is allways the User Owner of the process.
Case 3: User 'A' creates the process, then this user 'A' is deleted, and user 'B' imports the process, using the option: "Update the current process...".
Result: The User Owner is showed empty.
Razon: When the user 'A' (the one that created the process) is deleted, the delete is only logical not physical in the db, and it is updated with the Status 'CLOSED' and the username of this user is changed to an empty string " ". So, when the process is updated the username is copy like it is in the db, and copy into the User Owner field, showing the empty string " ".
Solution:
A validation was added asking if the user exist, if this dosen't the User Owner is changed to the current user logged, and the same if the user exist but his status is CLOSED.
- Se agrego la opcion para el grupo
- Se agrego el codigo necesario tanto en el FrontEnd (ExtJS) existente
y en el BackEnd (Endpoint) para el funcionamiento correcto para
esta nueva opcion
- Se completo validacion de palabras reservadas de SQL en los datos a
importar (Report tables)
- Los grupos en "Process Supervisors" no son exportados e importados
- Se completo los metodos necesarios para la exportacion e importacion para los
grupos en "Process Supervisors"
- Se an realizado todas las modificaciones requeridas para lograr la
importacion de un archivo "pmx", tomando en cuenta la generacion de
nuevos UIDs, los mismos que deberian ser reflejados en las
tablas "workflow" y en los files (archivos xml de los DynaForms)
- Se a completado la importacion de las tablas "workflow"
- Se a completado la importacion de los datos del proceso y tareas
Cuando se importaba un proceso que fue creado en el mismo servidor, pero eliminado y del cual el usuario que lo creo fue tambien eliminado, PM aun importaba el proceso con el nombre del usuario q lo creo como Process Owner, aunq este ya no existiera, ya que al ser la eliminacion de usuarios solo un borrado logico, aun este usuario estaba registrado en la BD y podia ser asignado.
Ahora PM asigna por defecto a todos los procesos que se importan el usuario actual como Process Owner.
I added a validation in file 'workflow/engine/methods/processes/processes_Import_Ajax.php' to change PROCESS.PRO_CREATE_USER value in the database to the current user.
I added a validation in file 'workflow/engine/methods/processes/processes_Import_Ajax.php' to change PROCESS.PRO_CREATE_USER value in the database to the current user.
- Se ha detectado que el archivo encargado de la importacióstaba usando short tags de PHP
- Se ha cambiado el short tag a un tag estandar de php
- Como workaround para otras versiones se debe habilitar el uso de short tags en el php.ini
- In the creation/editing of PMTables/ReportTables, not validated the
use of reserved words
- It has validated the use of keywords in the creation/editing of
PMTables/ReportTables
- It has been validated using reserved words to importing a process with
ReportTables (old version)
* Available from version 2.0.44