Change sorting order on ML display to use sort_name.
[platal.git] / upgrade / 1.0.1 / sectors_as_terms.php
CommitLineData
468c1813
PC
1#!/usr/bin/php5
2<?php
3require_once 'connect.db.inc.php';
4
5$globals->debug = 0; //do not store backtraces
6
7XDB::execute('INSERT INTO `profile_job_term_enum` (`name`, `full_name`) VALUES ("Secteurs d\'activité", "Secteurs d\'activité")');
8$root_sector_id = XDB::insertId();
9XDB::execute('INSERT INTO `profile_job_term_relation` VALUES (0, {?}, "narrower", "original"), ({?}, {?}, "narrower", "computed")',
10 $root_sector_id, $root_sector_id, $root_sector_id);
11
12// loops through sectors
13$sectors = XDB::iterator('SELECT `id`, `name` FROM `profile_job_sector_enum`');
14while ($oldsector = $sectors->next()) {
15 // adds sector as term
16 XDB::execute('INSERT INTO `profile_job_term_enum` (`name`, `full_name`) VALUES ( {?}, {?} )', $oldsector['name'], $oldsector['name'].' (secteur)');
17 $sector_id = XDB::insertId();
18 // links to root for sectors
19 XDB::execute('INSERT INTO `profile_job_term_relation` VALUES ({?}, {?}, "narrower", "original"), ({?}, {?}, "narrower", "computed")',
20 $root_sector_id, $sector_id, $sector_id, $sector_id);
21 // adds sector term to linked jobs and linked mentorships
22 XDB::execute('INSERT INTO `profile_job_term`
23 SELECT `pid`, `id`, {?}, "original"
24 FROM `profile_job`
25 WHERE `sectorid` = {?} AND `subsectorid` = 0',
26 $sector_id, $oldsector['id']);
27 XDB::execute('INSERT INTO `profile_mentor_term`
28 SELECT `pid`, {?}
29 FROM `profile_mentor_sector`
30 WHERE `sectorid` = {?} AND `subsectorid` = 0',
31 $sector_id, $oldsector['id']);
32 // loops through subsectors
33 $subsectors = XDB::iterator('SELECT `id`, `name` FROM `profile_job_subsector_enum` WHERE sectorid = {?}', $oldsector['id']);
34 while ($oldsubsector = $subsectors->next()) {
35 if ($oldsubsector['name'] == $oldsector['name']) {
36 // adds sector term to jobs and mentorships linked to subsector with same name as sector
37 XDB::execute('INSERT INTO `profile_job_term`
38 SELECT `pid`, `id`, {?}, "original"
39 FROM `profile_job`
40 WHERE `sectorid` = {?} AND `subsectorid` = {?}',
41 $sector_id, $oldsector['id'], $oldsubsector['id']);
42 XDB::execute('INSERT INTO `profile_mentor_term`
43 SELECT `pid`, {?}
44 FROM `profile_mentor_sector`
45 WHERE `sectorid` = {?} AND `subsectorid` = {?}',
46 $sector_id, $oldsector['id'], $oldsubsector['id']);
47 continue;
48 }
49 // adds subsector as term
50 XDB::execute('INSERT INTO `profile_job_term_enum` (`name`, `full_name`) VALUES ( {?}, {?} )', $oldsubsector['name'], $oldsubsector['name'].' (secteur)');
51 $subsector_id = XDB::insertId();
52 // links to root for sectors and to sector
53 XDB::execute('INSERT INTO `profile_job_term_relation` VALUES ({?}, {?}, "narrower", "computed"), ({?}, {?}, "narrower", "original"), ({?}, {?}, "narrower", "computed")',
54 $root_sector_id, $subsector_id, $sector_id, $subsector_id, $subsector_id, $subsector_id);
55 // adds subsector term to linked jobs and mentorships
56 XDB::execute('INSERT INTO `profile_job_term`
57 SELECT `pid`, `id`, {?}, "original"
58 FROM `profile_job`
59 WHERE `sectorid` = {?} AND `subsectorid` = {?}',
60 $subsector_id, $oldsector['id'], $oldsubsector['id']);
61 XDB::execute('INSERT INTO `profile_mentor_term`
62 SELECT `pid`, {?}
63 FROM `profile_mentor_sector`
64 WHERE `sectorid` = {?} AND `subsectorid` = {?}',
65 $subsector_id, $oldsector['id'], $oldsubsector['id']);
66 }
67}
68
69/* vim:set et sw=4 sts=4 ts=4: */
70?>