Skip to content

Commit

Permalink
Merge branch 'master' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
DawoudIO committed Nov 5, 2016
2 parents d91fd40 + a1bc3d8 commit 2c84e68
Show file tree
Hide file tree
Showing 14 changed files with 6,702 additions and 4,742 deletions.
35 changes: 19 additions & 16 deletions src/Include/LoadConfigs.php
Original file line number Diff line number Diff line change
Expand Up @@ -72,22 +72,6 @@ function mysql_failure($message)
mysql_select_db($sDATABASE)
or mysql_failure("Could not connect to the MySQL database <strong>" . $sDATABASE . "</strong>. Please check the settings in <strong>Include/Config.php</strong>.<br/>MySQL Error: " . mysql_error());

$sql = "SHOW TABLES FROM `$sDATABASE`";
$tablecheck = mysql_num_rows(mysql_query($sql));

if (!$tablecheck) {
$systemService = new SystemService();
$setupQueries = dirname(__file__) . '/../mysql/install/Install.sql';
$systemService->playbackSQLtoDatabase($setupQueries);
$configQueries = dirname(__file__) . '/../mysql/upgrade/update_config.sql';
$systemService->playbackSQLtoDatabase($configQueries);
$version = new Version();
$version->setVersion($systemService->getInstalledVersion());
$version->setUpdateStart(new DateTime());
$version->setUpdateEnd(new DateTime());
$version->save();
}

// Initialize the session
session_name('CRM@' . $sRootPath);
session_start();
Expand Down Expand Up @@ -131,6 +115,25 @@ function mysql_failure($message)
$logger->pushHandler(new StreamHandler('/tmp/ChurchCRM.log'));
$serviceContainer->setLogger('defaultLogger', $logger);

$connection = Propel::getConnection();
$query = "SHOW TABLES FROM `$sDATABASE`";
$statement = $connection->prepare($query);
$resultset = $statement->execute();
$results = $statement->fetchAll(\PDO::FETCH_ASSOC);

if (count($results) == 0) {
$systemService = new SystemService();
$setupQueries = dirname(__file__) . '/../mysql/install/Install.sql';
$systemService->playbackSQLtoDatabase($setupQueries);
$configQueries = dirname(__file__) . '/../mysql/upgrade/update_config.sql';
$systemService->playbackSQLtoDatabase($configQueries);
$version = new Version();
$version->setVersion($systemService->getInstalledVersion());
$version->setUpdateStart(new DateTime());
$version->setUpdateEnd(new DateTime());
$version->save();
}

// Read values from config table into local variables
// **************************************************

