config {
engine CGI;
template_engine TT;
Init Std { }
CGI Gantry { with_server 1; instance hiring; }
Control Gantry { dbix 1; }
SQL Postgres { }
SiteLook GantryDefault { gantry_wrapper `/home/pcrow/srcgantry/root/sample_wrapper.tt`; }
Model GantryDBIxClass { }
}
app HT {
config {
dbconn `dbi:Pg:dbname=hiring` => no_accessor;
dbuser apache => no_accessor;
template_wrapper `genwrapper.tt` => no_accessor;
root `/home/pcrow/srcgantry/docs/book/studies/HT/html:/home/pcrow/srcgantry/root` => no_accessor;
}
authors `Phil Crow` => `philcrow2000@yahoo.com`;
email `philcrow2000@yahoo.com`;
sequence job_seq {}
sequence postion_seq {}
sequence contact_seq {}
sequence auth_users_seq {}
sequence skill_seq {}
sequence application_seq {}
sequence score_seq {}
sequence status_seq {}
sequence email_template_seq {}
sequence email_seq {}
sequence change_log_seq {}
table job {
field id {
is int4, primary_key, auto;
}
field title {
is varchar;
label Title;
html_form_type text;
}
field descr {
is text;
label Description;
html_form_type textarea;
}
field travel_percent {
is varchar;
label `Travel Percent`;
html_form_type text;
}
field on_site {
is varchar;
label `On/Off Site`;
html_form_type select;
html_form_options `On-Site` => onsite, `Partial Telecommute` => parttele, Telecommute => tele;
}
field time_percent {
is varchar;
label `Full/Part Time`;
html_form_type select;
html_form_options `Full Time` => fulltime, `Part Time` => parttime;
}
sequence job_seq;
foreign_display `%title`;
}
table position {
field id {
is int4, primary_key, auto;
}
sequence position_seq;
foreign_display `%ident`;
field ident {
is varchar;
label IDENT;
html_form_type text;
}
field n_openings {
is int4;
label `Number of Openings`;
html_form_type select;
html_form_options 1 => 1, 2 => 2, 3 => 3, 4 => 4, 5 => 5;
}
field location {
is varchar;
label Location;
html_form_type text;
}
field closes {
is date;
label `Closing Date`;
html_form_type text;
date_select_text `Calendar Popup`;
}
field boss {
is varchar;
label Supervisor;
html_form_type text;
}
field pay {
is varchar;
label Pay;
html_form_type text;
}
}
table contact {
field id {
is int4, primary_key, auto;
}
sequence contact_seq;
foreign_display `%ident`;
field ident {
is varchar;
label IDENT;
html_form_type text;
}
field descr {
is text;
label `Contact Details`;
html_form_type textarea;
}
}
table skill {
field id {
is int4, primary_key, auto;
}
field ident {
is varchar, varchar;
label IDENT;
html_form_type text;
}
field descr {
is text, text;
label Description;
html_form_type textarea;
}
sequence skill_seq;
foreign_display `%ident`;
}
table skill2job {
field job_id {
is int4;
refers_to job;
label Job;
html_form_type select;
}
field skill_id {
is int4;
refers_to skill;
label Skill;
html_form_type select;
}
}
table auth_users {
field id {
is int4, primary_key, auto;
}
}
table application {
field id {
is int4, primary_key, auto;
}
field first_name {
is varchar;
label `First Name`;
html_form_type text;
}
field last_name {
is varchar;
label `Last Name`;
html_form_type text;
}
field email {
is varchar;
label `Email Address`;
html_form_type text;
}
field resume {
is text;
label `Resume/Cover Letter`;
html_form_type textarea;
}
field received {
is date;
label Received;
html_form_type text;
date_select_text `Calendar Popup`;
}
field rejected {
is date;
label `Rejected Date`;
html_form_type text;
date_select_text `Calendar Popup`;
}
field interview {
is date;
label `Interview Date`;
html_form_type text;
date_select_text `Calendar Popup`;
}
field phone {
is varchar;
label Phone;
html_form_type text;
}
sequence application_seq;
foreign_display `%first_name %last_name`;
}
table score {
field id {
is int4, primary_key, auto;
}
field ranking {
is int4;
label Ranking;
html_form_type select;
html_form_options Excellent => 5, High => 4, Medium => 3, Low => 2, Reject => 1;
}
field type {
is int4;
label `Ranking Type`;
html_form_type select;
html_form_options Resume => resume, Interview => interview;
}
field comments {
is text;
label Comments;
html_form_type textarea;
}
field suggested_pay {
is varchar;
label `Suggested Pay`;
html_form_type text;
}
field ranker_id {
is int4;
refers_to auth_users;
label `Ranked By`;
html_form_type select;
}
field application_id {
is int4;
refers_to application;
label Application;
html_form_type select;
}
sequence score_seq;
foreign_display `%type: %ranking`;
}
table status {
field id {
is int4, primary_key, auto;
}
field ident {
is varchar;
label IDENT;
html_form_type text;
}
field descr {
is text;
label Description;
html_form_type textarea;
}
sequence status_seq;
foreign_display `%ident`;
}
table email_template {
field id {
is int4, primary_key, auto;
}
field template {
is varchar;
label `Template File Name`;
html_form_type text;
}
sequence email_template_seq;
foreign_display `%template`;
}
table email {
field id {
is int4, primary_key, auto;
}
field sent {
is date;
label `Date Sent`;
}
field content {
is text;
label `Email Content`;
html_form_type textarea;
}
sequence email_seq;
foreign_display `%sent`;
field application_id {
is int4, int4;
refers_to application;
label Application;
html_form_type select;
}
}
table change_log {
field id {
is int4, primary_key, auto;
}
field activity {
is varchar;
label Activity;
}
field auth_user_id {
is int4;
refers_to auth_users;
label `Changed By`;
}
field application_id {
is int4, int4, int4;
refers_to application;
label Application;
}
sequence change_log_seq;
foreign_display `%activity`;
}
controller Job is AutoCRUD {
rel_location `admin/job`;
controls_table job;
text_description `job description`;
method do_main is main_listing {
cols title;
header_options Add;
row_options Edit, Delete;
title `Job Description`;
}
method form is AutoCRUD_form {
all_fields_but id;
}
}
controller Position is AutoCRUD {
rel_location position;
controls_table position;
text_description position;
page_link_label Positions;
method do_main is main_listing {
cols ident, n_openings;
header_options Add;
row_options Edit, Delete;
title Position;
}
method form is AutoCRUD_form {
all_fields_but id;
}
}
controller Contact is AutoCRUD {
rel_location contact;
controls_table contact;
text_description contact;
page_link_label contact;
method do_main is main_listing {
cols ident;
header_options Add;
row_options Edit, Delete;
title Contact;
}
method form is AutoCRUD_form {
}
}
controller Skill is AutoCRUD {
rel_location `admin/skill`;
controls_table skill;
text_description skill;
page_link_label skill;
method do_main is main_listing {
cols ident;
header_options Add;
row_options Edit, Delete;
title Skill;
}
method form is AutoCRUD_form {
all_fields_but id;
}
}
controller AuthUser is AutoCRUD {
}
controller Application is CRUD {
}
controller Score is CRUD {
}
controller Status is AutoCRUD {
rel_location status;
controls_table status;
text_description status;
method do_main is main_listing {
cols ident;
header_options Add;
row_options Edit, Delete;
title Status;
}
method form is AutoCRUD_form {
all_fields_but id;
}
}
controller EmailTemplate is AutoCRUD {
rel_location emailtemplate;
controls_table email_template;
text_description `email template`;
method do_main is main_listing {
cols template;
header_options Add;
row_options Edit, Delete;
}
method form is AutoCRUD_form {
all_fields_but id;
}
}
controller Email is stub {
}
}