Activate CV module
From DoKSwiki
| Table of contents |
The very basics of the CV module
Everything for the CV module is present in the DoKS version 1.3.0.
If you are still working with an earlier version a lot can be done or shown already, which illustrates the flexibility of DoKS for adding completely new applications. This new functionality did not require any programming (just some scripting in DoKS itself), only configuration files and templates needed to be changed or created.
The programming for the wizard was merely making links between records a more user friendly experience and the programming for the special CV search page made indexing more configurable for all kinds of structures. Normal searching will still work with CV's.
Add CV data structures
A CV is linked to an Author (in the same way as an ETD), and it is linked to Education, Apprenticeship, WorkExperience, Reference and Language data structures. To add all these to your DoKS installation add this line to the Author structure in your /conf/structures.xml file:
<field type="recordlinklist" name="cv"/>
and append the following to your /conf/structures.xml file:
<structure name="CV" id="Cur" descriptionname="CV_cv"> <!--start personal information--> <field type="recordlinklist" name="naam" classname="Author" inversefield="cv"/> <field type="text" name="address"/> <field type="date" name="birthDate"/> <field type="choice" name="gender" classname="gender"/> <field type="string" name="nationality"/> <field type="string" name="familySituation"/> <field type="url" name="email"/> <field type="string" name="telephone"/> <field type="string" name="mobile"/> <field type="string" name="fax"/> <field type="url" name="personalWebsite"/> <!--end personal information--> <!--start educational information--> <field type="recordlinklist" name="education"/> <!--end educational information--> <!-- start experience information--> <field type="recordlinklist" name="apprenticeship"/> <field type="recordlinklist" name="workexperience"/> <field type="recordlinklist" name="reference"/> <!--end experience information--> <!--start skills information--> <field type="recordlinklist" name="language"/> <field type="text" name="social" maxlength="1024"/> <field type="text" name="organisational" maxlength="1024"/> <field type="text" name="technical" maxlength="1024"/> <field type="text" name="computer" maxlength="1024"/> <field type="text" name="artistic" maxlength="1024"/> <field type="text" name="commercial" maxlength="1024"/> <field type="string" name="driving"/> <field type="text" name="other" maxlength="1024"/> <!--end skills information--> <!-- start extra info--> <field type="text" name="mobility"/> <field type="text" name="carreerGoal" maxlength="10000"/> <field type="choice" name="status" classname="cvStatus"/> <field type="choice" name="activity" classname="cvActivity"/> <!-- end extra info--> </structure> <structure name="Education" id="Edu" descriptionname="Edu_title"> <field type="date" name="from"/> <field type="date" name="to"/> <field type="text" name="skills" maxlength="1024"/> <field type="string" name="organisation"/> <field type="string" name="level"/> <field type="text" name="thesis"/> <field type="text" name="extraInfo" maxlength="1024"/> <field type="recordlinklist" name="cv" classname="CV" inversefield="education"/> </structure> <structure name="Apprenticeship" id="App" descriptionname="App_position"> <field type="date" name="from"/> <field type="date" name="to"/> <field type="text" name="activities" maxlength="1024"/> <field type="string" name="employer"/> <field type="string" name="sector"/> <field type="text" name="extraInfo" maxlength="1024"/> <field type="recordlinklist" name="cv" classname="CV" inversefield="apprenticeship"/> </structure> <structure name="WorkExperience" id="Wex" descriptionname="Wex_position"> <field type="date" name="from"/> <field type="date" name="to"/> <field type="text" name="activities" maxlength="1024"/> <field type="string" name="employer"/> <field type="string" name="sector"/> <field type="text" name="extraInfo" maxlength="1024"/> <field type="recordlinklist" name="cv" classname="CV" inversefield="workexperience"/> </structure> <structure name="Language" id="Lan" descriptionname="Lan_language"> <field type="choice" name="level" classname="languageLevel"/> <field type="text" name="extraInfo" maxlength="1024"/> <field type="recordlinklist" name="cv" classname="CV" inversefield="language"/> </structure> <structure name="Reference" id="Ref" descriptionname="Ref_name"> <field type="string" name="function"/> <field type="string" name="company"/> <field type="string" name="telephone"/> <field type="string" name="email"/> <field type="text" name="extraInfo" maxlength="1024"/> <field type="recordlinklist" name="cv" classname="CV" inversefield="reference"/> </structure>
Now, after stopping Tomcat, deploy the application and update the database (ant deploy and ant schemaupdate).
Add the CV views and the CV edit wizard
You need DoKS version 1.3.0 or higher for the wizard to work properly, the views will work in lower versions if you follow the steps below.
Everything should be present from version 1.3.0 onwards, to be sure check your DoKS installation for the directory /local/CV. If it doesn't exist you will have to take all the following steps.
- Create the /local/CV folder and download the latest version of the contents for this directory from http://doksproject.cvs.sourceforge.net/doksproject/doks/local/CV/.
- Do the same for the /local/Apprenticeship, /local/Education, /local/Language, /local/Reference and /local/Workexperience folders (http://doksproject.cvs.sourceforge.net/doksproject/doks/local/).
- Take the latest version of /local/Author/view.vm from http://doksproject.cvs.sourceforge.net/doksproject/doks/local/Author/View.vm (http://doksproject.cvs.sourceforge.net/doksproject/doks/local/Author/View.vm?view=log)).
- Take the latest version of /conf/choicetypes.xml from http://doksproject.cvs.sourceforge.net/doksproject/doks/conf/choicetypes.xml (http://doksproject.cvs.sourceforge.net/doksproject/doks/conf/choicetypes.xml?view=log)).
- Add translations for the CV fields: edit /conf/messagefiles/messages_nl.properties and add the lines below (you can modify the translations if you like)
#CV CV_cv=Titel firstname=Voornaam gender=Geslacht nationality=Nationaliteit familySituation=Burgerlijke staat fax=Fax personalWebsite=Persoonlijke website carreerGoal=Carrièredoelstelling education=Opleiding languageSkills=Talenkennis computerSkills=Computerkennis hobbies=Hobby's apprenticeship=Stage otherExperience=Overige Ervaring telephone=Telefoonnummer mobile=Gsm workexperience=Werkervaring social=Sociale vaardigheden organisational=Organisatorische vaardigheden technical=Technische vaardigheden computer=Computerkennis artistic=Artistieke vaardigheden commercial=Commerciële vaardigheden driving=Rijbewijs otherSkills=Overige vaardigheden mobility=Mobiliteit cvreferences=Referenties activity=Beschikbaarheid voor werkgevers #CV structures Ref_name=Naam Lan_language=Taal Wex_position=Functie App_position=Functie Edu_title=Diploma skills=Vaardigheden organisation=Instituut thesis=Eindwerk from=Van to=Tot activities=Activiteiten employer=Werkgever sector=Sector level=Niveau function=Functie company=Bedrijf telephone=Telefoon extraInfo=Bijkomende Informatie
and /conf/messagefiles/messages_en.properties and add the lines below (you can modify the translations if you like)
#CV CV_cv=Title firstname=First Name gender=Gender nationality=Nationality familySituation=Civil State fax=Fax personalWebsite=Personal website carreerGoal=Career goals education=Education languageSkills=Languages computerSkills=Computer Skills hobbies=Hobby apprenticeship=Apprenticeship otherExperience=Other Experience telephone=Telephone mobile=Mobile workexperience=Experience social=Social Skills organisational=Organisational Skills technical=Technical Skills computer=Computer artistic=Artistic Skills commercial=Commercial Skills driving=Driver's Licence otherSkills=Other Skills mobility=Mobility cvreferences=References activity=Availability for employers #CV structures Ref_name=Name Lan_language=Language Wex_position=Function App_position=Function Edu_title=Title skills=Skills organisation=Institution thesis=Thesis from=From to=To activities=Activities employer=Employer sector=Sector level=Level function=Function company=Company telephone=Telephone extraInfo=Extra Information
- Make sure the following lines are in /src/web/assets/style.css:
div.cvhelp{display: none;}
.cvhelptd {border-bottom:dashed gray 1px; border-left:dashed gray 1px; padding: 5px 5px;}
/* Curriculum Vitae */
.cv_table {border:solid gray 1px; background-color:#DEDEDE; width:700px; border-collapse: collapse;font-size: x-small;}
.cv_thr {border-bottom:dashed gray 1px; background-color:#CCCCCC; text-align:right; font-size: small;}
.cv_thl {border-bottom:dashed gray 1px; background-color:#CCCCCC; text-align:left; font-size: small;}
- Copy all the files and folders to the build with the command
ant copywebapp. - If not present add the scripts "setCVPermissions", "Apprenticeship_update", "Education_update", "Language_update", "Reference_update" and "Workexperience_update" from http://doksproject.cvs.sourceforge.net/doksproject/doks/data/scripts/. To do this login as an administrator to your DoKS repository and go to 'Administrator' ('Beheerder'), 'Script Management', 'New Script' (at bottom of the page). Give all these scripts 'administrator rights' ('Beheerderrechten') (check the box) and change 'permissions' ('Toegangsrechten') to Everyone Execute (check the box).
Add a CV usergroup and users
- Login as an administrator to your DoKS repository.
- Go to 'Administrator' ('Beheerder'), 'User Management' and create a user group named CV (you only need to provide a name, the second field can be left empty).
- Edit the CV user Group and add at least one user who will be entitled to view all CV's. Administrators automatically have this permission, this is meant for 'external' users like a school's job service or a company that has been granted access to the CV's (for free or for a fee).
Set up a CV folder structure
- Login as an administrator to your DoKS repository.
- Go to the Home folder 'Edit' ('Bewerk') and click the 'Edit' ('Bewerk') link under 'Records and subfolders'.
- Add a new Folder named "CV" (the second field should be made empty, it probably reads FolderInfo now).
- Add another new Folder named "Cv-attached structures" (the second field should be made empty, it probably reads FolderInfo now).
- Go to the folder "Cv-attached structures" and add 5 subfolders respectively named "Apprenticeship", "Education", "Language", "Reference" and "Workexperience" (this works in the same way as you did for the Home folder).
Now the folders must be made to accept the appropriate data structures and get appropriate access rights.
- Change 'permissions' ('Toegangsrechten') for the folders "CV" and "Cv-attached structures" to give only read access to the 'CV' usergroup. All the other boxes should remain empty!
- To let students edit their CV's change permissions for the "Apprenticeship", "Education", "Language", "Reference" and "Workexperience" folders to give the usergroup 'Students' all the rights except 'administrate'('beheren'). All the other boxes should remain empty!
- Edit the CV folder and select CV in the list of recordtypes. Click the save button.
- Edit the "Apprenticeship", "Education", "Language", "Reference" and "Workexperience" folders and select the respective recordtypes in the list of recordtypes as you did for the CV folder.
Create CV's
Add Manually
- Login as an administrator to your DoKS repository.
- Go to the CV folder, click the CV tab and click 'New Record'. You are now in the CV edit wizard.
- Enter the data (Title is mandatory, we usually write something like "CV van Jan Janssens") and click next.
- This second page of the wizard is for adding Apprenticeships, Educations, Languages, References and Workexperience. It will not work with DoKS versions lower than 1.3.0. But instead you can find a link "Full edit" at the bottom of the page. This brings you to the standard DoKS edit screen where you can fill out fields and link to other structures by pasting. To add an Education you have to create one first by going to /Cv-attached structures/Education folder (first save your new CV!) then the Education tab and "New Record". After saving the Education record you have to copy it. Then go back to the CV you have created, edit it and use the "Full Edit" link, where you can paste the education to the appropriate field and save the CV. You can follow the same procedure for Languages, References, etc. The update scripts take care of setting the correct access rights. This is quite an elaborate procedure, it works but you understand why we made it a one click operation in version 1.3.0.
- Copy the CV, go to an Author record (or create one) and paste it in the Cv field.
Automate with a script
You can write a script very much like any other import script, see Automating_Tasks_en_Procedures. We do this at KHK to import student data from the school's administration so all students get a pre-filled CV attached to their Author record that they can update and modify.
The CV search page
Available as from version 1.3.0
Specific CV indexing
Not yet available.
Add the search page
Searching will not work if DoKS is not updated to version 1.3.0 or higher but you can have a look at the page by taking the following steps.
- Take the latest version of /src/web/search/CVsearch.vm from http://doksproject.cvs.sourceforge.net/doksproject/doks/src/web/search/CVsearch.vm (http://doksproject.cvs.sourceforge.net/doksproject/doks/src/web/search/CVsearch.vm?view=log)).
- Copy the file to the build with the command
ant copywebapp.
- There's currently no direct link to this page. It can be accessed by going to the advanced search page and then changing the last part of the URL in your browser's address bar to CVsearch.vm instead of AdvancedSearch.vm.
