Skip to content

Commit 3e69c43

Browse files
Add captcha to default career portal template
1 parent 338c852 commit 3e69c43

2 files changed

Lines changed: 56 additions & 1 deletion

File tree

db/cats_schema.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -431,7 +431,7 @@ insert into `career_portal_template`(`career_portal_template_id`,`career_portal
431431
insert into `career_portal_template`(`career_portal_template_id`,`career_portal_name`,`setting`,`value`) values (17,'CATS 2.0','Content - Questionnaire','<div id=\"careerContent\">\r\n<questionnaire>\r\n<br /><br />\r\n<div style=\"text-align: right;\">\r\n<submit value=\"Continue\">\r\n</div>\r\n</div>');
432432
insert into `career_portal_template`(`career_portal_template_id`,`career_portal_name`,`setting`,`value`) values (18,'CATS 2.0','Content - Job Details','<div id=\"careerContent\">\r\n <registeredCandidate>\r\n <h1>Position Details: <title></h1>\r\n <table id=\"detailsTable\">\r\n <tr>\r\n <td class=\"detailsHeader\"><strong>Location:</strong></td>\r\n <td><city>, <state></td>\r\n </tr>\r\n <tr>\r\n <td class=\"detailsHeader\"><strong>Openings:</strong></td>\r\n <td><openings></td>\r\n </tr>\r\n <tr>\r\n <td class=\"detailsHeader\"><strong>Salary Range:</strong></td>\r\n <td><salary></td>\r\n </tr>\r\n </table>\r\n <div id=\"descriptive\">\r\n <p><strong>Description:</strong></p>\r\n <description>\r\n </div>\r\n <div id=\"detailsTools\">\r\n <h2>Perform an action:</h2>\r\n <a-applyToJob onmouseover=\"buttonMouseOver(\'applyToPosition\',true);\" onmouseout=\"buttonMouseOver(\'applyToPosition\',false);\"><img src=\"images/careers_apply.gif\" id=\"applyToPosition\" alt=\"IMAGE: Apply to Position\" /></a>\r\n </div>\r\n </div>');
433433
insert into `career_portal_template`(`career_portal_template_id`,`career_portal_name`,`setting`,`value`) values (19,'CATS 2.0','Content - Thanks for your Submission','<div id=\"careerContent\">\r\n <h1>Application Submitted For: <title></h1>\r\n <div id=\"descriptive\">\r\n <p>Please check your email inbox &#8212; You should receive an email confirmation of your application.</p>\r\n <p>Thank you for submitting your application to us. We will review it shortly and make contact with you soon.</p>\r\n </div>\r\n <div id=\"detailsTools\">\r\n <h2>Perform an action:</h2>\r\n <ul>\r\n <li><a href=\"\">Visit our website</a></li>\r\n </ul>\r\n </div>\r\n </div>');
434-
insert into `career_portal_template`(`career_portal_template_id`,`career_portal_name`,`setting`,`value`) values (20,'CATS 2.0','Content - Apply for Position','<div id=\"careerContent\">\r\n <h1>Applying to: <title></h1>\r\n <div class=\"applyBoxLeft\">\r\n <div><h3>1. Import Resume (or CV) and Populate Fields</h3></div>\r\n <table>\r\n <tr>\r\n <td>\r\n \r\n <input-resumeUploadPreview>\r\n </td>\r\n </tr>\r\n </table>\r\n <br />\r\n\r\n <div><h3>2. Tell us about yourself</h3></div>\r\n <p class=\"instructions\">All fields marked with asterisk (*) are required.</p>\r\n <table>\r\n <tr>\r\n <td class=\"label\"><label id=\"firstNameLabel\" for=\"firstName\">*First Name:</label></td>\r\n <td><input-firstName></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"lastNameLabel\" for=\"lastName\">*Last Name:</label></td>\r\n <td><input-lastName></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"emailLabel\" for=\"email\">*Email Adddress:</label></td>\r\n <td><input-email></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"emailConfirmLabel\" for=\"emailconfirm\">*Confirm Email:</label></td>\r\n <td><input-emailconfirm></td>\r\n </tr>\r\n </table>\r\n </div>\r\n \r\n <div class=\"applyBoxRight\">\r\n <div><h3>3. How may we contact you?</h3></div>\r\n <table>\r\n <tr>\r\n <td class=\"label\"><label id=\"homePhoneLabel\" for=\"homePhone\">Home Phone:</label></td>\r\n <td><input-phone-home></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"mobilePhoneLabel\" for=\"mobilePhone\">Mobile Phone:</label></td>\r\n <td><input-phone-cell></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"workPhoneLabel\" for=\"workPhone\">Work Phone:</label></td>\r\n <td><input-phone></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"bestTimeLabel\" for=\"bestTime\">*Best time to call:</label></td>\r\n <td><input-best-time-to-call></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"mailingAddressLabel\" for=\"mailingAddress\">Mailing Address:</label></td>\r\n <td><input-address></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"cityProvinceLabel\" for=\"cityProvince\">*City/Province:</label></td>\r\n <td><input-city></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"stateCountryLabel\" for=\"stateCountry\">*State/Country:</label></td>\r\n <td><input-state></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"zipPostalLabel\" for=\"zipPostal\">*Zip/Postal Code:</label></td>\r\n <td><input-zip></td>\r\n </tr>\r\n </table>\r\n <br />\r\n <div><h3>4. Additional Information</h3></div>\r\n <table>\r\n <tr>\r\n <td class=\"label\"><label id=\"keySkillsLabel\" for=\"keySkills\">*Key Skills:</label></td>\r\n <td><input-keySkills></td>\r\n </tr>\r\n <tr>\r\n <td>&nbsp;</td>\r\n <td><img src=\"images/careers_submit.gif\" onmouseover=\"buttonMouseOver(\'submitApplicationNow\',true)\" onmouseout=\"buttonMouseOver(\'submitApplicationNow\',false)\" style=\"cursor: pointer;\" id=\"submitApplicationNow\" alt=\"Submit Application Now\" onclick=\"if (applyValidate()) { document.applyToJobForm.submit(); }\" /></td>\r\n </tr>\r\n </table>\r\n </div>\r\n </div>');
434+
insert into `career_portal_template`(`career_portal_template_id`,`career_portal_name`,`setting`,`value`) values (20,'CATS 2.0','Content - Apply for Position','<div id=\"careerContent\">\r\n <h1>Applying to: <title></h1>\r\n <div class=\"applyBoxLeft\">\r\n <div><h3>1. Import Resume (or CV) and Populate Fields</h3></div>\r\n <table>\r\n <tr>\r\n <td>\r\n \r\n <input-resumeUploadPreview>\r\n </td>\r\n </tr>\r\n </table>\r\n <br />\r\n\r\n <div><h3>2. Tell us about yourself</h3></div>\r\n <p class=\"instructions\">All fields marked with asterisk (*) are required.</p>\r\n <table>\r\n <tr>\r\n <td class=\"label\"><label id=\"firstNameLabel\" for=\"firstName\">*First Name:</label></td>\r\n <td><input-firstName></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"lastNameLabel\" for=\"lastName\">*Last Name:</label></td>\r\n <td><input-lastName></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"emailLabel\" for=\"email\">*Email Adddress:</label></td>\r\n <td><input-email></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"emailConfirmLabel\" for=\"emailconfirm\">*Confirm Email:</label></td>\r\n <td><input-emailconfirm></td>\r\n </tr>\r\n </table>\r\n </div>\r\n \r\n <div class=\"applyBoxRight\">\r\n <div><h3>3. How may we contact you?</h3></div>\r\n <table>\r\n <tr>\r\n <td class=\"label\"><label id=\"homePhoneLabel\" for=\"homePhone\">Home Phone:</label></td>\r\n <td><input-phone-home></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"mobilePhoneLabel\" for=\"mobilePhone\">Mobile Phone:</label></td>\r\n <td><input-phone-cell></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"workPhoneLabel\" for=\"workPhone\">Work Phone:</label></td>\r\n <td><input-phone></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"bestTimeLabel\" for=\"bestTime\">*Best time to call:</label></td>\r\n <td><input-best-time-to-call></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"mailingAddressLabel\" for=\"mailingAddress\">Mailing Address:</label></td>\r\n <td><input-address></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"cityProvinceLabel\" for=\"cityProvince\">*City/Province:</label></td>\r\n <td><input-city></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"stateCountryLabel\" for=\"stateCountry\">*State/Country:</label></td>\r\n <td><input-state></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"zipPostalLabel\" for=\"zipPostal\">*Zip/Postal Code:</label></td>\r\n <td><input-zip></td>\r\n </tr>\r\n </table>\r\n <br />\r\n <div><h3>4. Additional Information</h3></div>\r\n <table>\r\n <tr>\r\n <td class=\"label\"><label id=\"keySkillsLabel\" for=\"keySkills\">*Key Skills:</label></td>\r\n <td><input-keySkills></td>\r\n </tr>\r\n <tr>\r\n <td class=\"label\"><label id=\"captchaLabel\" for=\"captcha\">*Captcha:</label></td>\r\n <td><input-captcha req></td>\r\n </tr>\r\n <tr>\r\n <td>&nbsp;</td>\r\n <td><img src=\"images/careers_submit.gif\" onmouseover=\"buttonMouseOver(\'submitApplicationNow\',true)\" onmouseout=\"buttonMouseOver(\'submitApplicationNow\',false)\" style=\"cursor: pointer;\" id=\"submitApplicationNow\" alt=\"Submit Application Now\" onclick=\"if (applyValidate()) { document.applyToJobForm.submit(); }\" /></td>\r\n </tr>\r\n </table>\r\n </div>\r\n </div>');
435435
insert into `career_portal_template`(`career_portal_template_id`,`career_portal_name`,`setting`,`value`) values (21,'CATS 2.0','Content - Candidate Registration','<div id=\"careerContent\">\r\n <h1><applyContent>Applying to <title></applyContent></h1>\r\n <center>\r\n <table cellpadding=\"0\" cellspacing=\"0\">\r\n <tr>\r\n <td><label id=\"emailLabel\" for=\"email\"><h2>Enter your e-mail address:</h2></label></td>\r\n <td><input-email></td>\r\n </tr>\r\n <tr>\r\n <td align=\"right\" valign=\"top\"><input-new></td>\r\n <td style=\"line-height: 18px;\">\r\n <applyContent>\r\n <strong>I have not registered on this website.</strong><br />\r\n (I haven\'t applied to any jobs online)\r\n </applyContent>\r\n </td>\r\n </tr>\r\n <tr>\r\n <td align=\"right\" valign=\"top\"><input-registered></td>\r\n <td style=\"line-height: 20px;\">\r\n <strong>I have registered before</strong><br />\r\n and my last name is:<br />\r\n <input-lastName><br />\r\n and my zip code is:<br />\r\n <input-zip><br /><br />\r\n <input-rememberMe> Remember my information for future visits<br /><br />\r\n <input-submit><br /><br />\r\n </td>\r\n </tr>\r\n </table>\r\n </center>\r\n</div>\r\n');
436436
insert into `career_portal_template`(`career_portal_template_id`,`career_portal_name`,`setting`,`value`) values (22,'CATS 2.0','Content - Candidate Profile','<div id=\"careerContent\"> <h1 style=\"padding: 0; margin: 0; border: 0;\">My Profile</h1><h3 style=\"font-weight: normal;\">Any changes you make to your profile will be updated on our website for all past and future jobs you apply for.</h3> <br /> <div class=\"applyBoxLeft\"> <div><h3>1. Tell us about yourself</h3></div> <p class=\"instructions\">All fields marked with asterisk (*) are required.</p> <table> <tr> <td class=\"label\"><label id=\"firstNameLabel\" for=\"firstName\">*First Name:</label></td> <td><input-firstName></td> </tr> <tr> <td class=\"label\"><label id=\"lastNameLabel\" for=\"lastName\">*Last Name:</label></td> <td><input-lastName></td> </tr> <tr> <td class=\"label\"><label id=\"emailLabel\" for=\"email\">*Email Adddress:</label></td> <td><input-email1></td> </tr> <tr> <td colspan=\"2\"> <input-resume> </td> </tr> </table> </div> <div class=\"applyBoxRight\"> <div><h3>2. How may we contact you?</h3></div> <table> <tr> <td class=\"label\"><label id=\"homePhoneLabel\" for=\"homePhone\">Home Phone:</label></td> <td><input-phoneHome></td> </tr> <tr> <td class=\"label\"><label id=\"mobilePhoneLabel\" for=\"mobilePhone\">Mobile Phone:</label></td> <td><input-phoneCell></td> </tr> <tr> <td class=\"label\"><label id=\"workPhoneLabel\" for=\"workPhone\">Work Phone:</label></td> <td><input-phoneWork></td> </tr> <tr> <td class=\"label\"><label id=\"bestTimeLabel\" for=\"bestTime\">*Best time to call:</label></td> <td><input-bestTimeToCall></td> </tr> <tr> <td class=\"label\"><label id=\"mailingAddressLabel\" for=\"mailingAddress\">Mailing Address:</label></td> <td><input-address></td> </tr> <tr> <td class=\"label\"><label id=\"cityProvinceLabel\" for=\"cityProvince\">*City/Province:</label></td> <td><input-city></td> </tr> <tr> <td class=\"label\"><label id=\"stateCountryLabel\" for=\"stateCountry\">*State/Country:</label></td> <td><input-state></td> </tr> <tr> <td class=\"label\"><label id=\"zipPostalLabel\" for=\"zipPostal\">*Zip/Postal Code:</label></td> <td><input-zip></td> </tr> </table> <br /> <div><h3>3. Additional Information</h3></div> <table> <tr> <td class=\"label\"><label id=\"keySkillsLabel\" for=\"keySkills\">*Key Skills:</label></td> <td><input-keySkills></td> </tr> <tr> <td>&nbsp;</td> <td style=\"padding-top: 40px;\"><input-submit></td> </tr> </table> </div></div>');
437437

modules/install/Schema.php

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1498,6 +1498,61 @@ public static function get()
14981498
ALTER TABLE `joborder`
14991499
CHANGE `state` `state` VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL;
15001500
',
1501+
'379' => 'PHP:
1502+
$rows = $db->getAllAssoc(
1503+
"SELECT
1504+
career_portal_template_id,
1505+
value
1506+
FROM
1507+
career_portal_template
1508+
WHERE
1509+
career_portal_name = \'CATS 2.0\'
1510+
AND setting = \'Content - Apply for Position\'"
1511+
);
1512+
1513+
$oldFragment = "<tr>\\r\\n <td>&nbsp;</td>\\r\\n <td><img src=\"images/careers_submit.gif\" onmouseover=\"buttonMouseOver(\'submitApplicationNow\',true)\" onmouseout=\"buttonMouseOver(\'submitApplicationNow\',false)\" style=\"cursor: pointer;\" id=\"submitApplicationNow\" alt=\"Submit Application Now\" onclick=\"if (applyValidate()) { document.applyToJobForm.submit(); }\" /></td>\\r\\n </tr>";
1514+
$captchaFragment = "<tr>\\r\\n <td class=\"label\"><label id=\"captchaLabel\" for=\"captcha\">*Captcha:</label></td>\\r\\n <td><input-captcha req></td>\\r\\n </tr>\\r\\n ";
1515+
1516+
foreach ($rows as $row)
1517+
{
1518+
$templateValue = $row[\'value\'];
1519+
1520+
if (strpos($templateValue, \'<input-captcha req>\') !== false)
1521+
{
1522+
continue;
1523+
}
1524+
1525+
if (strpos($templateValue, \'<input-captcha>\') !== false)
1526+
{
1527+
continue;
1528+
}
1529+
1530+
if (strpos($templateValue, $oldFragment) === false)
1531+
{
1532+
continue;
1533+
}
1534+
1535+
$updatedValue = str_replace($oldFragment, $captchaFragment . $oldFragment, $templateValue);
1536+
1537+
if ($updatedValue === $templateValue)
1538+
{
1539+
continue;
1540+
}
1541+
1542+
$db->query(
1543+
sprintf(
1544+
"UPDATE
1545+
career_portal_template
1546+
SET
1547+
value = %s
1548+
WHERE
1549+
career_portal_template_id = %d",
1550+
$db->makeQueryString($updatedValue),
1551+
(int) $row[\'career_portal_template_id\']
1552+
)
1553+
);
1554+
}
1555+
',
15011556

15021557
);
15031558
}

0 commit comments

Comments
 (0)