Newer
Older
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
CREATE TABLE `Ggroup`
(
`id` INTEGER NOT NULL AUTO_INCREMENT ,
`grId` INTEGER( 11 ) ,
`name` VARCHAR( 255 ) ,
`value` VARCHAR( 255 ) ,
`reference` VARCHAR( 100 ) ,
`ord` INT( 11 ) ,
`modified` DATETIME ,
`created` DATETIME ,
PRIMARY KEY `id`(`id`)
) ENGINE = INNODB DEFAULT CHARSET = utf8
and add the uploads to the Ggroup: ::
INSERT INTO `Ggroup` (`id`, `grId`, `name`, `value`, `reference`, `ord`, `modified`, `created`) VALUES (NULL, NULL, NULL, NULL, 'ort_upload_cv', NULL, NULL, NULL);
and: ::
INSERT INTO `Ggroup` (`id`, `grId`, `name`, `value`, `reference`, `ord`, `modified`, `created`) VALUES (NULL, NULL, NULL, NULL, 'ort_upload_further', NULL, NULL, NULL);
Moreover we should rename the column uploadPath to grIdUploadPath: ::
ALTER TABLE `Application` CHANGE `uploadPath` `grIdUploadPath` INT(11) NULL DEFAULT NULL;
And additionally you have to add even a second table called Note. You can do that by pasting the following query into
the SQL prompt: ::
CREATE TABLE `Note`
(
`id` INTEGER NOT NULL AUTO_INCREMENT ,
`aId` INTEGER( 11 ) ,
`pId` INTEGER( 11 ) ,
`grId` INTEGER( 11 ) ,
`xId` INTEGER( 11 ) ,
`value` TEXT ,
`pathFileName` VARCHAR( 255 ) ,
`modified` DATETIME ,
`created` DATETIME ,
PRIMARY KEY `id`(`id`)
) ENGINE = INNODB DEFAULT CHARSET = utf8
Now you have to add it to the visualisation of the database:
.. figure:: Images/DiaAddedGgroupUpload.png
Now we can create the upload form elements. For that purpose go edit the Application form and add a new FormElement of
type upload. First you should create a new pill. Call the pill Uploads and assign all upload elements to that new pill.
@@@ bug upload @@@
.. figure:: Images/FormEditorUploadCV1.png
Reviews
=======
Now we have made a tool where people can apply, we have a page where the admin can add job advertisements and addtionally
we have a page where the admin can define new admins and reviewers. Now it is time to create a page, where the reviewers
can take a look at the applications and evaluate them. So in this part we have the following goals:
1) We want to modify the JobOffers form. We want to add a new formElement where we can add reviewers to every single
job we upload. (multiple reviewers for each application possible)
2) We want to create a new form where the reviewers can chose whether the applicant is suited for the job or not. He should
be able to give a grade and a little remark (in text form). Moreover it should be possible to access the a PDF file
of the application in the form itself.
3) This form should be accessed by a page where you have a list of all applications which are assign to you. This page
should only be accessable by reviewers. So additionally we have to create a new FE User Group named reviewer.
But before we can do all of that, we have to add some structure to the database. This time we will make big changes in
the database structre.
We don't have to add any new Tables, but we have to add new columns and additionally we have to make a few connections between
the Tables.
So our goal for now is it, to adjust the structre of the database such that:
-We can assign one (or more) Reviewer to an application
-Give the Reviewer the opportunity to add a note to the application
-Give the Reviewer the opportunity to add a grade to the application
-Give the admin of the page the opportunity to change dynamically how many grades there exists
We want to store all the information in the Table Note. In order to do that we have to extend the Table note.
Since we want to give the reviewer the opportunity to add a comment, we also have to add a column named text where the
comment will be saved in.
By pasting the following query into the SQL Prompt you the columns will be added: ::
ALTER TABLE `Note` ADD `text` text NOT NULL AFTER `value`;
Moreover we want to add one more Ggroup link to the Node Table. We want to assign a Ggroup Record to the Note
table to uniquely tell the Note Record that the all the Records which are linked to that Ggroup Record are Reviews.
In order to do that you can paste the following query into the SQL Prompt: ::
INSERT INTO `Ggroup` (`id`, `grId`, `name`, `value`, `reference`, `ord`, `modified`, `created`) VALUES (NULL, NULL, NULL, NULL, 'ort_review', NULL, NULL, NULL);
If it is not clear so far don't worry. I will show a picture of the datastructure and give some intuition why it makes sense:
.. figure:: Images/DiaReviewChanges.png
The problem is that we made a few connections between the table Note and the Table Ggroup and the connection between
table Note and the Table Application so far. But only in theory. We didn't actually programmed it that way. We just
visualized to ourself how the date will be saved. So now we want to program what we just visualized.
The first thing we want to happen is the following: As soon as a person applies for a job, we want that automatically
(with a afterSave record) that a new record in the Table Note is created such that all the necessary connections (with
the Ggroup Tables are created).
For that purpose we edit the form Application and add an afterSave formElement to it.
NOTIZ DER UNTERE TEIL IST FUER SPAETER. NOCH NICHT ZU BEACHTEN.
So far we created the database structure. Now we want to modify the JobOffers form such that when we add a new job offer
we automatically add the reviewers. So that when somebody applies for a job X, the reviewers which are assigned to the
job X will automatically be assigned to that specific application.
So let's do that. So go into the formEditor and edit the form "JobOffers". You have to add a new formElement.