You are here

casetracker.forms.inc in Case Tracker 7.2

File

casetracker.forms.inc
View source
<?php

/**
 * Generates the case type editing form.
 */
function casetracker_create_basic_types_form($form, &$form_state) {
  $form = array();
  $result_project = db_query("SELECT id from {casetracker_project_type} WHERE type = 'casetracker_project_basic'")
    ->fetchAll();
  $result_case = db_query("SELECT id from {casetracker_case_type} WHERE type = 'casetracker_case_basic'")
    ->fetchAll();
  if (empty($result_project) && empty($result_case)) {
    $form['container'] = array(
      '#type' => 'fieldset',
    );
    $form['container']['label'] = array(
      '#markup' => t('If you only want to manage basic tasks and projects or are just testing, click here to create one basic Project Type and one basic Case Type to start using now without a long setup.'),
    );
    $form['container']['actions'] = array(
      '#type' => 'actions',
    );
    $form['container']['actions']['submit'] = array(
      '#type' => 'submit',
      '#value' => t('Create basic Project and Case types'),
    );
  }
  return $form;
}
function casetracker_create_basic_types_form_submit($form, &$form_state) {

  //  Create a basic Case Type
  $new_case_type = new CaseTrackerCaseType();
  $new_case_type->type = 'casetracker_case_basic';
  $new_case_type->label = t('Case');
  $new_case_type->description = t('General purpose tasks.');
  $new_case_type->is_new = TRUE;
  $new_case_type
    ->save();
  $field_names = array(
    'field_casetracker_project_ref',
    'field_casetracker_description',
    'field_casetracker_case_status',
    'field_casetracker_case_priority',
  );
  $fields = casetracker_basic_fields_definitions('casetracker_case', $new_case_type->type, $field_names);
  _casetracker_process_fields_for_new_bundle('casetracker_case', $new_case_type->type, $fields);

  //  Create a basic Project Type
  $new_project_type = new CaseTrackerProjectType();
  $new_project_type->type = 'casetracker_project_basic';
  $new_project_type->label = t('Project');
  $new_project_type->description = t('Common project.');
  $new_project_type->is_new = TRUE;
  $new_project_type
    ->save();
  $fields = casetracker_basic_fields_definitions('casetracker_project', $new_project_type->type, array(
    'field_casetracker_description',
  ));
  _casetracker_process_fields_for_new_bundle('casetracker_project', $new_project_type->type, $fields);
  drupal_flush_all_caches();
}

Functions

Namesort descending Description
casetracker_create_basic_types_form Generates the case type editing form.
casetracker_create_basic_types_form_submit