diff --git a/composer.json b/composer.json
index 8771ebdaa..24a76e25a 100644
--- a/composer.json
+++ b/composer.json
@@ -64,7 +64,8 @@
"phpmyadmin/sql-parser": "^5.3",
"aws/aws-sdk-php": "~3.0",
"cretueusebiu/laravel-javascript": "^0.2.1",
- "stevenmaguire/oauth2-microsoft": "^2.2"
+ "stevenmaguire/oauth2-microsoft": "^2.2",
+ "phpseclib/mcrypt_compat": "^2.0"
},
"require-dev": {
"guzzlehttp/guzzle": "^6.3",
diff --git a/composer.lock b/composer.lock
index 252b18ed7..e570dc1fc 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "0cfdbd7bd38cb8bdeebe9625a7d66455",
+ "content-hash": "5bcf521c2f8df8459b05200fbdef3ed7",
"packages": [
{
"name": "aws/aws-crt-php",
@@ -2357,6 +2357,73 @@
],
"time": "2021-04-09T13:42:10+00:00"
},
+ {
+ "name": "paragonie/constant_time_encoding",
+ "version": "v2.4.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/paragonie/constant_time_encoding.git",
+ "reference": "f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c",
+ "reference": "f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7|^8"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^6|^7|^8|^9",
+ "vimeo/psalm": "^1|^2|^3|^4"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "ParagonIE\\ConstantTime\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Paragon Initiative Enterprises",
+ "email": "security@paragonie.com",
+ "homepage": "https://paragonie.com",
+ "role": "Maintainer"
+ },
+ {
+ "name": "Steve 'Sc00bz' Thomas",
+ "email": "steve@tobtu.com",
+ "homepage": "https://www.tobtu.com",
+ "role": "Original Developer"
+ }
+ ],
+ "description": "Constant-time Implementations of RFC 4648 Encoding (Base-64, Base-32, Base-16)",
+ "keywords": [
+ "base16",
+ "base32",
+ "base32_decode",
+ "base32_encode",
+ "base64",
+ "base64_decode",
+ "base64_encode",
+ "bin2hex",
+ "encoding",
+ "hex",
+ "hex2bin",
+ "rfc4648"
+ ],
+ "support": {
+ "email": "info@paragonie.com",
+ "issues": "https://github.com/paragonie/constant_time_encoding/issues",
+ "source": "https://github.com/paragonie/constant_time_encoding"
+ },
+ "time": "2020-12-06T15:14:20+00:00"
+ },
{
"name": "paragonie/random_compat",
"version": "v9.99.100",
@@ -3045,6 +3112,185 @@
],
"time": "2021-02-05T14:33:29+00:00"
},
+ {
+ "name": "phpseclib/mcrypt_compat",
+ "version": "2.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phpseclib/mcrypt_compat.git",
+ "reference": "299da4c7e7e41c8d4964e894a90ca4c96175846b"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phpseclib/mcrypt_compat/zipball/299da4c7e7e41c8d4964e894a90ca4c96175846b",
+ "reference": "299da4c7e7e41c8d4964e894a90ca4c96175846b",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.6.1",
+ "phpseclib/phpseclib": ">=3.0.12 <4.0.0"
+ },
+ "provide": {
+ "ext-mcrypt": "5.6.40"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^5.7|^6.0|^9.4"
+ },
+ "suggest": {
+ "ext-openssl": "Will enable faster cryptographic operations"
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "lib/mcrypt.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Jim Wigginton",
+ "email": "terrafrost@php.net",
+ "homepage": "http://phpseclib.sourceforge.net"
+ }
+ ],
+ "description": "PHP 5.x/7.x polyfill for mcrypt extension",
+ "keywords": [
+ "cryptograpy",
+ "encryption",
+ "mcrypt",
+ "polyfill"
+ ],
+ "support": {
+ "email": "terrafrost@php.net",
+ "issues": "https://github.com/phpseclib/mcrypt_compat/issues",
+ "source": "https://github.com/phpseclib/mcrypt_compat"
+ },
+ "funding": [
+ {
+ "url": "https://www.patreon.com/phpseclib",
+ "type": "patreon"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/phpseclib/mcrypt_compat",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2021-11-29T02:38:47+00:00"
+ },
+ {
+ "name": "phpseclib/phpseclib",
+ "version": "3.0.12",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phpseclib/phpseclib.git",
+ "reference": "89bfb45bd8b1abc3b37e910d57f5dbd3174f40fb"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/89bfb45bd8b1abc3b37e910d57f5dbd3174f40fb",
+ "reference": "89bfb45bd8b1abc3b37e910d57f5dbd3174f40fb",
+ "shasum": ""
+ },
+ "require": {
+ "paragonie/constant_time_encoding": "^1|^2",
+ "paragonie/random_compat": "^1.4|^2.0|^9.99.99",
+ "php": ">=5.6.1"
+ },
+ "require-dev": {
+ "phing/phing": "~2.7",
+ "phpunit/phpunit": "^5.7|^6.0|^9.4",
+ "squizlabs/php_codesniffer": "~2.0"
+ },
+ "suggest": {
+ "ext-gmp": "Install the GMP (GNU Multiple Precision) extension in order to speed up arbitrary precision integer arithmetic operations.",
+ "ext-libsodium": "SSH2/SFTP can make use of some algorithms provided by the libsodium-php extension.",
+ "ext-mcrypt": "Install the Mcrypt extension in order to speed up a few other cryptographic operations.",
+ "ext-openssl": "Install the OpenSSL extension in order to speed up a wide variety of cryptographic operations."
+ },
+ "type": "library",
+ "autoload": {
+ "files": [
+ "phpseclib/bootstrap.php"
+ ],
+ "psr-4": {
+ "phpseclib3\\": "phpseclib/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Jim Wigginton",
+ "email": "terrafrost@php.net",
+ "role": "Lead Developer"
+ },
+ {
+ "name": "Patrick Monnerat",
+ "email": "pm@datasphere.ch",
+ "role": "Developer"
+ },
+ {
+ "name": "Andreas Fischer",
+ "email": "bantu@phpbb.com",
+ "role": "Developer"
+ },
+ {
+ "name": "Hans-Jürgen Petrich",
+ "email": "petrich@tronic-media.com",
+ "role": "Developer"
+ },
+ {
+ "name": "Graham Campbell",
+ "email": "graham@alt-three.com",
+ "role": "Developer"
+ }
+ ],
+ "description": "PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.",
+ "homepage": "http://phpseclib.sourceforge.net",
+ "keywords": [
+ "BigInteger",
+ "aes",
+ "asn.1",
+ "asn1",
+ "blowfish",
+ "crypto",
+ "cryptography",
+ "encryption",
+ "rsa",
+ "security",
+ "sftp",
+ "signature",
+ "signing",
+ "ssh",
+ "twofish",
+ "x.509",
+ "x509"
+ ],
+ "support": {
+ "issues": "https://github.com/phpseclib/phpseclib/issues",
+ "source": "https://github.com/phpseclib/phpseclib/tree/3.0.12"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/terrafrost",
+ "type": "github"
+ },
+ {
+ "url": "https://www.patreon.com/phpseclib",
+ "type": "patreon"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/phpseclib/phpseclib",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2021-11-28T23:46:03+00:00"
+ },
{
"name": "predis/predis",
"version": "v1.1.1",
@@ -8143,5 +8389,5 @@
"php": ">=7.1"
},
"platform-dev": [],
- "plugin-api-version": "1.1.0"
+ "plugin-api-version": "2.0.0"
}
diff --git a/database/factories/ApplicationFactory.php b/database/factories/ApplicationFactory.php
index c545b3e11..74ba1720d 100644
--- a/database/factories/ApplicationFactory.php
+++ b/database/factories/ApplicationFactory.php
@@ -96,6 +96,18 @@ $factory->state(\ProcessMaker\Model\Application::class, 'draft', function (Faker
];
});
+$factory->state(\ProcessMaker\Model\Application::class, 'paused', function (Faker $faker) {
+ $user = factory(\ProcessMaker\Model\User::class)->create();
+
+ return [
+ 'APP_NUMBER' => $faker->unique()->numberBetween(1000),
+ 'APP_STATUS_ID' => 1,
+ 'APP_STATUS' => 'PAUSED',
+ 'APP_INIT_USER' => $user->USR_UID,
+ 'APP_INIT_USER_ID' => $user->USR_ID,
+ ];
+});
+
$factory->state(\ProcessMaker\Model\Application::class, 'completed', function (Faker $faker) {
return [
'APP_NUMBER' => $faker->unique()->numberBetween(1000),
diff --git a/gulliver/system/class.bootstrap.php b/gulliver/system/class.bootstrap.php
index e2c1ca36f..c33a86317 100644
--- a/gulliver/system/class.bootstrap.php
+++ b/gulliver/system/class.bootstrap.php
@@ -2789,4 +2789,15 @@ class Bootstrap
];
self::registerMonolog($channel, $level, $message, $context);
}
+
+ /**
+ * Build the options for a cookie, according to the system configuration and values optionally sent to this method
+ *
+ * @param array $options
+ * @return array
+ */
+ public static function buildCookieOptions(array $options = [])
+ {
+ return System::buildCookieOptions($options);
+ }
}
diff --git a/resources/assets/js/admin/Modals/ModalPreview.vue b/resources/assets/js/admin/Modals/ModalPreview.vue
index 1013426a7..b08f2b58b 100644
--- a/resources/assets/js/admin/Modals/ModalPreview.vue
+++ b/resources/assets/js/admin/Modals/ModalPreview.vue
@@ -29,12 +29,7 @@