/** * Called once when the project is initially created. */ public function InitialSetup() { if (!$this->Id) { return false; } // Add the default groups. $BuildGroup = new BuildGroup(); $BuildGroup->SetName('Nightly'); $BuildGroup->SetDescription('Nightly builds'); $BuildGroup->SetSummaryEmail(0); $this->AddBuildGroup($BuildGroup); $BuildGroup = new BuildGroup(); $BuildGroup->SetName('Continuous'); $BuildGroup->SetDescription('Continuous builds'); $BuildGroup->SetSummaryEmail(0); $this->AddBuildGroup($BuildGroup); $BuildGroup = new BuildGroup(); $BuildGroup->SetName('Experimental'); $BuildGroup->SetDescription('Experimental builds'); // default to "No Email" for the Experimental group $BuildGroup->SetSummaryEmail(2); $this->AddBuildGroup($BuildGroup); // Set up overview page to initially contain just the "Nightly" group. $groups = $this->GetBuildGroups(); foreach ($groups as $group) { if ($group->GetName() == 'Nightly') { $buildgroupid = $group->GetId(); $query = "INSERT INTO overview_components (projectid, buildgroupid, position, type)\n VALUES ('{$this->Id}', '{$buildgroupid}', '1', 'build')"; pdo_query($query); add_last_sql_error('CreateProject :: DefaultOverview', $this->Id); break; } } // Add administrator to the project. $User = new User(); $UserProject = new UserProject(); $UserProject->Role = 2; $UserProject->EmailType = 3; // receive all emails $UserProject->ProjectId = $this->Id; $User->Id = 1; // administrator $User->AddProject($UserProject); }
function rest_put() { global $projectid; if (isset($_GET['buildgroup'])) { // Modify an existing buildgroup. $buildgroup = json_decode($_GET['buildgroup'], true); // Deal with the fact that unchecked checkboxes will not be included // in the above array. if (!array_key_exists('emailcommitters', $buildgroup)) { $buildgroup['emailcommitters'] = 0; } if (!array_key_exists('includesubprojecttotal', $buildgroup)) { $buildgroup['includesubprojecttotal'] = 0; } $BuildGroup = new BuildGroup(); $BuildGroup->SetId(pdo_real_escape_numeric($buildgroup['id'])); $BuildGroup->SetName(pdo_real_escape_string($buildgroup['name'])); $BuildGroup->SetDescription(pdo_real_escape_string($buildgroup['description'])); $BuildGroup->SetSummaryEmail(pdo_real_escape_numeric($buildgroup['summaryemail'])); $BuildGroup->SetEmailCommitters(pdo_real_escape_numeric($buildgroup['emailcommitters'])); $BuildGroup->SetIncludeSubProjectTotal(pdo_real_escape_numeric($buildgroup['includesubprojecttotal'])); $BuildGroup->SetAutoRemoveTimeFrame(pdo_real_escape_numeric($buildgroup['autoremovetimeframe'])); if (!$BuildGroup->Save()) { echo_error('Failed to save BuildGroup'); } return; } }
// Add the default groups $BuildGroup = new BuildGroup(); $BuildGroup->SetName('Nightly'); $BuildGroup->SetDescription('Nightly builds'); $BuildGroup->SetSummaryEmail(0); $Project->AddBuildGroup($BuildGroup); $BuildGroup = new BuildGroup(); $BuildGroup->SetName('Continuous'); $BuildGroup->SetDescription('Continuous builds'); $BuildGroup->SetSummaryEmail(0); $Project->AddBuildGroup($BuildGroup); $BuildGroup = new BuildGroup(); $BuildGroup->SetName('Experimental'); $BuildGroup->SetDescription('Experimental builds'); // default to "No Email" for the Experimental group $BuildGroup->SetSummaryEmail(2); $Project->AddBuildGroup($BuildGroup); // Set up overview page to initially contain just the "Nightly" group $groups = $Project->GetBuildGroups(); foreach ($groups as $group) { if ($group->GetName() == "Nightly") { $buildgroupid = $group->GetId(); $query = "INSERT INTO overview_components (projectid, buildgroupid, position, type)\n VALUES ('{$projectid}', '{$buildgroupid}', '1', 'build')"; pdo_query($query); add_last_sql_error("CreateProject :: DefaultOverview", $projectid); break; } } // Add administrator to the project $UserProject = new UserProject(); $UserProject->Role = 2;