Expand Down
8 changes: 4 additions & 4 deletions src/IntegrityCheck.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,13 @@
if(count($IntegrityCheckDetails->files) > 0 )
{
?>
<p><?= gettext("Files failing integrity check:") ?>
<p><?= gettext("Files failing integrity check") ?>:
<ul>
<?php
foreach ($IntegrityCheckDetails->files as $file)
{
?>
<li>FileName: <?= $file->filename ?>
<li><?= gettext("Filename")?>: <?= $file->filename ?>
<?php
if($file->status == "File Missing")
{
Expand All @@ -46,8 +46,8 @@
{
?>
<ul>
<li><?= gettext("Expected Hash:")?> <?= $file->expectedhash ?></li>
<li><?= gettext("Actual Hash:") ?> <?= $file->actualhash ?></li>
<li><?= gettext("Expected Hash")?>: <?= $file->expectedhash ?></li>
<li><?= gettext("Actual Hash") ?>: <?= $file->actualhash ?></li>
</ul>
<?php
}
Expand Down
2 changes: 1 addition & 1 deletion src/PersonView.php
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
}

// Get this person's data
$sSQL = "SELECT a.*, family_fam.*, cls.lst_OptionName AS sClassName, fmr.lst_OptionName AS sFamRole, b.per_FirstName AS EnteredFirstName, b.per_ID AS EnteredId,
$sSQL = "SELECT a.*, family_fam.*, COALESCE(cls.lst_OptionName , 'Unassigned') AS sClassName, fmr.lst_OptionName AS sFamRole, b.per_FirstName AS EnteredFirstName, b.per_ID AS EnteredId,
b.Per_LastName AS EnteredLastName, c.per_FirstName AS EditedFirstName, c.per_LastName AS EditedLastName, c.per_ID AS EditedId
FROM person_per a
LEFT JOIN family_fam ON a.per_fam_ID = family_fam.fam_ID
Expand Down
1 change: 1 addition & 0 deletions src/Register.php
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
<form id="registerForm">
<div class="box-body">
<?= gettext('Church Name') ?>: <?= $systemConfig->getValue("sChurchName"); ?><br>
<?= gettext('Version') ?>: <?= $systemService->getInstalledVersion(); ?><br>
<?= gettext('Address') ?>: <?= $systemConfig->getValue("sChurchAddress"); ?><br>
<?= gettext('City') ?>: <?= $systemConfig->getValue("sChurchCity"); ?><br>
<?= gettext('State') ?>: <?= $systemConfig->getValue("sChurchState"); ?><br>
Expand Down
36 changes: 21 additions & 15 deletions src/Service/SystemService.php
Original file line number Diff line number Diff line change
Expand Up @@ -457,37 +457,43 @@ function verifyApplicationIntegrity()
{
$CRMInstallRoot = dirname(__DIR__);
$signatureFile = $CRMInstallRoot."/signatures.json";
$signatureData = json_decode(file_get_contents($signatureFile));
$signatureFailures = array();

if (sha1(json_encode($signatureData->files)) == $signatureData->sha1)
if (file_exists($signatureFile))
{
foreach ($signatureData->files as $file)
$signatureData = json_decode(file_get_contents($signatureFile));
if (sha1(json_encode($signatureData->files)) == $signatureData->sha1)
{
if(file_exists($CRMInstallRoot."/".$file->filename))
foreach ($signatureData->files as $file)
{
$actualHash = sha1_file($CRMInstallRoot."/".$file->filename);
if ( $actualHash != $file->sha1 )
if(file_exists($CRMInstallRoot."/".$file->filename))
{
array_push($signatureFailures, array("filename"=>$file->filename,"status"=>"Hash Mismatch", "expectedhash"=>$file->sha1,"actualhash"=>$actualHash));
$actualHash = sha1_file($CRMInstallRoot."/".$file->filename);
if ( $actualHash != $file->sha1 )
{
array_push($signatureFailures, array("filename"=>$file->filename,"status"=>"Hash Mismatch", "expectedhash"=>$file->sha1,"actualhash"=>$actualHash));
}
}
else
{
array_push($signatureFailures, array("filename"=>$file->filename,"status"=>"File Missing"));
}
}
else
{
array_push($signatureFailures, array("filename"=>$file->filename,"status"=>"File Missing"));
}
}
else
{
return array("status"=>"failure","message"=>gettext("Signature definition file signature failed validation"));
}
}
else
{
return array("status"=>"failure","message"=>"Signature Definition file signature failed validation");
return array("status"=>"failure","message"=>gettext("Signature definition File Missing"));
}

if(count($signatureFailures) > 0 )
{
return array("status"=>"failure","files"=>$signatureFailures);
return array("status"=>"failure","message"=>gettext("One or more files failed signature validation"),"files"=>$signatureFailures);
}
else
else
{
return array("status"=>"success");
}
Expand Down
1 change: 1 addition & 0 deletions src/api/routes/register.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
$registrationData->sCountry = $systemConfig->getValue("sDefaultCountry");
$registrationData->sEmail = $systemConfig->getValue("sChurchEmail");
$registrationData->ChurchCRMURL = $input->ChurchCRMURL;
$registrationData->Version = $this->SystemService->getInstalledVersion();

$registrationData->sComments = $input->emailmessage;
$curlService = curl_init("http://demo.churchcrm.io/register.php");
Expand Down
Binary file modified src/locale/es_ES/LC_MESSAGES/messages.mo
Binary file not shown.
Loading

0 comments on commit 2c84e68

Please sign in to comment.