Exemple #1
0
 public static function ExportQuarterlyForms()
 {
     include_once Core::LibDir() . DS . 'easycsv' . DS . 'EasyCsv.php';
     include_once dirname(__DIR__) . DS . 'database' . DS . 'ScheduleDatabase.php';
     $db = ScheduleDatabase::GetInstance();
     include_once __DIR__ . '/RWAForm.php';
     $fieldsNames = array_unique(array_merge(array('id', 'code', 'submitDate', 'formDate'), RWAForm::GetFieldNames('quarterly')));
     $csv = EasyCsv::CreateCsv($fieldsNames);
     $db->iterateAllQuarterlys(function ($record) use(&$csv, $fieldsNames) {
         $form = get_object_vars(json_decode($record->formData));
         $values = array();
         foreach ($fieldsNames as $field) {
             if (key_exists($field, $form)) {
                 $theValue = $form[$field];
                 if (is_object($theValue) || is_array($theValue)) {
                     $theValue = json_encode($theValue);
                 }
                 $values[] = $theValue;
             } else {
                 $values[] = "";
             }
         }
         $values[0] = $record->id;
         $values[1] = $record->code;
         $values[2] = $record->submitDate;
         $values[3] = $record->formDate;
         EasyCsv::AddRow($csv, $values);
     });
     header('Content-Type: application/csv;');
     header('Content-disposition: filename="rwa-export-quarterly-' . date('Y-m-d') . '.csv"');
     echo EasyCsv::Write($csv);
     return;
 }
Exemple #2
0
 /**
  * @runInSeparateProcess
  */
 public function testFormsMetadata()
 {
     $this->_includeScaffolds();
     include_once dirname(__DIR__) . '/forms/lib/RWAForm.php';
     $formFields = json_decode(file_get_contents(__DIR__ . '/fields.json'));
     $this->assertEquals(json_encode($formFields->scheduled, JSON_PRETTY_PRINT), json_encode(RWAForm::GetFieldNames('scheduled'), JSON_PRETTY_PRINT));
     $this->assertEquals(json_encode($formFields->addendum, JSON_PRETTY_PRINT), json_encode(RWAForm::GetFieldNames('addendum'), JSON_PRETTY_PRINT));
     $this->assertEquals(json_encode($formFields->quarterly, JSON_PRETTY_PRINT), json_encode(RWAForm::GetFieldNames('quarterly'), JSON_PRETTY_PRINT));
 }
 /**
  * @runInSeparateProcess
  */
 public function testExportFormsMetadata()
 {
     $this->_includeCore();
     include_once Core::LibDir() . DS . 'easycsv' . DS . 'EasyCsv.php';
     include_once dirname(__DIR__) . DS . 'forms/database' . DS . 'ScheduleDatabase.php';
     include_once dirname(__DIR__) . DS . 'forms/lib' . DS . 'RWAForm.php';
     $db = ScheduleDatabase::GetInstance();
     $fieldsNames = RWAForm::GetFieldNames('scheduled');
     $fieldValuesArray = array();
     $db->iterateAllSchedules(function ($record) use($fieldsNames, &$fieldValuesArray) {
         $form = get_object_vars(json_decode($record->formData));
         $values = array();
         foreach ($fieldsNames as $field) {
             if (key_exists($field, $form)) {
                 $values[] = $form[$field];
             } else {
                 $values[] = "";
             }
         }
         $fieldValuesArray[] = $values;
     });
     echo print_r($fieldsNames, true) . print_r($fieldValuesArray, true) . "\n";
 }
Exemple #4
0
    include_once __DIR__ . DS . 'lib' . DS . 'Ajax.php';
    Ajax::SaveUserData();
    return;
} elseif (UrlVar('task') == 'user-data') {
    include_once __DIR__ . DS . 'lib' . DS . 'Ajax.php';
    Ajax::GetUserData();
    return;
} elseif (UrlVar('task') == 'assign-user') {
    Ajax::AssignFormToUser();
    return;
} elseif (UrlVar('task') == 'export-formatted') {
    include_once Core::LibDir() . DS . 'easycsv' . DS . 'EasyCsv.php';
    include_once __DIR__ . DS . 'database' . DS . 'ScheduleDatabase.php';
    $db = ScheduleDatabase::GetInstance();
    include_once __DIR__ . '/lib/RWAForm.php';
    $fieldsNames = RWAForm::GetFieldNames('scheduled');
    $csv = EasyCsv::CreateCsv($fieldsNames);
    $db->iterateAllSchedules(function ($record) use(&$csv, $fieldsNames) {
        $form = get_object_vars(json_decode($record->formData));
        $form['id'] = $record->id;
        $values = array();
        foreach ($fieldsNames as $field) {
            if (key_exists($field, $form)) {
                $values[] = $form[$field];
            } else {
                $values[] = "";
            }
        }
        EasyCsv::AddRow($csv, $values);
    });
    //header('Content-Type: application/csv;');