'min' => 1,
'max' => 1,
),
+ 'skip-mysql-checks' => array(
+ 'desc' => 'Skip mysql checks',
+ 'default' => '',
+ 'min' => 1,
+ 'max' => 1,
+ ),
'procedures-only' => array(
'desc' => 'Only import procedures (not supported by most modules yet) - ignores sql directory',
'default' => '',
$ff = HTML_FlexyFramework::get();
if(!isset($ff->Pman) || !isset($ff->Pman['local_base_url'])){
- die("Please setup local_base_url");
+ die("Please setup Pman[local_base_url]\n");
}
$this->local_base_url = $ff->Pman['local_base_url'];
$this->runUpdateModulesData();
-
if (!empty($opts['add-company']) && !in_array('Core', $this->disabled)) {
// make sure we have a good cache...?
}
function output() {
+ echo "\nUpdate Completed SUCCESS\n";
return '';
}
/**
echo "$module\n";
$x->updateData();
}
-
+
}
function updateDataEnums()
{
-
+ HTML_FlexyFramework::get()->generateDataobjectsCache(true);
+
$enum = DB_DataObject::Factory('core_enum');
//DB_DAtaObject::debugLevel(1);
$enum->initEnums(
)
- ),
+ )
+
)
);
'name' => 'core-person-signup-bcc',
'type' => 0, // system
),
+
+
));
}
function initEmails($templateDir, $emails)
{
-
+ HTML_FlexyFramework::get()->generateDataobjectsCache(true);
+
$pg = HTML_FlexyFramework::get()->page;
foreach($emails as $name=>$data) {
$cm = DB_DataObject::factory('core_email');
$update = $cm->get('name', $name);
$old = clone($cm);
- if (empty($cm->bcc_group)) {
+ if (empty($cm->bcc_group_id)) {
if (empty($data['bcc_group'])) {
$this->jerr("missing bcc_group for template $name");
}
$this->jerr("bcc_group {$data['bcc_group']} does not exist when importing template $name");
}
-
if (!$g->members('email')) {
$this->jerr("bcc_group {$data['bcc_group']} does not have any members");
}
- $cm->bcc_group = $g->id;
+ $cm->bcc_group_id = $g->id;
}
- if (empty($cm->test_class)) {
+ // initEmails will always have the latest location of the test class - in theory the user should not be changign the value of this...
+ //if (empty($cm->test_class)) {
if (empty($data['test_class'])) {
$this->jerr("missing test_class for template $name");
}
$cm->test_class = $data['test_class'];
+ //}
+ if(isset($cm->to_group_id)) {
+ print_r('isset');
+ }
+
+ if (
+ !empty($data['to_group']) &&
+ (!isset($cm->to_group_id) || !empty($cm->to_group_id))
+ ) {
+ $gp = DB_DataObject::Factory('core_group')->lookup('name',$data['to_group']);
+
+ if (empty($gp->id)) {
+ $this->jerr("to_group {$data['to_group']} does not exist when importing template $name");
+ }
+
+ $cm->to_group_id = $gp->id;
+ }
+
+ if(
+ isset($data['active']) && !isset($cm->active)
+ ) {
+ $cm->active = $data['active'];
}
+
require_once $cm->test_class . '.php';
$clsname = str_replace('/','_', $cm->test_class);
}
require_once 'Pman/Core/Import/Core_email.php';
$x = new Pman_Core_Import_Core_email();
+
$x->updateOrCreateEmail('', $opts, $cm);
echo "email: {$name} - CREATED\n";
if ($done_check) {
return;
}
+
+
+ if (!empty($this->opts['skip-mysql-checks'])) {
+ return;
+ }
// innodb in single files is far more efficient that MYD or one big innodb file.
// first check if database is using this format.
$db = DB_DataObject::factory('core_enum');
$db->query("show variables like 'innodb_file_per_table'");
$db->fetch();
if ($db->Value == 'OFF') {
- die("Error: set innodb_file_per_table = 1 in my.cnf\n\n");
+ die("Error: set innodb_file_per_table = 1 in my.cnf (or run with --skip-mysql-checks\n\n");
}
$db = DB_DataObject::factory('core_enum');
}
- function checkSystem()
+ function checkSystem($req = false, $pref = false)
{
// most of these are from File_Convert...
// these are required - and have simple dependancies.
require_once 'System.php';
- $req = array(
+ $req = $req !== false ? $req : array(
'convert',
'grep',
'pdfinfo',
'pdftoppm',
'rsvg-convert', //librsvg2-bin
'strings',
+ 'oathtool'
);
// these are prefered - but may have complicated depenacies
- $pref= array(
+ $pref = $pref !== false ? $pref : array(
'abiword',
'faad',
'ffmpeg',
function generateDataobjectsCache()
{
- $url = "http://localhost{$this->local_base_url}/Roo/Core/RefreshDatabaseCache";
+ $url = "http://localhost{$this->local_base_url}/Core/RefreshDatabaseCache";
$this->curl($url);
+
}
function curl($url, $request = array(), $method = 'GET')
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, false);
- curl_setopt($ch, CURLOPT_VERBOSE, 1);
+ curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
-}
\ No newline at end of file
+}