Merged in release/3.3.1 (pull request #6723)

PMC-316

Approved-by: Paula Quispe <paula.quispe@processmaker.com>
Approved-by: Julio Cesar Laura Avendaño <contact@julio-laura.com>
This commit is contained in:
Paula Quispe
2018-12-14 18:55:35 +00:00
committed by Julio Cesar Laura Avendaño
22 changed files with 1129 additions and 401 deletions

View File

@@ -31,9 +31,9 @@
"laravel/framework": "5.4.*",
"luracast/restler": "^3.0",
"bshaffer/oauth2-server-php": "v1.0",
"colosa/pmUI": "release/3.2.4-dev",
"colosa/MichelangeloFE": "release/3.2.4-dev",
"colosa/pmdynaform": "release/3.2.4-dev",
"colosa/pmUI": "release/3.3.1-dev",
"colosa/MichelangeloFE": "release/3.3.1-dev",
"colosa/pmdynaform": "release/3.3.1-dev",
"google/apiclient": "1.1.6",
"dapphp/securimage": "^3.6",
"psr/log": "1.0.0",
@@ -51,7 +51,7 @@
},
"require-dev": {
"fzaninotto/faker": "^1.7",
"guzzle/guzzle": "~3.1.1",
"guzzlehttp/guzzle": "^6.3",
"phpunit/phpunit": "~5.7",
"lmc/steward": "^2.2",
"behat/behat": "^3.3",

852
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,36 +1,469 @@
<?php
/**
* This is a partial list of the known types, add the type you want to be recognized,
* This is a partial list of the known types, add the type you want to be recognized,
* this affects the whole application globally.
*
*
* https://www.iana.org/assignments/media-types/media-types.xml
* https://www.sitepoint.com/mime-types-complete-list/
*/
return [
'dat' => 'text/plain',
'3dm' => 'x-world/x-3dmf',
'3dmf' => 'x-world/x-3dmf',
'a' => 'application/octet-stream',
'aab' => 'application/x-authorware-bin',
'aam' => 'application/x-authorware-map',
'aas' => 'application/x-authorware-seg',
'abc' => 'text/vnd.abc',
'acgi' => 'text/html',
'afl' => 'video/animaflex',
'ai' => 'application/postscript',
'aif' => 'audio/x-aiff',
'aifc' => 'audio/x-aiff',
'aiff' => 'audio/x-aiff',
'aim' => 'application/x-aim',
'aip' => 'text/x-audiosoft-intra',
'ani' => 'application/x-navi-animation',
'aos' => 'application/x-nokia-9000-communicator-add-on-software',
'aps' => 'application/mime',
'arc' => 'application/octet-stream',
'arj' => 'application/octet-stream',
'art' => 'image/x-jg',
'asf' => 'video/x-ms-asf',
'asm' => 'text/x-asm',
'asp' => 'text/asp',
'asx' => 'video/x-ms-asf-plugin',
'au' => 'audio/x-au',
'avi' => 'video/x-msvideo',
'avs' => 'video/avs-video',
'bcpio' => 'application/x-bcpio',
'bin' => 'application/x-macbinary',
'bm' => 'image/bmp',
'bmp' => 'image/x-windows-bmp',
'boo' => 'application/book',
'book' => 'application/book',
'boz' => 'application/x-bzip2',
'bsh' => 'application/x-bsh',
'bz' => 'application/x-bzip',
'bz2' => 'application/x-bzip2',
'c' => 'text/x-c',
'c++' => 'text/plain',
'cat' => 'application/vnd.ms-pki.seccat',
'cc' => 'text/x-c',
'ccad' => 'application/clariscad',
'cco' => 'application/x-cocoa',
'cdf' => 'application/x-netcdf',
'cer' => 'application/x-x509-ca-cert',
'cha' => 'application/x-chat',
'chat' => 'application/x-chat',
'class' => 'application/x-java-class',
'com' => 'text/plain',
'conf' => 'text/plain',
'cpio' => 'application/x-cpio',
'cpp' => 'text/x-c',
'cpt' => 'application/x-cpt',
'crl' => 'application/pkix-crl',
'crt' => 'application/x-x509-user-cert',
'csh' => 'text/x-script.csh',
'css' => 'text/css',
'cxx' => 'text/plain',
'dcr' => 'application/x-director',
'deepv' => 'application/x-deepv',
'def' => 'text/plain',
'der' => 'application/x-x509-ca-cert',
'dif' => 'video/x-dv',
'dir' => 'application/x-director',
'dl' => 'video/x-dl',
'doc' => ['application/msword', 'text/html'],
'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
'exe' => ['application/x-msdownload', 'application/x-dosexec'],
'docx' => 'application/octet-stream',
'dot' => 'application/msword',
'dp' => 'application/commonground',
'drw' => 'application/drafting',
'dump' => 'application/octet-stream',
'dv' => 'video/x-dv',
'dvi' => 'application/x-dvi',
'dwf' => 'model/vnd.dwf',
'dwg' => 'image/x-dwg',
'dxf' => 'image/x-dwg',
'dxr' => 'application/x-director',
'el' => 'text/x-script.elisp',
'elc' => 'application/x-elc',
'env' => 'application/x-envoy',
'eps' => 'application/postscript',
'es' => 'application/x-esrehber',
'etx' => 'text/x-setext',
'evy' => 'application/x-envoy',
'exe' => ['application/x-dosexec', 'application/octet-stream'],
'f' => 'text/x-fortran',
'f77' => 'text/x-fortran',
'f90' => 'text/x-fortran',
'fdf' => 'application/vnd.fdf',
'fif' => 'image/fif',
'fli' => 'video/x-fli',
'flo' => 'image/florian',
'flx' => 'text/vnd.fmi.flexstor',
'fmf' => 'video/x-atomic3d-feature',
'for' => 'text/x-fortran',
'fpx' => 'image/vnd.net-fpx',
'frl' => 'application/freeloader',
'funk' => 'audio/make',
'g' => 'text/plain',
'g3' => 'image/g3fax',
'gif' => 'image/gif',
'gl' => 'video/x-gl',
'gsd' => 'audio/x-gsm',
'gsm' => 'audio/x-gsm',
'gsp' => 'application/x-gsp',
'gss' => 'application/x-gss',
'gtar' => 'application/x-gtar',
'gz' => 'application/x-gzip',
'gzip' => 'multipart/x-gzip',
'h' => 'text/x-h',
'hdf' => 'application/x-hdf',
'help' => 'application/x-helpfile',
'hgl' => 'application/vnd.hp-hpgl',
'hh' => 'text/x-h',
'hlb' => 'text/x-script',
'hlp' => 'application/x-winhelp',
'hpg' => 'application/vnd.hp-hpgl',
'hpgl' => 'application/vnd.hp-hpgl',
'hqx' => 'application/x-mac-binhex40',
'hta' => 'application/hta',
'htc' => 'text/x-component',
'htm' => 'text/html',
'html' => 'text/html',
'jpeg' => 'image/jpeg',
'jpg' => 'image/jpeg',
'mp3' => 'audio/mpeg',
'mp4' => 'video/mp4',
'ppt' => 'application/vnd.ms-office',
'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
'pm' => 'text/plain',
'pmt' => 'text/plain',
'pmx' => 'application/xml',
'po' => 'text/x-po',
'htmls' => 'text/html',
'htt' => 'text/webviewhtml',
'htx' => 'text/html',
'ice' => 'x-conference/x-cooltalk',
'ico' => 'image/x-icon',
'idc' => 'text/plain',
'ief' => 'image/ief',
'iefs' => 'image/ief',
'iges' => 'model/iges',
'igs' => 'model/iges',
'ima' => 'application/x-ima',
'imap' => 'application/x-httpd-imap',
'inf' => 'application/inf',
'ins' => 'application/x-internett-signup',
'ip' => 'application/x-ip2',
'isu' => 'video/x-isvideo',
'it' => 'audio/it',
'iv' => 'application/x-inventor',
'ivr' => 'i-world/i-vrml',
'ivy' => 'application/x-livescreen',
'jam' => 'audio/x-jam',
'jav' => 'text/x-java-source',
'java' => 'text/x-java-source',
'jcm' => 'application/x-java-commerce',
'jfif' => 'image/pjpeg',
'jfif-tbnl' => 'image/jpeg',
'jpe' => 'image/pjpeg',
'jpeg' => 'image/pjpeg',
'jpg' => ['image/pjpeg', 'image/jpeg'],
'jps' => 'image/x-jps',
'js' => 'text/ecmascript',
'jut' => 'image/jutvision',
'kar' => 'music/x-karaoke',
'ksh' => 'text/x-script.ksh',
'la' => 'audio/x-nspaudio',
'lam' => 'audio/x-liveaudio',
'latex' => 'application/x-latex',
'lha' => 'application/x-lha',
'lhx' => 'application/octet-stream',
'list' => 'text/plain',
'lma' => 'audio/x-nspaudio',
'log' => 'text/plain',
'lsp' => 'text/x-script.lisp',
'lst' => 'text/plain',
'lsx' => 'text/x-la-asf',
'ltx' => 'application/x-latex',
'lzh' => 'application/x-lzh',
'lzx' => 'application/x-lzx',
'm' => 'text/x-m',
'm1v' => 'video/mpeg',
'm2a' => 'audio/mpeg',
'm2v' => 'video/mpeg',
'm3u' => 'audio/x-mpequrl',
'man' => 'application/x-troff-man',
'map' => 'application/x-navimap',
'mar' => 'text/plain',
'mbd' => 'application/mbedlet',
'mc$' => 'application/x-magic-cap-package-1.0',
'mcd' => 'application/x-mathcad',
'mcf' => 'text/mcf',
'mcp' => 'application/netmc',
'me' => 'application/x-troff-me',
'mht' => 'message/rfc822',
'mhtml' => 'message/rfc822',
'mid' => 'x-music/x-midi',
'midi' => 'x-music/x-midi',
'mif' => 'application/x-mif',
'mime' => 'www/mime',
'mjf' => 'audio/x-vnd.audioexplosion.mjuicemediafile',
'mjpg' => 'video/x-motion-jpeg',
'mm' => 'application/x-meme',
'mme' => 'application/base64',
'mod' => 'audio/x-mod',
'moov' => 'video/quicktime',
'mov' => 'video/quicktime',
'movie' => 'video/x-sgi-movie',
'mp2' => 'video/x-mpeq2a',
'mp3' => ['video/x-mpeg', 'audio/mpeg'],
'mpa' => 'video/mpeg',
'mpc' => 'application/x-project',
'mpe' => 'video/mpeg',
'mpeg' => 'video/mpeg',
'mpg' => 'video/mpeg',
'mpga' => 'audio/mpeg',
'mpp' => 'application/vnd.ms-project',
'mpt' => 'application/x-project',
'mpv' => 'application/x-project',
'mpx' => 'application/x-project',
'mrc' => 'application/marc',
'ms' => 'application/x-troff-ms',
'mv' => 'video/x-sgi-movie',
'my' => 'audio/make',
'mzz' => 'application/x-vnd.audioexplosion.mzz',
'nap' => 'image/naplps',
'naplps' => 'image/naplps',
'nc' => 'application/x-netcdf',
'ncm' => 'application/vnd.nokia.Something is wronguration-message',
'nif' => 'image/x-niff',
'niff' => 'image/x-niff',
'nix' => 'application/x-mix-transfer',
'nsc' => 'application/x-conference',
'nvd' => 'application/x-navidoc',
'o' => 'application/octet-stream',
'oda' => 'application/oda',
'omc' => 'application/x-omc',
'omcd' => 'application/x-omcdatamaker',
'omcr' => 'application/x-omcregerator',
'p' => 'text/x-pascal',
'p10' => 'application/x-pkcs10',
'p12' => 'application/x-pkcs12',
'p7a' => 'application/x-pkcs7-signature',
'p7c' => 'application/x-pkcs7-mime',
'p7m' => 'application/x-pkcs7-mime',
'p7r' => 'application/x-pkcs7-certreqresp',
'p7s' => 'application/pkcs7-signature',
'part' => 'application/pro_eng',
'pas' => 'text/pascal',
'pbm' => 'image/x-portable-bitmap',
'pcl' => 'application/x-pcl',
'pct' => 'image/x-pict',
'pcx' => 'image/x-pcx',
'pdb' => 'chemical/x-pdb',
'pdf' => 'application/pdf',
'png' => 'image/png',
'pfunk' => 'audio/make.my.funk',
'pgm' => 'image/x-portable-greymap',
'php' => 'text/x-php',
'rar' => 'application/x-rar',
'pic' => 'image/pict',
'pict' => 'image/pict',
'pkg' => 'application/x-newton-compatible-pkg',
'pko' => 'application/vnd.ms-pki.pko',
'pl' => 'text/x-script.perl',
'plx' => 'application/x-pixclscript',
'pm' => 'text/x-script.perl-module',
'pm4' => 'application/x-pagemaker',
'pm5' => 'application/x-pagemaker',
'png' => 'image/png',
'pnm' => 'image/x-portable-anymap',
'pot' => 'application/vnd.ms-powerpoint',
'pov' => 'model/x-pov',
'ppa' => 'application/vnd.ms-powerpoint',
'ppm' => 'image/x-portable-pixmap',
'pps' => 'application/vnd.ms-powerpoint',
'ppt' => ['application/x-mspowerpoint','application/vnd.ms-office'],
'ppz' => 'application/mspowerpoint',
'pre' => 'application/x-freelance',
'prt' => 'application/pro_eng',
'ps' => 'application/postscript',
'psd' => 'application/octet-stream',
'pvu' => 'paleovu/x-pv',
'pwz' => 'application/vnd.ms-powerpoint',
'py' => 'text/x-script.phyton',
'pyc' => 'application/x-bytecode.python',
'qcp' => 'audio/vnd.qcelp',
'qd3' => 'x-world/x-3dmf',
'qd3d' => 'x-world/x-3dmf',
'qif' => 'image/x-quicktime',
'qt' => 'video/quicktime',
'qtc' => 'video/x-qtc',
'qti' => 'image/x-quicktime',
'qtif' => 'image/x-quicktime',
'ra' => 'audio/x-realaudio',
'ram' => 'audio/x-pn-realaudio',
'ras' => 'image/x-cmu-raster',
'rast' => 'image/cmu-raster',
'rexx' => 'text/x-script.rexx',
'rf' => 'image/vnd.rn-realflash',
'rgb' => 'image/x-rgb',
'rm' => 'audio/x-pn-realaudio',
'rmi' => 'audio/mid',
'rmm' => 'audio/x-pn-realaudio',
'rmp' => 'audio/x-pn-realaudio-plugin',
'rng' => 'application/vnd.nokia.ringing-tone',
'rnx' => 'application/vnd.rn-realplayer',
'roff' => 'application/x-troff',
'rp' => 'image/vnd.rn-realpix',
'rpm' => 'audio/x-pn-realaudio-plugin',
'rt' => 'text/vnd.rn-realtext',
'rtf' => 'text/richtext',
'rtx' => 'text/richtext',
'rv' => 'video/vnd.rn-realvideo',
's' => 'text/x-asm',
's3m' => 'audio/s3m',
'saveme' => 'application/octet-stream',
'sbk' => 'application/x-tbook',
'scm' => 'video/x-scm',
'sdml' => 'text/plain',
'sdp' => 'application/x-sdp',
'sdr' => 'application/sounder',
'sea' => 'application/x-sea',
'set' => 'application/set',
'sgm' => 'text/x-sgml',
'sgml' => 'text/x-sgml',
'sh' => 'text/x-script.sh',
'shar' => 'application/x-shar',
'shtml' => 'text/x-server-parsed-html',
'sid' => 'audio/x-psid',
'sit' => 'application/x-stuffit',
'skd' => 'application/x-koan',
'skm' => 'application/x-koan',
'skp' => 'application/x-koan',
'skt' => 'application/x-koan',
'sl' => 'application/x-seelogo',
'smi' => 'application/smil',
'smil' => 'application/smil',
'snd' => 'audio/x-adpcm',
'sol' => 'application/solids',
'spc' => 'text/x-speech',
'spl' => 'application/futuresplash',
'spr' => 'application/x-sprite',
'sprite' => 'application/x-sprite',
'src' => 'application/x-wais-source',
'ssi' => 'text/x-server-parsed-html',
'ssm' => 'application/streamingmedia',
'sst' => 'application/vnd.ms-pki.certstore',
'step' => 'application/step',
'stl' => 'application/x-navistyle',
'stp' => 'application/step',
'sv4cpio' => 'application/x-sv4cpio',
'sv4crc' => 'application/x-sv4crc',
'svf' => 'image/x-dwg',
'svr' => 'x-world/x-svr',
'swf' => 'application/x-shockwave-flash',
't' => 'application/x-troff',
'talk' => 'text/x-speech',
'tar' => 'application/x-tar',
'tbk' => 'application/x-tbook',
'tcl' => 'text/x-script.tcl',
'tcsh' => 'text/x-script.tcsh',
'tex' => 'application/x-tex',
'texi' => 'application/x-texinfo',
'texinfo' => 'application/x-texinfo',
'text' => 'text/plain',
'tgz' => 'application/x-compressed',
'tif' => 'image/x-tiff',
'tiff' => 'image/x-tiff',
'tr' => 'application/x-troff',
'tsi' => 'audio/tsp-audio',
'tsp' => 'audio/tsplayer',
'tsv' => 'text/tab-separated-values',
'turbot' => 'image/florian',
'txt' => 'text/plain',
'uil' => 'text/x-uil',
'uni' => 'text/uri-list',
'unis' => 'text/uri-list',
'unv' => 'application/i-deas',
'uri' => 'text/uri-list',
'uris' => 'text/uri-list',
'ustar' => 'multipart/x-ustar',
'uu' => 'text/x-uuencode',
'uue' => 'text/x-uuencode',
'vcd' => 'application/x-cdlink',
'vcs' => 'text/x-vcalendar',
'vda' => 'application/vda',
'vdo' => 'video/vdo',
'vew' => 'application/groupwise',
'viv' => 'video/vnd.vivo',
'vivo' => 'video/vnd.vivo',
'vmd' => 'application/vocaltec-media-desc',
'vmf' => 'application/vocaltec-media-file',
'voc' => 'audio/x-voc',
'vos' => 'video/vosaic',
'vox' => 'audio/voxware',
'vqe' => 'audio/x-twinvq-plugin',
'vqf' => 'audio/x-twinvqv',
'vql' => 'audio/x-twinvq-plugin',
'vrml' => 'x-world/x-vrml',
'vrt' => 'x-world/x-vrt',
'vsd' => 'application/x-visio',
'vst' => 'application/x-visio',
'vsw' => 'application/x-visio',
'w60' => 'application/wordperfect6.0',
'w61' => 'application/wordperfect6.1',
'w6w' => 'application/msword',
'wav' => 'audio/x-wav',
'wb1' => 'application/x-qpro',
'wbmp' => 'image/vnd.wap.wbmp',
'web' => 'application/vnd.xara',
'wiz' => 'application/msword',
'wk1' => 'application/x-123',
'wmf' => 'windows/metafile',
'wml' => 'text/vnd.wap.wml',
'wmlc' => 'application/vnd.wap.wmlc',
'wmls' => 'text/vnd.wap.wmlscript',
'wmlsc' => 'application/vnd.wap.wmlscriptc',
'wmv' => ['video/x-ms-asf', 'video/x-ms-wmv'],
'xls' => ['application/vnd.ms-excel', 'text/plain'],
'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
'zip' => 'application/zip',
'word' => 'application/msword',
'wp' => 'application/wordperfect',
'wp5' => 'application/wordperfect6.0',
'wp6' => 'application/wordperfect',
'wpd' => 'application/x-wpwin',
'wq1' => 'application/x-lotus',
'wri' => 'application/x-wri',
'wrl' => 'x-world/x-vrml',
'wrz' => 'x-world/x-vrml',
'wsc' => 'text/scriplet',
'wsrc' => 'application/x-wais-source',
'wtk' => 'application/x-wintalk',
'xbm' => 'image/xbm',
'xdr' => 'video/x-amt-demorun',
'xgz' => 'xgl/drawing',
'xif' => 'image/vnd.xiff',
'xl' => 'application/excel',
'xla' => 'application/x-msexcel',
'xlb' => 'application/x-excel',
'xlc' => 'application/x-excel',
'xld' => 'application/x-excel',
'xlk' => 'application/x-excel',
'xll' => 'application/x-excel',
'xlm' => 'application/x-excel',
'xls' => ['application/x-msexcel', 'text/plain'],
'xlsx' => 'application/octet-stream',
'xlt' => 'application/x-excel',
'xlv' => 'application/x-excel',
'xlw' => 'application/x-msexcel',
'xm' => 'audio/xm',
'xml' => 'text/xml',
'xmz' => 'xgl/movie',
'xpix' => 'application/x-vnd.ls-xpix',
'xpm' => 'image/xpm',
'x-png' => 'image/png',
'xsr' => 'video/x-amt-showrun',
'xwd' => 'image/x-xwindowdump',
'xyz' => 'chemical/x-pdb',
'z' => 'application/x-compressed',
'zip' => 'multipart/x-zip',
'zoo' => 'application/octet-stream',
'zsh' => 'text/x-script.zsh',
//The following are the custom application mime type
'dat' => 'text/plain',
'pm' => ['text/plain', 'application/octet-stream'],
'pmt' => 'text/plain',
'pmx' => ['application/xml', 'text/xml', 'text/html'],
'pmx2' => ['application/xml', 'text/xml', 'text/html'],
'po' => 'text/x-po',
];

View File

@@ -5490,7 +5490,7 @@ class G
public static function verifyInputDocExtension($InpDocAllowedFiles, $fileName, $filesTmpName)
{
$error = null;
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) use(&$error) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) use(&$error) {
$error = new stdclass();
$error->status = false;
$error->message = $validator->getMessage();

View File

@@ -3545,10 +3545,12 @@ class Cases
if ($oPMScript->executedOn() === $oPMScript::AFTER_ROUTING) {
$appUid = !empty($fieldsCase['APPLICATION']) ? $fieldsCase['APPLICATION'] : '';
if (!empty($appUid)) {
$lastAppFields = $this->loadCase($appUid)['APP_DATA'];
$fieldsTrigger = array_merge($lastAppFields, $fieldsTrigger);
//Update $fieldsCase with the last appData
$fieldsCase = $this->loadCase($appUid)['APP_DATA'];
}
}
//Merge the current appData with variables changed
$fieldsCase = array_merge($fieldsCase, $fieldsTrigger);
//Register the time execution
$this->arrayTriggerExecutionTime[$trigger['TRI_UID']] = $oPMScript->scriptExecutionTime;
@@ -3567,16 +3569,9 @@ class Cases
);
}
/*----------------------------------********---------------------------------*/
//The Code Scanner can be interrupt the execution
if (empty($fieldsTrigger)) {
return $fieldsCase;
}
return $fieldsTrigger;
} else {
return $fieldsCase;
}
return $fieldsCase;
}
/**

View File

@@ -1029,7 +1029,7 @@ class Processes
$oData->process['PRO_DYNAFORMS']['PROCESS'] = '';
}
if ($oData->process['PRO_DYNAFORMS']['PROCESS'] != '') {
if (!empty($oData->process['PRO_DYNAFORMS']['PROCESS']) && !empty($map[$oData->process['PRO_DYNAFORMS']['PROCESS']])) {
$oData->process['PRO_DYNAFORMS']['PROCESS'] = $map[$oData->process['PRO_DYNAFORMS']['PROCESS']];
}
@@ -1994,6 +1994,13 @@ class Processes
$criteria->add(InputDocumentPeer::INP_DOC_MAX_FILESIZE, $row['INP_DOC_MAX_FILESIZE']);
$criteria->add(InputDocumentPeer::INP_DOC_MAX_FILESIZE_UNIT, $row['INP_DOC_MAX_FILESIZE_UNIT']);
BasePeer::doInsert($criteria, $con);
//Insert in CONTENT
$labels = [
'INP_DOC_TITLE' => $row['INP_DOC_TITLE'],
'INP_DOC_DESCRIPTION' => !empty($row['INP_DOC_DESCRIPTION']) ? $row['INP_DOC_DESCRIPTION'] : ''
];
$this->insertToContentTable($con, $labels, $row['INP_DOC_UID'], SYS_LANG);
}
$con->commit();
} catch (Exception $e) {
@@ -2178,6 +2185,13 @@ class Processes
$criteria->add(OutputDocumentPeer::OUT_DOC_PDF_SECURITY_PERMISSIONS, $row['OUT_DOC_PDF_SECURITY_PERMISSIONS']);
$criteria->add(OutputDocumentPeer::OUT_DOC_OPEN_TYPE, $row['OUT_DOC_OPEN_TYPE']);
BasePeer::doInsert($criteria, $con);
//Insert in CONTENT
$labels = ['OUT_DOC_TITLE' => $row['OUT_DOC_TITLE'],
'OUT_DOC_DESCRIPTION' => !empty($row['OUT_DOC_DESCRIPTION']) ? $row['OUT_DOC_DESCRIPTION'] : '',
'OUT_DOC_FILENAME' => $row['OUT_DOC_FILENAME'],
'OUT_DOC_TEMPLATE' => $row['OUT_DOC_TEMPLATE']];
$this->insertToContentTable($con, $labels, $row['OUT_DOC_UID'], SYS_LANG);
}
$con->commit();
} catch (Exception $e) {
@@ -3104,6 +3118,13 @@ class Processes
$criteria->add(DynaformPeer::DYN_VERSION, $row['DYN_VERSION']);
$criteria->add(DynaformPeer::DYN_UPDATE_DATE, $row['DYN_UPDATE_DATE']);
BasePeer::doInsert($criteria, $con);
//Insert in CONTENT
$labels = [
'DYN_TITLE' => $row['DYN_TITLE'],
'DYN_DESCRIPTION' => !empty($row['DYN_DESCRIPTION']) ? $row['DYN_DESCRIPTION'] : ''
];
$this->insertToContentTable($con, $labels, $row['DYN_UID'], SYS_LANG);
}
$con->commit();
} catch (Exception $e) {
@@ -3249,6 +3270,13 @@ class Processes
$criteria->add(TriggersPeer::TRI_WEBBOT, $row['TRI_WEBBOT']);
$criteria->add(TriggersPeer::TRI_PARAM, $row['TRI_PARAM']);
BasePeer::doInsert($criteria, $con);
//Insert in CONTENT
$labels = [
'TRI_TITLE' => $row['TRI_TITLE'],
'TRI_DESCRIPTION' => !empty($row['TRI_DESCRIPTION']) ? $row['TRI_DESCRIPTION'] : ''
];
$this->insertToContentTable($con, $labels, $row['TRI_UID'], SYS_LANG);
}
$con->commit();
} catch (Exception $e) {
@@ -4050,6 +4078,10 @@ class Processes
$criteria->add(GroupwfPeer::GRP_LDAP_DN, $row['GRP_LDAP_DN']);
$criteria->add(GroupwfPeer::GRP_UX, $row['GRP_UX']);
BasePeer::doInsert($criteria, $con);
//Insert in CONTENT
$labels = ['GRP_TITLE' => $row['GRP_TITLE']];
$this->insertToContentTable($con, $labels, $row['GRP_UID'], SYS_LANG);
}
$con->commit();
} catch (Exception $e) {
@@ -6375,4 +6407,38 @@ class Processes
$proTitle = substr($proTitle, 0, strlen($proTitle) - $excess);
return $proTitle;
}
/**
* Delete, insert and update labels in CONTENT related to a process element
*
* @param object $connection
* @param array $conCategories
* @param string $conId
* @param string $conLang
* @param string $conParent
*/
private function insertToContentTable($connection, array $conCategories, $conId, $conLang, $conParent = '') {
//Prepare to delete labels related in CONTENT
$criteria = new Criteria(ContentPeer::DATABASE_NAME);
$criteria->addSelectColumn('*');
$criteria->add(ContentPeer::CON_CATEGORY, $conCategories, Criteria::IN);
$criteria->add(ContentPeer::CON_ID, $conId);
$criteria->add(ContentPeer::CON_LANG, $conLang);
$criteria->add(ContentPeer::CON_PARENT, $conParent);
BasePeer::doDelete($criteria, $connection);
foreach ($conCategories as $conCategory => $conValue) {
//Prepare the insert label in CONTENT
$criteria = new Criteria(ContentPeer::DATABASE_NAME);
$criteria->add(ContentPeer::CON_CATEGORY, $conCategory);
$criteria->add(ContentPeer::CON_ID, $conId);
$criteria->add(ContentPeer::CON_LANG, $conLang);
$criteria->add(ContentPeer::CON_VALUE, $conValue);
$criteria->add(ContentPeer::CON_PARENT, $conParent);
BasePeer::doInsert($criteria, $connection);
//Updating all related labels in CONTENT
Content::updateEqualValue($conCategory, $conParent, $conId, $conValue);
}
}
}

