Merged in marcoAntonioNina/processmaker (pull request #487)
Improvement register client Oauth in Install and upgrade
This commit is contained in:
@@ -96,6 +96,13 @@ class workspaceTools
|
|||||||
$stop = microtime(true);
|
$stop = microtime(true);
|
||||||
$final = $stop - $start;
|
$final = $stop - $start;
|
||||||
CLI::logging("<*> Backup log files Process took $final seconds.\n");
|
CLI::logging("<*> Backup log files Process took $final seconds.\n");
|
||||||
|
|
||||||
|
$start = microtime(true);
|
||||||
|
CLI::logging("> check Mafe Requirements...\n");
|
||||||
|
$this->checkMafeRequirements($workSpace, $lang);
|
||||||
|
$stop = microtime(true);
|
||||||
|
$final = $stop - $start;
|
||||||
|
CLI::logging("<*> Check Mafe Requirements Process took $final seconds.\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1440,5 +1447,44 @@ class workspaceTools
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function checkMafeRequirements ($workspace,$lang) {
|
||||||
|
$this->initPropel(true);
|
||||||
|
$pmRestClient = OauthClientsPeer::retrieveByPK('x-pm-local-client');
|
||||||
|
if (empty($pmRestClient)) {
|
||||||
|
if (is_file(PATH_DATA . 'sites/' . $workspace . '/' . '.server_info')) {
|
||||||
|
$SERVER_INFO = file_get_contents(PATH_DATA . 'sites/' . $workspace . '/'.'.server_info');
|
||||||
|
$SERVER_INFO = unserialize($SERVER_INFO);
|
||||||
|
|
||||||
|
$envFile = PATH_CONFIG . 'env.ini';
|
||||||
|
$skin ='neoclassic';
|
||||||
|
if (file_exists($envFile) ) {
|
||||||
|
$sysConf = System::getSystemConfiguration($envFile);
|
||||||
|
$lang = $sysConf['default_lang'];
|
||||||
|
$skin = $sysConf['default_skin'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$endpoint = sprintf(
|
||||||
|
'%s/sys%s/%s/%s/oauth2/grant',
|
||||||
|
$SERVER_INFO['HTTP_ORIGIN'],
|
||||||
|
$workspace,
|
||||||
|
$lang,
|
||||||
|
$skin
|
||||||
|
);
|
||||||
|
|
||||||
|
$oauthClients = new OauthClients();
|
||||||
|
$oauthClients->setClientId('x-pm-local-client');
|
||||||
|
$oauthClients->setClientSecret('179ad45c6ce2cb97cf1029e212046e81');
|
||||||
|
$oauthClients->setClientName('PM Web Designer');
|
||||||
|
$oauthClients->setClientDescription('ProcessMaker Web Designer App');
|
||||||
|
$oauthClients->setClientWebsite('www.processmaker.com');
|
||||||
|
$oauthClients->setRedirectUri($endpoint);
|
||||||
|
$oauthClients->save();
|
||||||
|
} else {
|
||||||
|
eprintln("WARNING! No server info found!", 'red');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -862,6 +862,26 @@ class Installer extends Controller
|
|||||||
$updatedConf['default_skin'] = $skinUri;
|
$updatedConf['default_skin'] = $skinUri;
|
||||||
$info->uri = PATH_SEP . 'sys' . $_REQUEST['workspace'] . PATH_SEP . $langUri . PATH_SEP . $skinUri . PATH_SEP . 'login' . PATH_SEP . 'login';
|
$info->uri = PATH_SEP . 'sys' . $_REQUEST['workspace'] . PATH_SEP . $langUri . PATH_SEP . $skinUri . PATH_SEP . 'login' . PATH_SEP . 'login';
|
||||||
|
|
||||||
|
//register PMDesigner Client
|
||||||
|
$http = (G::is_https() == true) ? 'https' : 'http';
|
||||||
|
$host = $_SERVER['SERVER_NAME'] . ($_SERVER['SERVER_PORT'] != '80' ? ':' . $_SERVER['SERVER_PORT'] : '');
|
||||||
|
|
||||||
|
$endpoint = sprintf(
|
||||||
|
'%s://%s/sys%s/%s/%s/oauth2/grant',
|
||||||
|
$http,
|
||||||
|
$host,
|
||||||
|
$wf,
|
||||||
|
$langUri,
|
||||||
|
$skinUri
|
||||||
|
);
|
||||||
|
|
||||||
|
// inserting the outh_client
|
||||||
|
$query = sprintf( "USE %s;", $wf );
|
||||||
|
$this->mysqlQuery( $query );
|
||||||
|
$query = ( "INSERT INTO OAUTH_CLIENTS (CLIENT_ID,CLIENT_SECRET,CLIENT_NAME,CLIENT_DESCRIPTION,CLIENT_WEBSITE,REDIRECT_URI,USR_UID ) VALUES
|
||||||
|
('x-pm-local-client','179ad45c6ce2cb97cf1029e212046e81','PM Web Designer','ProcessMaker Web Designer App','www.processmaker.com','" . $endpoint . "','00000000000000000000000000000001' )");
|
||||||
|
$this->mysqlQuery( $query );
|
||||||
|
|
||||||
$indexFileUpdated = true;
|
$indexFileUpdated = true;
|
||||||
if (defined('PARTNER_FLAG') || isset($_REQUEST['PARTNER_FLAG'])) {
|
if (defined('PARTNER_FLAG') || isset($_REQUEST['PARTNER_FLAG'])) {
|
||||||
$this->buildParternExtras($adminUsername, $adminPassword, $_REQUEST['workspace'], $langUri, $skinUri);
|
$this->buildParternExtras($adminUsername, $adminPassword, $_REQUEST['workspace'], $langUri, $skinUri);
|
||||||
|
|||||||
Reference in New Issue
Block a user