Exemplo n.º 1
0
function createCustomFields($isCreateExtIdField = TRUE)
{
    // Mantis customFields types
    $mType_string = 0;
    $mType_numeric = 1;
    $mType_enum = 3;
    $mType_list = 6;
    $mType_date = 8;
    $access_viewer = 10;
    $access_reporter = 25;
    $access_manager = 70;
    // default values, to be updated for each Field
    $attributes = array();
    $attributes["access_level_r"] = $access_viewer;
    $attributes["access_level_rw"] = $access_reporter;
    $attributes["require_report"] = 1;
    $attributes["display_report"] = 1;
    $attributes["require_update"] = 0;
    $attributes["display_update"] = 1;
    $attributes["require_resolved"] = 0;
    $attributes["display_resolved"] = 0;
    $attributes["require_closed"] = 0;
    $attributes["display_closed"] = 0;
    $attributes["require_report"] = 1;
    $attributes["display_report"] = 1;
    $defaultValue = 1;
    createCustomField(T_("CodevTT_EffortEstim"), $mType_numeric, "customField_effortEstim", $attributes, $defaultValue);
    $defaultValue = NULL;
    $possible_values = 'Bug|Task';
    createCustomField(T_("CodevTT_Type"), $mType_list, "customField_type", $attributes, $defaultValue, $possible_values);
    $attributes["require_report"] = 0;
    $attributes["display_report"] = 1;
    $defaultValue = 0;
    $attributes["access_level_r"] = $access_manager;
    $attributes["access_level_rw"] = $access_manager;
    createCustomField(T_("CodevTT_Manager EffortEstim"), $mType_numeric, "customField_MgrEffortEstim", $attributes, $defaultValue);
    $attributes["access_level_r"] = $access_viewer;
    $attributes["access_level_rw"] = $access_reporter;
    if ($isCreateExtIdField) {
        createCustomField(T_("CodevTT_External ID"), $mType_string, "customField_ExtId", $attributes);
    }
    createCustomField(T_("CodevTT_Deadline"), $mType_date, "customField_deadLine", $attributes);
    $attributes["display_report"] = 0;
    createCustomField(T_("CodevTT_Additional Effort"), $mType_numeric, "customField_addEffort", $attributes);
    $attributes["require_report"] = 0;
    $attributes["display_report"] = 0;
    $attributes["display_closed"] = 1;
    $attributes["display_resolved"] = 1;
    createCustomField(T_("CodevTT_Backlog"), $mType_numeric, "customField_backlog", $attributes);
    $attributes["require_report"] = 0;
    $attributes["display_report"] = 0;
    $attributes["require_resolved"] = 0;
    $attributes["require_closed"] = 0;
    #createCustomField(T_("CodevTT_Delivery ticket"),   $mType_string,  "customField_deliveryId", $attributes);  // CoDev FDJ custom
    createCustomField(T_("CodevTT_Delivery Date"), $mType_date, "customField_deliveryDate", $attributes);
}
Exemplo n.º 2
0
/**
 * update 0.99.18 to 0.99.19 (DB v9 to DB v10)
 */
function update_v9_to_v10()
{
    $sqlScriptFilename = '../install/codevtt_update_v9_v10.sql';
    if (!file_exists($sqlScriptFilename)) {
        echo "ERROR: SQL script not found:{$sqlScriptFilename}<br>";
        exit;
    }
    // the CodevTT_Type field must be created before the DB update
    echo "- Create CodevTT_Type customField<br>";
    $mType_list = 6;
    $access_viewer = 10;
    $access_reporter = 25;
    $attributes = array();
    $attributes["access_level_r"] = $access_viewer;
    $attributes["access_level_rw"] = $access_reporter;
    $attributes["require_report"] = 1;
    $attributes["display_report"] = 1;
    $attributes["require_update"] = 0;
    $attributes["display_update"] = 1;
    $attributes["require_resolved"] = 0;
    $attributes["display_resolved"] = 0;
    $attributes["require_closed"] = 0;
    $attributes["display_closed"] = 0;
    $defaultValue = NULL;
    $possible_values = 'Bug|Task';
    createCustomField("CodevTT_Type", $mType_list, "customField_type", $attributes, $defaultValue, $possible_values);
    // execute the SQL script
    //
    echo "- Execute SQL script:{$sqlScriptFilename}<br>";
    $retCode = Tools::execSQLscript2($sqlScriptFilename);
    if (0 != $retCode) {
        echo "<span class='error_font'>Could not execSQLscript: {$sqlScriptFilename}</span><br/>";
        exit;
    }
    echo "<br>SUCCESS: Update 0.99.18 to 0.99.19 (DB v9 to DB v10)<br>";
    return TRUE;
}
Exemplo n.º 3
0
<?php

$testSuite->createGroup('Requests / Project Settings / Custom Fields', function ($g) {
    $manager = createProjectManager();
    $project = $manager->project();
    $user = $manager->user();
    $customField = createCustomField($project);
    $g->test('List custom fields', function ($t) use($project, $user) {
        $resp = $t->visit('project_settings_custom_fields', ['routeTokens' => ['pslug' => $project['slug']], 'cookie' => ['traq' => $user['session_hash']]]);
        $t->assertEquals(200, $resp->status);
        $t->assertContains('<h1 class="page-header">Custom Fields</h1>', $resp->body);
    });
    $g->test('New custom field', function ($t) use($project, $user) {
        $resp = $t->visit('project_settings_new_custom_field', ['routeTokens' => ['pslug' => $project['slug']], 'cookie' => ['traq' => $user['session_hash']]]);
        $t->assertEquals(200, $resp->status);
        $t->assertContains('<h1 class="page-header">New Custom Field</h1>', $resp->body);
    });
    $g->test('Create text field', function ($t) use($project, $user) {
        $resp = $t->visit('project_settings_create_custom_field', ['method' => 'POST', 'routeTokens' => ['pslug' => $project['slug']], 'post' => ['name' => 'Text field', 'slug' => 'text-field', 'type' => 'text'], 'cookie' => ['traq' => $user['session_hash']]]);
        $t->assertRedirectTo($t->generateUrl('project_settings_custom_fields'), $resp);
    });
    $g->test('Edit custom field', function ($t) use($project, $user, $customField) {
        $resp = $t->visit('project_settings_edit_custom_field', ['routeTokens' => ['pslug' => $project['slug'], 'id' => $customField['id']], 'cookie' => ['traq' => $user['session_hash']]]);
        $t->assertEquals(200, $resp->status);
        $t->assertContains('<h1 class="page-header">Edit Custom Field</h1>', $resp->body);
    });
    $g->test('Save custom field', function ($t) use($project, $user, $customField) {
        $resp = $t->visit('project_settings_save_custom_field', ['routeTokens' => ['pslug' => $project['slug'], 'id' => $customField['id']], 'method' => 'PUT', 'post' => ['type' => 2], 'cookie' => ['traq' => $user['session_hash']]]);
        $t->assertRedirectTo($t->generateUrl('project_settings_custom_fields'), $resp);
    });
});