View File

@@ -3863,6 +3863,12 @@ msgstr "Case Tracker Properties Saved Successfully"
msgid "The case {APP_NUMBER} was reactivated successfully!"
msgstr "The case {APP_NUMBER} was reactivated successfully!"
# TRANSLATION
# LABEL/ID_CASE_RESPONSE_NOT_AVAILABLE
#: LABEL/ID_CASE_RESPONSE_NOT_AVAILABLE
msgid "No response available, please review the case information"
msgstr "No response available, please review the case information"
# TRANSLATION
# LABEL/ID_CASE_ROUTED_TO
#: LABEL/ID_CASE_ROUTED_TO

View File

@@ -1026,7 +1026,7 @@ class adminProxy extends HttpProxyController
*/
public function uploadImage()
{
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
echo G::json_encode([
'success' => true,
'failed' => true,

View File

@@ -725,7 +725,7 @@ class pmTablesProxy extends HttpProxyController
}
try {
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
throw new ExceptionRestApi($validator->getMessage());
});
$result = new stdClass();

View File

@@ -57451,6 +57451,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ) VALUES
( 'LABEL','ID_CASE_REACTIVATED_SUCCESSFULLY','en','The case {APP_NUMBER} was reactivated successfully!','2014-01-15') ,
( 'LABEL','ID_CASE_RESPONSE_NOT_AVAILABLE','en','No response available, please review the case information','2018-03-02') ,
( 'LABEL','ID_CASE_ROUTED_TO','en','Case routed to','2017-06-02') ,
( 'LABEL','ID_CASE_SCHEDULER','en','Case Scheduler','2014-01-15') ,
( 'LABEL','ID_CASE_SCHEDULER_CLASSIC','en','Case Scheduler (classic processes)','2017-10-13') ,

