Merged colosa/processmaker into master
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
<?php
|
||||
namespace Maveriks\Pattern\Mvc;
|
||||
|
||||
use Maveriks\Util\Common;
|
||||
|
||||
class SmartyView extends View
|
||||
{
|
||||
protected $smarty;
|
||||
@@ -13,8 +15,13 @@ class SmartyView extends View
|
||||
$this->smarty = new \Smarty();
|
||||
$this->smarty->compile_dir = defined('PATH_SMARTY_C')? PATH_SMARTY_C : sys_get_temp_dir();
|
||||
$this->smarty->cache_dir = defined('PATH_SMARTY_CACHE')? PATH_SMARTY_CACHE : sys_get_temp_dir();
|
||||
//$this->smarty->config_dir = PATH_THIRDPARTY . 'smarty/configs';
|
||||
//$this->smarty->register_function('translate', 'translate');
|
||||
|
||||
if (! is_dir($this->smarty->compile_dir)) {
|
||||
Common::mk_dir($this->smarty->compile_dir);
|
||||
}
|
||||
if (! is_dir($this->smarty->cache_dir)) {
|
||||
Common::mk_dir($this->smarty->cache_dir);
|
||||
}
|
||||
}
|
||||
|
||||
public function assign($name, $value)
|
||||
|
||||
@@ -96,8 +96,6 @@ class WebApplication
|
||||
*/
|
||||
public function route()
|
||||
{
|
||||
$this->requestUri = strlen($this->requestUri) > 1? rtrim($this->requestUri, '/'): $this->requestUri;
|
||||
|
||||
if ($this->requestUri === "/") {
|
||||
if (file_exists("index.html")) {
|
||||
return self::RUNNING_INDEX;
|
||||
@@ -118,34 +116,49 @@ class WebApplication
|
||||
return self::RUNNING_WORKFLOW;
|
||||
}
|
||||
|
||||
/*$workspace = $uriParts[1];
|
||||
$class = 'oauth2';
|
||||
$action = isset($uriParts[3])? $uriParts[3]: 'index';*/
|
||||
|
||||
$uriTemp = explode('/', $_SERVER['REQUEST_URI']);
|
||||
array_shift($uriTemp);
|
||||
$workspace = array_shift($uriTemp);
|
||||
$_SERVER['REQUEST_URI'] = '/' . implode('/', $uriTemp);
|
||||
|
||||
$this->loadEnvironment($workspace);
|
||||
$this->configureRest($workspace, '1.0');
|
||||
//var_dump(class_exists('ProcessMaker\\Services\\OAuth2\\Server'));
|
||||
$this->rest->addAPIClass('\ProcessMaker\\Services\\OAuth2\\Server', 'oauth2');
|
||||
$this->rest->handle();
|
||||
|
||||
/*
|
||||
// $pmOauthClientId - contains PM Local OAuth Id (Web Designer)
|
||||
$pmOauthClientId = 'x-pm-local-client';
|
||||
|
||||
$this->loadEnvironment($workspace);
|
||||
// Setting current workspace to Api class
|
||||
Services\Api::setWorkspace($workspace);
|
||||
$cacheDir = defined("PATH_C")? PATH_C: sys_get_temp_dir();
|
||||
|
||||
require_once PATH_CONTROLLERS . $class . '.php';
|
||||
$sysConfig = \System::getSystemConfiguration();
|
||||
|
||||
if (is_callable(array($class, $action))) {
|
||||
$controller = new $class();
|
||||
$controller->setHttpRequestData($_REQUEST);
|
||||
$controller->call($action);
|
||||
} else {
|
||||
header('location: /errors/error404?url=' . urlencode($this->requestUri));
|
||||
}*/
|
||||
\Luracast\Restler\Defaults::$cacheDirectory = $cacheDir;
|
||||
$productionMode = !(isset($sysConfig["service_api_debug"]) && $sysConfig["service_api_debug"]);
|
||||
|
||||
Util\Logger::log("Serving API mode: " . ($productionMode? "production": "development"));
|
||||
|
||||
// create a new Restler instance
|
||||
//$rest = new \Luracast\Restler\Restler();
|
||||
$rest = new \Maveriks\Extension\Restler($productionMode);
|
||||
$rest->setworkspace($workspace);
|
||||
|
||||
// setting api version to Restler
|
||||
$rest->setAPIVersion('1.0');
|
||||
// adding $authenticationClass to Restler
|
||||
|
||||
// Setting database connection source
|
||||
list($host, $port) = strpos(DB_HOST, ':') !== false ? explode(':', DB_HOST) : array(DB_HOST, '');
|
||||
$port = empty($port) ? '' : ";port=$port";
|
||||
Services\OAuth2\Server::setDatabaseSource(DB_USER, DB_PASS, DB_ADAPTER.":host=$host;dbname=".DB_NAME.$port);
|
||||
|
||||
// Setting default OAuth Client id, for local PM Web Designer
|
||||
Services\OAuth2\Server::setPmClientId($pmOauthClientId);
|
||||
Services\OAuth2\Server::setWorkspace($workspace);
|
||||
|
||||
$rest->setOverridingFormats('JsonFormat', 'UploadFormat');
|
||||
|
||||
$rest->addAPIClass('\ProcessMaker\\Services\\OAuth2\\Server', 'oauth2');
|
||||
$rest->handle();
|
||||
|
||||
} else {
|
||||
return self::RUNNING_WORKFLOW;
|
||||
@@ -244,7 +257,7 @@ class WebApplication
|
||||
*/
|
||||
header('Access-Control-Allow-Origin: *');
|
||||
|
||||
$_SERVER['REQUEST_URI'] = $uri;
|
||||
$_SERVER['REQUEST_URI'] = $uri;
|
||||
|
||||
$this->rest->inputExecute = $inputExecute;
|
||||
$this->rest->handle();
|
||||
@@ -269,6 +282,8 @@ class WebApplication
|
||||
$apiIniFile = $servicesDir . DS . 'api.ini';
|
||||
// $authenticationClass - contains the class name that validate the authentication for Restler
|
||||
$authenticationClass = 'ProcessMaker\\Services\\OAuth2\\Server';
|
||||
// $pmOauthClientId - contains PM Local OAuth Id (Web Designer)
|
||||
$pmOauthClientId = 'x-pm-local-client';
|
||||
|
||||
/*
|
||||
* Load Api ini file for Rest Service
|
||||
@@ -292,9 +307,37 @@ class WebApplication
|
||||
}
|
||||
}
|
||||
|
||||
$this->configureRest(SYS_SYS, $version, $multipart);
|
||||
// Setting current workspace to Api class
|
||||
Services\Api::setWorkspace(SYS_SYS);
|
||||
$cacheDir = defined("PATH_C")? PATH_C: sys_get_temp_dir();
|
||||
|
||||
$sysConfig = \System::getSystemConfiguration();
|
||||
|
||||
\Luracast\Restler\Defaults::$cacheDirectory = $cacheDir;
|
||||
$productionMode = (bool) !(isset($sysConfig["service_api_debug"]) && $sysConfig["service_api_debug"]);
|
||||
|
||||
Util\Logger::log("Serving API mode: " . ($productionMode? "production": "development"));
|
||||
|
||||
// create a new Restler instance
|
||||
//$rest = new \Luracast\Restler\Restler();
|
||||
$this->rest = new \Maveriks\Extension\Restler($productionMode);
|
||||
// setting flag for multipart to Restler
|
||||
$this->rest->setFlagMultipart($multipart);
|
||||
// setting api version to Restler
|
||||
$this->rest->setAPIVersion($version);
|
||||
// adding $authenticationClass to Restler
|
||||
$this->rest->addAuthenticationClass($authenticationClass, '');
|
||||
|
||||
// Setting database connection source
|
||||
list($host, $port) = strpos(DB_HOST, ':') !== false ? explode(':', DB_HOST) : array(DB_HOST, '');
|
||||
$port = empty($port) ? '' : ";port=$port";
|
||||
Services\OAuth2\Server::setDatabaseSource(DB_USER, DB_PASS, DB_ADAPTER.":host=$host;dbname=".DB_NAME.$port);
|
||||
|
||||
// Setting default OAuth Client id, for local PM Web Designer
|
||||
Services\OAuth2\Server::setPmClientId($pmOauthClientId);
|
||||
|
||||
$this->rest->setOverridingFormats('JsonFormat', 'UploadFormat');
|
||||
|
||||
$isPluginRequest = strpos($uri, '/plugin-') !== false ? true : false;
|
||||
|
||||
if ($isPluginRequest) {
|
||||
@@ -319,7 +362,7 @@ class WebApplication
|
||||
$namespace = strpos($namespace, "//") === false? $namespace: str_replace("//", '', $namespace);
|
||||
|
||||
//if (! class_exists($namespace)) {
|
||||
require_once $classFile;
|
||||
require_once $classFile;
|
||||
//}
|
||||
|
||||
$this->rest->addAPIClass($namespace);
|
||||
@@ -352,44 +395,6 @@ class WebApplication
|
||||
}
|
||||
}
|
||||
|
||||
public function configureRest($workspace, $version, $multipart = false)
|
||||
{
|
||||
// $pmOauthClientId - contains PM Local OAuth Id (Web Designer)
|
||||
$pmOauthClientId = 'x-pm-local-client';
|
||||
|
||||
// Setting current workspace to Api class
|
||||
Services\Api::setWorkspace($workspace);
|
||||
$cacheDir = defined("PATH_C")? PATH_C: sys_get_temp_dir();
|
||||
|
||||
$sysConfig = \System::getSystemConfiguration();
|
||||
|
||||
\Luracast\Restler\Defaults::$cacheDirectory = $cacheDir;
|
||||
$productionMode = false; //(bool) !(isset($sysConfig["service_api_debug"]) && $sysConfig["service_api_debug"]);
|
||||
|
||||
Util\Logger::log("Serving API mode: " . ($productionMode? "production": "development"));
|
||||
|
||||
// create a new Restler instance
|
||||
//$rest = new \Luracast\Restler\Restler();
|
||||
$this->rest = new \Maveriks\Extension\Restler($productionMode);
|
||||
$this->rest->setworkspace($workspace);
|
||||
// setting flag for multipart to Restler
|
||||
$this->rest->setFlagMultipart($multipart);
|
||||
// setting api version to Restler
|
||||
$this->rest->setAPIVersion($version);
|
||||
// adding $authenticationClass to Restler
|
||||
|
||||
// Setting database connection source
|
||||
list($host, $port) = strpos(DB_HOST, ':') !== false ? explode(':', DB_HOST) : array(DB_HOST, '');
|
||||
$port = empty($port) ? '' : ";port=$port";
|
||||
Services\OAuth2\Server::setDatabaseSource(DB_USER, DB_PASS, DB_ADAPTER.":host=$host;dbname=".DB_NAME.$port);
|
||||
|
||||
// Setting default OAuth Client id, for local PM Web Designer
|
||||
Services\OAuth2\Server::setPmClientId($pmOauthClientId);
|
||||
Services\OAuth2\Server::setWorkspace($workspace);
|
||||
|
||||
$this->rest->setOverridingFormats('JsonFormat', 'UploadFormat');
|
||||
}
|
||||
|
||||
public function parseApiRequestUri()
|
||||
{
|
||||
$url = explode("/", $this->requestUri);
|
||||
@@ -574,4 +579,4 @@ class WebApplication
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -324,8 +324,8 @@ class XmlForm_Field
|
||||
return 1;
|
||||
}
|
||||
|
||||
if(isset($this->mode) && $this->mode == "view" && ($this->type == "text" || $this->type == "currency" || $this->type == "percentage" || $this->type == "textarea" || $this->type == "hidden" || $this->type == "suggest")){
|
||||
return 1;
|
||||
if(isset($this->mode) && $this->mode == "view" && ($this->type == "text" || $this->type == "currency" || $this->type == "percentage" || $this->type == "textarea" || $this->type == "hidden" || $this->type == "suggest")){
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (! $this->sqlConnection) {
|
||||
@@ -1965,7 +1965,7 @@ class XmlForm_Field_Textarea extends XmlForm_Field
|
||||
}
|
||||
|
||||
$html = '';
|
||||
$scrollStyle = $this->style . "overflow:scroll;overflow-y:scroll;overflow-x:hidden;overflow:-moz-scrollbars-vertical;";
|
||||
$scrollStyle = $this->style . "overflow:scroll;overflow-y:scroll;overflow-x:hidden;overflow:-moz-scrollbars-vertical;resize:none;";
|
||||
if ($this->renderMode == 'edit') {
|
||||
//EDIT MODE
|
||||
$readOnlyText = ($this->readOnly == 1 || $this->readOnly == '1') ? 'readOnly="readOnly"' : '';
|
||||
@@ -2031,7 +2031,7 @@ class XmlForm_Field_Textarea extends XmlForm_Field
|
||||
|
||||
$arrayOptions[$r] = $v;
|
||||
|
||||
$scrollStyle = $this->style . "overflow:scroll;overflow-y:scroll;overflow-x:hidden;overflow:-moz-scrollbars-vertical;";
|
||||
$scrollStyle = $this->style . "overflow:scroll;overflow-y:scroll;overflow-x:hidden;overflow:-moz-scrollbars-vertical;resize:none;";
|
||||
$html = '';
|
||||
if ($this->renderMode == 'edit') {
|
||||
//EDIT MODE
|
||||
|
||||
@@ -2753,7 +2753,7 @@ class Processes
|
||||
if ($oContent->Exists( $ConCategory, $ConParent, $ConId, $ConLang )) {
|
||||
$oContent->removeContent( $ConCategory, $ConParent, $ConId );
|
||||
}
|
||||
$oContent->addContent( $ConCategory, $ConParent, $ConId, $ConLang, "" );
|
||||
$oContent->addContent( $ConCategory, $ConParent, $ConId, $ConLang, $aRow['DBS_DESCRIPTION'] );
|
||||
}
|
||||
} #@!neyek
|
||||
|
||||
|
||||
@@ -672,6 +672,7 @@ class AppCacheView extends BaseAppCacheView
|
||||
}
|
||||
|
||||
$criteria->add(AppCacheViewPeer::APP_STATUS, "CANCELLED", CRITERIA::EQUAL);
|
||||
$criteria->add(AppCacheViewPeer::DEL_LAST_INDEX, '1', Criteria::EQUAL);
|
||||
|
||||
if (!empty($userUid)) {
|
||||
$criteria->add(AppCacheViewPeer::USR_UID, $userUid);
|
||||
@@ -1049,7 +1050,8 @@ class AppCacheView extends BaseAppCacheView
|
||||
)->addOr(
|
||||
//Cancelled - getCancelled()
|
||||
$criteria->getNewCriterion(AppCacheViewPeer::APP_STATUS, "CANCELLED", CRITERIA::EQUAL)->addAnd(
|
||||
$criteria->getNewCriterion(AppCacheViewPeer::DEL_THREAD_STATUS, "CLOSED"))
|
||||
$criteria->getNewCriterion(AppCacheViewPeer::DEL_THREAD_STATUS, "CLOSED"))->addAnd(
|
||||
$criteria->getNewCriterion(AppCacheViewPeer::DEL_LAST_INDEX, '1', Criteria::EQUAL))
|
||||
)->addOr(
|
||||
$criteria->getNewCriterion(AppCacheViewPeer::APP_STATUS, "COMPLETED", CRITERIA::EQUAL)->addAnd(
|
||||
$criteria->getNewCriterion(AppCacheViewPeer::DEL_LAST_INDEX, '1', Criteria::EQUAL))
|
||||
|
||||
@@ -2,7 +2,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ProcessMaker 2.5.2.3\n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: 2014-07-22 13:19:57\n"
|
||||
"PO-Revision-Date: 2014-08-21 17:02:40\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Colosa Developers Team <developers@colosa.com>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -16351,6 +16351,66 @@ msgstr "The file exists."
|
||||
msgid "The filename is required."
|
||||
msgstr "The filename is required."
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_VARIABLE_IN_USE
|
||||
#: LABEL/ID_VARIABLE_IN_USE
|
||||
msgid "The variable with var_uid: {0} is being used by dynaform with dyn_uid: {1}"
|
||||
msgstr "The variable with var_uid: {0} is being used by dynaform with dyn_uid: {1}"
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_ROUTE_IS_SECJOIN
|
||||
#: LABEL/ID_ROUTE_IS_SECJOIN
|
||||
msgid "The route is of \"SEC-JOIN\" type."
|
||||
msgstr "The route is of \"SEC-JOIN\" type."
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_ROUTE_PARENT_DOES_NOT_EXIST_FOR_ROUTE_SECJOIN
|
||||
#: LABEL/ID_ROUTE_PARENT_DOES_NOT_EXIST_FOR_ROUTE_SECJOIN
|
||||
msgid "The parent route does not exist for this route of \"SEC-JOIN\" type."
|
||||
msgstr "The parent route does not exist for this route of \"SEC-JOIN\" type."
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_GENERATE_BPMN_PROJECT
|
||||
#: LABEL/ID_GENERATE_BPMN_PROJECT
|
||||
msgid "Generate BPMN Project"
|
||||
msgstr "Generate BPMN Project"
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_PROCESS_DOES_NOT_EXIST
|
||||
#: LABEL/ID_PROCESS_DOES_NOT_EXIST
|
||||
msgid "The process with {0}: {1} does not exist."
|
||||
msgstr "The process with {0}: {1} does not exist."
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_PROJECT_IS_BPMN
|
||||
#: LABEL/ID_PROJECT_IS_BPMN
|
||||
msgid "The project with {0}: {1} is BPMN process."
|
||||
msgstr "The project with {0}: {1} is BPMN process."
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_USE_LANGUAGE_URL
|
||||
#: LABEL/ID_USE_LANGUAGE_URL
|
||||
msgid "Use the language of URL"
|
||||
msgstr "Use the language of URL"
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_SUMMARY_FORM_NO_PERMISSIONS
|
||||
#: LABEL/ID_SUMMARY_FORM_NO_PERMISSIONS
|
||||
msgid "You do not have permission to summary form"
|
||||
msgstr "You do not have permission to summary form"
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_SUMMARY_FORM
|
||||
#: LABEL/ID_SUMMARY_FORM
|
||||
msgid "Summary form"
|
||||
msgstr "Summary form"
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_LANGUAGE_CANT_DELETE_DEFAULT
|
||||
#: LABEL/ID_LANGUAGE_CANT_DELETE_DEFAULT
|
||||
msgid "You can't delete the default language."
|
||||
msgstr "You can't delete the default language."
|
||||
|
||||
# additionalTables/additionalTablesData.xml?ADD_TAB_NAME
|
||||
# additionalTables/additionalTablesData.xml
|
||||
#: text - ADD_TAB_NAME
|
||||
@@ -27545,6 +27605,12 @@ msgstr "Cases Notes"
|
||||
msgid "[processes/processes_EditObjectPermission.xml?OP_OBJ_TYPE-MSGS_HISTORY]"
|
||||
msgstr "Messages History"
|
||||
|
||||
# processes/processes_EditObjectPermission.xml?OP_OBJ_TYPE-SUMMARY_FORM
|
||||
# processes/processes_EditObjectPermission.xml
|
||||
#: dropdown - OP_OBJ_TYPE - SUMMARY_FORM
|
||||
msgid "[processes/processes_EditObjectPermission.xml?OP_OBJ_TYPE-SUMMARY_FORM]"
|
||||
msgstr "Summary Form"
|
||||
|
||||
# processes/processes_EditObjectPermission.xml?ALL
|
||||
# processes/processes_EditObjectPermission.xml
|
||||
#: dropdown - ALL
|
||||
@@ -28145,6 +28211,12 @@ msgstr "Cases Notes"
|
||||
msgid "[processes/processes_NewObjectPermission.xml?OP_OBJ_TYPE-MSGS_HISTORY]"
|
||||
msgstr "Messages History"
|
||||
|
||||
# processes/processes_NewObjectPermission.xml?OP_OBJ_TYPE-SUMMARY_FORM
|
||||
# processes/processes_NewObjectPermission.xml
|
||||
#: dropdown - OP_OBJ_TYPE - SUMMARY_FORM
|
||||
msgid "[processes/processes_NewObjectPermission.xml?OP_OBJ_TYPE-SUMMARY_FORM]"
|
||||
msgstr "Summary Form"
|
||||
|
||||
# processes/processes_NewObjectPermission.xml?ALL
|
||||
# processes/processes_NewObjectPermission.xml
|
||||
#: dropdown - ALL
|
||||
|
||||
@@ -101,7 +101,9 @@ $allUsers = getAllUsersArray( $action );
|
||||
|
||||
$oHeadPublisher->assign( 'reassignReaderFields', $reassignReaderFields ); //sending the fields to get from proxy
|
||||
$oHeadPublisher->addExtJsScript( 'cases/reassignList', false );
|
||||
$enableEnterprise = false;
|
||||
if (class_exists( 'enterprisePlugin' )) {
|
||||
$enableEnterprise = true;
|
||||
$oHeadPublisher->addExtJsScript(PATH_PLUGINS . "enterprise" . PATH_SEP . "advancedTools" . PATH_SEP , false, true);
|
||||
}
|
||||
|
||||
@@ -117,6 +119,7 @@ $oHeadPublisher->assign( 'categoryValues', $category ); //Sending the listing of
|
||||
$oHeadPublisher->assign( 'userValues', $users ); //Sending the listing of users
|
||||
$oHeadPublisher->assign( 'allUsersValues', $allUsers ); //Sending the listing of all users
|
||||
$oHeadPublisher->assign( 'solrEnabled', $solrEnabled ); //Sending the status of solar
|
||||
$oHeadPublisher->assign( 'enableEnterprise', $enableEnterprise ); //sending the page size
|
||||
|
||||
//menu permissions
|
||||
/*$c = new Criteria('workflow');
|
||||
|
||||
@@ -0,0 +1,129 @@
|
||||
<?php
|
||||
|
||||
namespace ProcessMaker\Services\OAuth2;
|
||||
|
||||
use OAuth2\ClientAssertionType\HttpBasic;
|
||||
use OAuth2\ResponseType\AccessTokenInterface;
|
||||
use OAuth2\Storage\ClientCredentialsInterface;
|
||||
use OAuth2\RequestInterface;
|
||||
use OAuth2\ResponseInterface;
|
||||
|
||||
/**
|
||||
* @author Brent Shaffer <bshafs at gmail dot com>
|
||||
*
|
||||
* @see OAuth2_ClientAssertionType_HttpBasic
|
||||
*/
|
||||
class PmClientCredentials implements \OAuth2\GrantType\GrantTypeInterface
|
||||
{
|
||||
private $clientData;
|
||||
|
||||
protected $storage;
|
||||
protected $config;
|
||||
|
||||
public function __construct(ClientCredentialsInterface $storage, array $config = array())
|
||||
{
|
||||
$this->storage = $storage;
|
||||
$this->config = array_merge(array(
|
||||
'allow_credentials_in_request_body' => true
|
||||
), $config);
|
||||
}
|
||||
|
||||
public function validateRequest(RequestInterface $request, ResponseInterface $response)
|
||||
{
|
||||
if (!$clientData = $this->getClientCredentials($request, $response)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!isset($clientData['client_id']) || !isset($clientData['client_secret'])) {
|
||||
throw new \LogicException('the clientData array must have "client_id" and "client_secret" values set.');
|
||||
}
|
||||
|
||||
if ($this->storage->checkClientCredentials($clientData['client_id'], $clientData['client_secret']) === false) {
|
||||
$response->setError(400, 'invalid_client', 'The client credentials are invalid');
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!$this->storage->checkRestrictedGrantType($clientData['client_id'], $request->request('grant_type'))) {
|
||||
$response->setError(400, 'unauthorized_client', 'The grant type is unauthorized for this client_id');
|
||||
return false;
|
||||
}
|
||||
|
||||
$this->clientData = $clientData;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getClientId()
|
||||
{
|
||||
return $this->clientData['client_id'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Internal function used to get the client credentials from HTTP basic
|
||||
* auth or POST data.
|
||||
*
|
||||
* According to the spec (draft 20), the client_id can be provided in
|
||||
* the Basic Authorization header (recommended) or via GET/POST.
|
||||
*
|
||||
* @return
|
||||
* A list containing the client identifier and password, for example
|
||||
* @code
|
||||
* return array(
|
||||
* "client_id" => CLIENT_ID, // REQUIRED the client id
|
||||
* "client_secret" => CLIENT_SECRET, // REQUIRED the client secret
|
||||
* );
|
||||
* @endcode
|
||||
*
|
||||
* @see http://tools.ietf.org/html/rfc6749#section-2.3.1
|
||||
*
|
||||
* @ingroup oauth2_section_2
|
||||
*/
|
||||
public function getClientCredentials(RequestInterface $request, ResponseInterface $response = null)
|
||||
{
|
||||
if (!is_null($request->headers('PHP_AUTH_USER')) && !is_null($request->headers('PHP_AUTH_PW'))) {
|
||||
return array('client_id' => $request->headers('PHP_AUTH_USER'), 'client_secret' => $request->headers('PHP_AUTH_PW'));
|
||||
}
|
||||
|
||||
if ($this->config['allow_credentials_in_request_body']) {
|
||||
// Using POST for HttpBasic authorization is not recommended, but is supported by specification
|
||||
if (!is_null($request->request('client_id'))) {
|
||||
/**
|
||||
* client_secret can be null if the client's password is an empty string
|
||||
* @see http://tools.ietf.org/html/rfc6749#section-2.3.1
|
||||
*/
|
||||
return array('client_id' => $request->request('client_id'), 'client_secret' => $request->request('client_secret', ''));
|
||||
}
|
||||
}
|
||||
|
||||
if ($response) {
|
||||
$response->setError(400, 'invalid_client', 'Client credentials were not found in the headers or body');
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public function getQuerystringIdentifier()
|
||||
{
|
||||
return 'client_credentials';
|
||||
}
|
||||
|
||||
public function getScope()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public function getUserId()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public function createAccessToken(AccessTokenInterface $accessToken, $client_id, $user_id, $scope)
|
||||
{
|
||||
/*
|
||||
* Client Credentials Grant does NOT include a refresh token
|
||||
* @see http://tools.ietf.org/html/rfc6749#section-4.4.3
|
||||
*/
|
||||
$includeRefreshToken = false;
|
||||
return $accessToken->createAccessToken($client_id, $user_id, $scope, $includeRefreshToken);
|
||||
}
|
||||
}
|
||||
@@ -55,7 +55,7 @@ class Server implements iAuthenticate
|
||||
$this->server->addGrantType(new \OAuth2\GrantType\AuthorizationCode($this->storage));
|
||||
|
||||
// Add the "Client Credentials" grant type (it is the simplest of the grant types)
|
||||
$this->server->addGrantType(new \OAuth2\GrantType\ClientCredentials($this->storage));
|
||||
$this->server->addGrantType(new \ProcessMaker\Services\OAuth2\PmClientCredentials($this->storage));
|
||||
|
||||
// Add the "Refresh token" grant type
|
||||
$this->server->addGrantType(new \OAuth2\GrantType\RefreshToken($this->storage));
|
||||
@@ -184,7 +184,7 @@ class Server implements iAuthenticate
|
||||
*/
|
||||
public function postAuthorize($authorize = null, $userId = null, $returnResponse = false)
|
||||
{
|
||||
session_start();
|
||||
@session_start();
|
||||
|
||||
if (! isset($_SESSION['USER_LOGGED'])) {
|
||||
throw new RestException(400, "Local Authentication Error, user session is not started.");
|
||||
|
||||
@@ -765,7 +765,9 @@ var testEmailWindow = new Ext.Window({
|
||||
autoHeight: true,
|
||||
layout: 'fit',
|
||||
y: 82,
|
||||
items: testConnForm
|
||||
items: testConnForm,
|
||||
draggable: false,
|
||||
resizable: false
|
||||
});
|
||||
|
||||
var testEmailWindowMail = new Ext.Window({
|
||||
@@ -776,7 +778,9 @@ var testEmailWindowMail = new Ext.Window({
|
||||
autoHeight: true,
|
||||
layout: 'fit',
|
||||
y: 82,
|
||||
items: testConnFormMail
|
||||
items: testConnFormMail,
|
||||
draggable: false,
|
||||
resizable: false
|
||||
});
|
||||
|
||||
var params;
|
||||
|
||||
@@ -67,14 +67,14 @@ Ext.onReady(function() {
|
||||
}
|
||||
else {
|
||||
PMExt.notify( _('ID_NOTICE'), _('ID_YOU_ARE_NOT_CAN_SELECT_PHOTO'));
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
PMExt.notify( _('ID_NOTICE'), _('ID_SELECT_AN_IMAGE'));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
tbar.add({
|
||||
text : _('ID_DELETE'),
|
||||
icon : '/images/delete-16x16.gif',
|
||||
@@ -99,7 +99,7 @@ Ext.onReady(function() {
|
||||
if (oResponse.success == true) {
|
||||
Ext.Msg.alert(_('ID_LOGO'), _('ID_SELECTED_IMAGE_IS_LOGO'));
|
||||
isCurrentLogo = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
if(isCurrentLogo == false) {
|
||||
@@ -118,7 +118,7 @@ Ext.onReady(function() {
|
||||
oResponse = Ext.decode( response.responseText );
|
||||
if (oResponse.success == true) {
|
||||
PMExt.notify( _('ID_NOTICE'), _('ID_SELECTED_IMAGE_DELETED'));
|
||||
}
|
||||
}
|
||||
else {
|
||||
PMExt.notify( _('ID_NOTICE'), _('ID_SELECTED_IMAGE_IS_LOGO'));
|
||||
}
|
||||
@@ -134,7 +134,7 @@ Ext.onReady(function() {
|
||||
}
|
||||
else {
|
||||
PMExt.notify( _('ID_NOTICE'), _('ID_YOU_ARE_NOT_CAN_SELECT_PHOTO'));
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
PMExt.notify( _('ID_NOTICE'), _('ID_SELECT_AN_IMAGE'));
|
||||
@@ -145,7 +145,7 @@ Ext.onReady(function() {
|
||||
tbar.add({
|
||||
text : _('ID_RESTORE_DEFAULT'),
|
||||
icon : '/images/icon-pmlogo-15x15.png',
|
||||
handler : function() {
|
||||
handler : function() {
|
||||
var records = datav.getSelectedRecords();
|
||||
var myMask = new Ext.LoadMask(Ext.getBody(), {msg : _('ID_LOADING')});
|
||||
myMask.show();
|
||||
@@ -183,7 +183,7 @@ Ext.onReady(function() {
|
||||
height : 800,
|
||||
multiSelect : true,
|
||||
autoScroll: true,
|
||||
overClass : 'x-view-over',
|
||||
overClass : 'x-view-over',
|
||||
itemSelector: 'div.thumb-wrap',
|
||||
emptyText : _('ID_NO_IMAGES_TO_DISPLAY'),
|
||||
|
||||
@@ -195,7 +195,7 @@ Ext.onReady(function() {
|
||||
panelLeft.setTitle(_('PHOTO_GALLERY') + '(' + l + ' ' + _('ID_IMAGE') + s + ' ' + _('ID_SELECTED') + ')');
|
||||
if (nodes.length > 0) {
|
||||
Ext.getCmp('tbarAply').enable();
|
||||
Ext.getCmp('tbarDelete').enable();
|
||||
Ext.getCmp('tbarDelete').enable();
|
||||
}
|
||||
else {
|
||||
Ext.getCmp('tbarAply').disable();
|
||||
@@ -209,7 +209,7 @@ Ext.onReady(function() {
|
||||
// fn : function() {
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
@@ -303,6 +303,8 @@ Ext.onReady(function() {
|
||||
autoScroll : true,
|
||||
closeAction : 'hide',
|
||||
maximizable : false,
|
||||
resizable : false,
|
||||
draggable : false,
|
||||
items : [panelRightTop]
|
||||
});
|
||||
|
||||
|
||||
@@ -591,7 +591,9 @@ Ext.onReady ( function() {
|
||||
if( c.dataIndex == 'APP_DEL_PREVIOUS_USER') c.renderer = previous_full_name;
|
||||
if( c.dataIndex == 'APP_CURRENT_USER') c.renderer = full_name;
|
||||
}
|
||||
c.header = __('enterprise', _(c.header));
|
||||
if (enableEnterprise) {
|
||||
c.header = __('enterprise', _(c.header));
|
||||
}
|
||||
}
|
||||
|
||||
//adding the hidden field DEL_INIT_DATE
|
||||
|
||||
@@ -75,7 +75,6 @@ systemInfo.application = {
|
||||
border: false,
|
||||
bodyStyle: "padding: 10px; font: 0.80em arial;",
|
||||
width: 250,
|
||||
height: 300,
|
||||
html: _("ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION") +'<br><br>'+ _("ID_PROCESSMAKER_REQUIREMENTS_DESCRIPTION2") +'<br><br>'+ _("ID_PROCESSMAKER_REQUIREMENTS_OPENSSL_OPTIONAL") +'<br><br>'+ _("ID_PROCESSMAKER_REQUIREMENTS_LDAP_OPTIONAL")
|
||||
});
|
||||
|
||||
@@ -88,7 +87,6 @@ systemInfo.application = {
|
||||
border: false,
|
||||
labelWidth: 200,
|
||||
width: 430,
|
||||
height: 350,
|
||||
items: [
|
||||
{
|
||||
xtype: "displayfield",
|
||||
|
||||
Reference in New Issue
Block a user