View File

@@ -1446,7 +1446,7 @@ function checkTree($uidOriginFolder, $uidNewFolder)
*/
function uploadExternalDocument()
{
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
$response = [
'error' => $validator->getMessage(),
'message' => $validator->getMessage(),

View File

@@ -18,7 +18,7 @@ function runBgProcessmaker($task, $log)
}
try {
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
throw new ExceptionRestApi($validator->getMessage());
});
if (isset($_REQUEST["action"])) {

View File

@@ -36,7 +36,7 @@ $response = array();
$status = 1;
try {
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
throw new Exception($validator->getMessage());
});

View File

@@ -317,12 +317,14 @@ try {
}
$userPropertyInfo = $userProperty->loadOrCreateIfNotExists($_SESSION['USER_LOGGED'], array('USR_PASSWORD_HISTORY' => serialize(array(G::encryptOld($pwd)))));
//Get the errors in the password
$errorInPassword = $userProperty->validatePassword(
$_POST['form']['USR_PASSWORD'],
$userPropertyInfo['USR_LAST_UPDATE_DATE'],
$userPropertyInfo['USR_LOGGED_NEXT_TIME']
);
//Get the policies enabled
$policiesInPassword = $userProperty->validatePassword('', date('Y-m-d'), $userPropertyInfo['USR_LOGGED_NEXT_TIME'], true);
//Enable change password from GAP
if (!isset($enableChangePasswordAfterNextLogin)) {
$enableChangePasswordAfterNextLogin = true;
@@ -333,14 +335,13 @@ try {
define('NO_DISPLAY_USERNAME', 1);
}
//We will to get the message for the login
$messPassword = [];
$policySection = $userProperty->getMessageValidatePassword($errorInPassword, false);
$messPassword = $policySection = $userProperty->getMessageValidatePassword($policiesInPassword, false);
$changePassword = '<span style="font-weight:normal;">';
if (array_search('ID_PPP_CHANGE_PASSWORD_AFTER_NEXT_LOGIN', $errorInPassword)) {
$changePassword .= G::LoadTranslation('ID_PPP_CHANGE_PASSWORD_AFTER_NEXT_LOGIN') . '<br/><br/>';
}
$messPassword['DESCRIPTION'] = $changePassword . $policySection['DESCRIPTION'] . '</span>';
$messPassword['DESCRIPTION'] = $changePassword . $policySection['DESCRIPTION'] . '</span>';
$G_PUBLISH = new Publisher;
$version = explode('.', trim(file_get_contents(PATH_GULLIVER . 'VERSION')));
$version = isset($version[0]) ? intval($version[0]) : 0;

View File

@@ -25,7 +25,7 @@
use \ProcessMaker\Importer\XmlImporter;
use ProcessMaker\Validation\ValidationUploadedFiles;
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
echo G::json_encode([
'status' => 'ERROR',
'success' => true,

View File

@@ -27,7 +27,7 @@ if ($RBAC->userCanAccess('PM_FACTORY') == 1) {
}
}
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
$response = [
'result' => 0,
'msg' => $validator->getMessage()

View File

@@ -26,7 +26,7 @@ if ($access != 1) {
$result = new stdClass();
try {
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
throw new Exception($validator->getMessage());
});
//if the xmlform path is writeable

View File

@@ -32,7 +32,7 @@ global $RBAC;
$RBAC->requirePermissions('PM_SETUP_ADVANCE');
try {
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
throw new Exception($validator->getMessage());
});
//load the variables

View File

@@ -200,7 +200,7 @@ function newSkin ($baseSkin = 'classic')
function importSkin ()
{
try {
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
throw new Exception($validator->getMessage());
});
if (! isset( $_FILES['uploadedFile'] )) {

View File

@@ -4,30 +4,26 @@ namespace ProcessMaker\BusinessModel;
use AbeConfiguration;
use AbeConfigurationPeer;
use AppMessage;
use AbeRequests;
use AbeRequestsPeer;
use AbeResponsesPeer;
use ApplicationPeer;
use AppDelegation;
use AppDelegationPeer;
use AppMessage;
use Criteria;
use DynaformPeer;
use EmailServerPeer;
use Exception;
use G;
use Publisher;
use ProcessMaker\BusinessModel\EmailServer;
use ProcessMaker\Core\System;
use ProcessMaker\Plugins\PluginRegistry;
use PmDynaform;
use PMLicensedFeatures;
use ProcessPeer;
use ProcessMaker\Core\System;
use ProcessMaker\Plugins\PluginRegistry;
use Publisher;
use ResultSet;
use SpoolRun;
use Users as ClassUsers;
use stdClass;
use UsersPeer;
use TaskPeer;
use Users as ClassUsers;
/**
* Description of ActionsByEmailService
@@ -543,48 +539,54 @@ class ActionsByEmail
/**
* Get the decision from Actions By Email by BPMN dynaform
* @param array $arrayData
*
* @param array $dataRes
*
* @return string $message
*/
public function viewFormBpmn(array $dataRes)
{
$_SESSION['CURRENT_DYN_UID'] = trim($dataRes['DYN_UID']);
$configuration['DYN_UID'] = trim($dataRes['DYN_UID']);
$_SESSION['CURRENT_DYN_UID'] = trim($dataRes['DYN_UID']);
$configuration['DYN_UID'] = trim($dataRes['DYN_UID']);
$configuration['CURRENT_DYNAFORM'] = trim($dataRes['DYN_UID']);
$configuration['PRO_UID'] = trim($dataRes['PRO_UID']);
$configuration['PRO_UID'] = trim($dataRes['PRO_UID']);
$criteriaD = new Criteria();
$criteriaD->addSelectColumn(\DynaformPeer::DYN_CONTENT);
$criteriaD->addSelectColumn(\DynaformPeer::PRO_UID);
$criteriaD->add(\DynaformPeer::DYN_UID, trim($dataRes['DYN_UID']));
$resultD = \DynaformPeer::doSelectRS($criteriaD);
$criteriaD->addSelectColumn(DynaformPeer::DYN_CONTENT);
$criteriaD->addSelectColumn(DynaformPeer::PRO_UID);
$criteriaD->add(DynaformPeer::DYN_UID, trim($dataRes['DYN_UID']));
$resultD = DynaformPeer::doSelectRS($criteriaD);
$resultD->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$resultD->next();
$configuration = $resultD->getRow();
$field = new \stdClass();
$field = new stdClass();
$field->type = '';
$field->label = '';
$field->options = [];
$obj = new PmDynaform($configuration);
$message = G::LoadTranslation('ID_CASE_RESPONSE_NOT_AVAILABLE');
if ($dataRes['ABE_RES_DATA'] !== '') {
$value = unserialize($dataRes['ABE_RES_DATA']);
$actionField = str_replace(array('@@','@#','@=','@%','@?','@$'), '', $dataRes['ABE_ACTION_FIELD']);
$variables = G::json_decode($configuration['DYN_CONTENT'], true);
$value = unserialize($dataRes['ABE_RES_DATA']);
$actionField = str_replace(['@@', '@#', '@=', '@%', '@?', '@$'], '', $dataRes['ABE_ACTION_FIELD']);
$variables = G::json_decode($configuration['DYN_CONTENT'], true);
if (is_array($value)) {
if(isset($variables['items'][0]['items'])) {
if (isset($variables['items'][0]['items'])) {
$fields = $variables['items'][0]['items'];
}
} else {
if(isset($variables['items'][0]['items'])) {
if (isset($variables['items'][0]['items'])) {
$fields = $variables['items'][0]['items'];
foreach ($fields as $key => $row) {
foreach($row as $var) {
if(isset($var['variable'])) {
foreach ($row as $var) {
if (isset($var['variable'])) {
if ($var['variable'] === $actionField) {
$field->label = isset($var['label']) ? $var['label'] : '';
$field->type = isset($var['type']) ? $var['type'] : '';
$field->type = isset($var['type']) ? $var['type'] : '';
$values = $var['options'];
foreach ($values as $val){
foreach ($values as $val) {
$field->options[$val['value']] = $val['value'];
}
}
@@ -592,22 +594,22 @@ class ActionsByEmail
}
}
}
$message = '';
switch ($field->type) {
case 'dropdown':
case 'radiogroup':
case 'radio':
$message .= $field->label . ': ';
$message = $field->label . ': ';
$message .= $field->options[$value];
break;
case 'yesno':
$message .= $field->label . ': ';
$message .= ($value == 1) ? G::loadTranslation('ID_YES') : G::loadTranslation('ID_NO');
$message = $field->label . ': ';
$message .= $value == 1 ? G::LoadTranslation('ID_YES') : G::LoadTranslation('ID_NO');
break;
case 'checkgroup':
case 'checkbox':
$message .= $field->label . ': ';
$message .= ($value == 'On') ? G::loadTranslation('ID_CHECK') : G::loadTranslation('ID_UNCHECK');
$message = $field->label . ': ';
$message .= $value == 'On' ? G::LoadTranslation('ID_CHECK') : G::LoadTranslation('ID_UNCHECK');
break;
}
}

View File

@@ -937,7 +937,7 @@ class InputDocument
*/
public function uploadFileCase($files, $caseInstance, $aData, $userUid, $appUid, $delIndex)
{
ValidationUploadedFiles::getValidationUploadedFiles()->dispach(function($validator) {
ValidationUploadedFiles::getValidationUploadedFiles()->dispatch(function($validator) {
G::SendMessageText($validator->getMessage(), "ERROR");
$url = explode("sys" . config("system.workspace"), $_SERVER['HTTP_REFERER']);
G::header("location: " . "/sys" . config("system.workspace") . $url[1]);

View File

@@ -216,7 +216,7 @@ class ValidationUploadedFiles
* @param function $callback
* @return $this
*/
public function dispach($callback)
public function dispatch($callback)
{
if (!empty($this->fails[0])) {
if (!empty($callback) && is_callable($callback)) {