PK ! 2. . . public/partials/applyonline-public-display.phpnu [
PK ! Vv public/fcm.phpnu [ 'urn:ietf:params:oauth:grant-type:jwt-bearer',
'assertion' => $jwt,
]));
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
return $data['access_token'];
}
function createJwt($serviceAccountPath) {
$serviceAccount = json_decode(file_get_contents($serviceAccountPath), true);
$now = time();
$header = ['alg' => 'RS256', 'typ' => 'JWT'];
$payload = [
'iss' => $serviceAccount['client_email'],
'scope' => 'https://www.googleapis.com/auth/firebase.messaging',
'aud' => 'https://oauth2.googleapis.com/token',
'iat' => $now,
'exp' => $now + 3600,
];
$base64UrlHeader = base64UrlEncode(json_encode($header));
$base64UrlPayload = base64UrlEncode(json_encode($payload));
$signature = '';
openssl_sign($base64UrlHeader . '.' . $base64UrlPayload, $signature, $serviceAccount['private_key'], 'sha256');
$base64UrlSignature = base64UrlEncode($signature);
return $base64UrlHeader . '.' . $base64UrlPayload . '.' . $base64UrlSignature;
}
function base64UrlEncode($data) {
return rtrim(strtr(base64_encode($data), '+/', '-_'), '=');
}
function sendPushNotification($deviceToken, $title, $body, $accessToken) {
$url = 'https://fcm.googleapis.com/v1/projects/YOUR_PROJECT_ID/messages:send';
$headers = [
'Authorization' => 'Bearer ' . $accessToken,
'Content-Type' => 'application/json'
];
$notification = [
'message' => [
'token' => $deviceToken,
'notification' => [
'title' => $title,
'body' => $body
]
]
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($notification));
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
// Example usage
$serviceAccountPath = 'path/to/your/service-account-file.json';
$deviceToken = 'DEVICE_TOKEN';
$title = 'Hello!';
$body = 'This is a test notification.';
$accessToken = getAccessToken($serviceAccountPath);
$response = sendPushNotification($deviceToken, $title, $body, $accessToken);
echo $response;PK ! 2>, , public/css/skeleton.cssnu [ /*
* Skeleton V2.0.4
* Copyright 2014, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 12/29/2014
*/
/* Table of contents
––––––––––––––––––––––––––––––––––––––––––––––––––
- Grid
- Base Styles
- Typography
- Links
- Buttons
- Forms
- Lists
- Code
- Tables
- Spacing
- Utilities
- Clearing
- Media Queries
*/
/* Grid
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.container {
position: relative;
width: 100%;
max-width: 960px;
margin: 0 auto;
padding: 0 20px;
box-sizing: border-box; }
.column,
.columns {
width: 100%;
float: left;
box-sizing: border-box; }
/* For devices larger than 400px */
@media (min-width: 400px) {
.container {
width: 85%;
padding: 0; }
}
/* For devices larger than 550px */
@media (min-width: 550px) {
.container {
width: 80%; }
.column,
.columns {
margin-left: 4%; }
.column:first-child,
.columns:first-child {
margin-left: 0; }
.one.column,
.one.columns { width: 4.66666666667%; }
.two.columns { width: 13.3333333333%; }
.three.columns { width: 22%; }
.four.columns { width: 30.6666666667%; }
.five.columns { width: 39.3333333333%; }
.six.columns { width: 48%; }
.seven.columns { width: 56.6666666667%; }
.eight.columns { width: 65.3333333333%; }
.nine.columns { width: 74.0%; }
.ten.columns { width: 82.6666666667%; }
.eleven.columns { width: 91.3333333333%; }
.twelve.columns { width: 100%; margin-left: 0; }
.one-third.column { width: 30.6666666667%; }
.two-thirds.column { width: 65.3333333333%; }
.one-half.column { width: 48%; }
/* Offsets */
.offset-by-one.column,
.offset-by-one.columns { margin-left: 8.66666666667%; }
.offset-by-two.column,
.offset-by-two.columns { margin-left: 17.3333333333%; }
.offset-by-three.column,
.offset-by-three.columns { margin-left: 26%; }
.offset-by-four.column,
.offset-by-four.columns { margin-left: 34.6666666667%; }
.offset-by-five.column,
.offset-by-five.columns { margin-left: 43.3333333333%; }
.offset-by-six.column,
.offset-by-six.columns { margin-left: 52%; }
.offset-by-seven.column,
.offset-by-seven.columns { margin-left: 60.6666666667%; }
.offset-by-eight.column,
.offset-by-eight.columns { margin-left: 69.3333333333%; }
.offset-by-nine.column,
.offset-by-nine.columns { margin-left: 78.0%; }
.offset-by-ten.column,
.offset-by-ten.columns { margin-left: 86.6666666667%; }
.offset-by-eleven.column,
.offset-by-eleven.columns { margin-left: 95.3333333333%; }
.offset-by-one-third.column,
.offset-by-one-third.columns { margin-left: 34.6666666667%; }
.offset-by-two-thirds.column,
.offset-by-two-thirds.columns { margin-left: 69.3333333333%; }
.offset-by-one-half.column,
.offset-by-one-half.columns { margin-left: 52%; }
}
/* Base Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* NOTE
html is set to 62.5% so that all the REM measurements throughout Skeleton
are based on 10px sizing. So basically 1.5rem = 15px :) */
html {
font-size: 62.5%; }
body {
font-size: 1.5em; /* currently ems cause chrome bug misinterpreting rems on body element */
line-height: 1.6;
font-weight: 400;
font-family: "Raleway", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
color: #222; }
/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
margin-bottom: 2rem;
font-weight: 300; }
h1 { font-size: 4.0rem; line-height: 1.2; letter-spacing: -.1rem;}
h2 { font-size: 3.6rem; line-height: 1.25; letter-spacing: -.1rem; }
h3 { font-size: 3.0rem; line-height: 1.3; letter-spacing: -.1rem; }
h4 { font-size: 2.4rem; line-height: 1.35; letter-spacing: -.08rem; }
h5 { font-size: 1.8rem; line-height: 1.5; letter-spacing: -.05rem; }
h6 { font-size: 1.5rem; line-height: 1.6; letter-spacing: 0; }
/* Larger than phablet */
@media (min-width: 550px) {
h1 { font-size: 5.0rem; }
h2 { font-size: 4.2rem; }
h3 { font-size: 3.6rem; }
h4 { font-size: 3.0rem; }
h5 { font-size: 2.4rem; }
h6 { font-size: 1.5rem; }
}
p {
margin-top: 0; }
/* Links
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
color: #1EAEDB; }
a:hover {
color: #0FA0CE; }
/* Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
display: inline-block;
height: 38px;
padding: 0 30px;
color: #555;
text-align: center;
font-size: 11px;
font-weight: 600;
line-height: 38px;
letter-spacing: .1rem;
text-transform: uppercase;
text-decoration: none;
white-space: nowrap;
background-color: transparent;
border-radius: 4px;
border: 1px solid #bbb;
cursor: pointer;
box-sizing: border-box; }
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:focus,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
color: #333;
border-color: #888;
outline: 0; }
.button.button-primary,
button.button-primary,
input[type="submit"].button-primary,
input[type="reset"].button-primary,
input[type="button"].button-primary {
color: #FFF;
background-color: #33C3F0;
border-color: #33C3F0; }
.button.button-primary:hover,
button.button-primary:hover,
input[type="submit"].button-primary:hover,
input[type="reset"].button-primary:hover,
input[type="button"].button-primary:hover,
.button.button-primary:focus,
button.button-primary:focus,
input[type="submit"].button-primary:focus,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary:focus {
color: #FFF;
background-color: #1EAEDB;
border-color: #1EAEDB; }
/* Forms
–––––––––––––––––––––––––––––––––––––––––––––––––– */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
height: 38px;
padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
background-color: #fff;
border: 1px solid #D1D1D1;
border-radius: 4px;
box-shadow: none;
box-sizing: border-box; }
/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none; }
textarea {
min-height: 65px;
padding-top: 6px;
padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
border: 1px solid #33C3F0;
outline: 0; }
label,
legend {
display: block;
margin-bottom: .5rem;
font-weight: 600; }
fieldset {
padding: 0;
border-width: 0; }
input[type="checkbox"],
input[type="radio"] {
display: inline; }
label > .label-body {
display: inline-block;
margin-left: .5rem;
font-weight: normal; }
/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {
list-style: circle inside; }
ol {
list-style: decimal inside; }
ol, ul {
padding-left: 0;
margin-top: 0; }
ul ul,
ul ol,
ol ol,
ol ul {
margin: 1.5rem 0 1.5rem 3rem;
font-size: 90%; }
li {
margin-bottom: 1rem; }
/* Code
–––––––––––––––––––––––––––––––––––––––––––––––––– */
code {
padding: .2rem .5rem;
margin: 0 .2rem;
font-size: 90%;
white-space: nowrap;
background: #F1F1F1;
border: 1px solid #E1E1E1;
border-radius: 4px; }
pre > code {
display: block;
padding: 1rem 1.5rem;
white-space: pre; }
/* Tables
–––––––––––––––––––––––––––––––––––––––––––––––––– */
th,
td {
padding: 12px 15px;
text-align: left;
border-bottom: 1px solid #E1E1E1; }
th:first-child,
td:first-child {
padding-left: 0; }
th:last-child,
td:last-child {
padding-right: 0; }
/* Spacing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
button,
.button {
margin-bottom: 1rem; }
input,
textarea,
select,
fieldset {
margin-bottom: 1.5rem; }
pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
margin-bottom: 2.5rem; }
/* Utilities
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.u-full-width {
width: 100%;
box-sizing: border-box; }
.u-max-full-width {
max-width: 100%;
box-sizing: border-box; }
.u-pull-right {
float: right; }
.u-pull-left {
float: left; }
/* Misc
–––––––––––––––––––––––––––––––––––––––––––––––––– */
hr {
margin-top: 3rem;
margin-bottom: 3.5rem;
border-width: 0;
border-top: 1px solid #E1E1E1; }
/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* Self Clearing Goodness */
.container:after,
.row:after,
.u-cf {
content: "";
display: table;
clear: both; }
/* Media Queries
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/*
Note: The best way to structure the use of media queries is to create the queries
near the relevant code. For example, if you wanted to change the styles for buttons
on small devices, paste the mobile query code up in the buttons section and style it
there.
*/
/* Larger than mobile */
@media (min-width: 400px) {}
/* Larger than phablet (also point when grid becomes active) */
@media (min-width: 550px) {}
/* Larger than tablet */
@media (min-width: 750px) {}
/* Larger than desktop */
@media (min-width: 1000px) {}
/* Larger than Desktop HD */
@media (min-width: 1200px) {}
PK ! HL} L} public/css/jquery-ui.min.cssnu [ /*! jQuery UI - v1.12.1 - 2016-09-14
* http://jqueryui.com
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?bgShadowXPos=&bgOverlayXPos=&bgErrorXPos=&bgHighlightXPos=&bgContentXPos=&bgHeaderXPos=&bgActiveXPos=&bgHoverXPos=&bgDefaultXPos=&bgShadowYPos=&bgOverlayYPos=&bgErrorYPos=&bgHighlightYPos=&bgContentYPos=&bgHeaderYPos=&bgActiveYPos=&bgHoverYPos=&bgDefaultYPos=&bgShadowRepeat=&bgOverlayRepeat=&bgErrorRepeat=&bgHighlightRepeat=&bgContentRepeat=&bgHeaderRepeat=&bgActiveRepeat=&bgHoverRepeat=&bgDefaultRepeat=&iconsHover=url(%22images%2Fui-icons_555555_256x240.png%22)&iconsHighlight=url(%22images%2Fui-icons_777620_256x240.png%22)&iconsHeader=url(%22images%2Fui-icons_444444_256x240.png%22)&iconsError=url(%22images%2Fui-icons_cc0000_256x240.png%22)&iconsDefault=url(%22images%2Fui-icons_777777_256x240.png%22)&iconsContent=url(%22images%2Fui-icons_444444_256x240.png%22)&iconsActive=url(%22images%2Fui-icons_ffffff_256x240.png%22)&bgImgUrlShadow=&bgImgUrlOverlay=&bgImgUrlHover=&bgImgUrlHighlight=&bgImgUrlHeader=&bgImgUrlError=&bgImgUrlDefault=&bgImgUrlContent=&bgImgUrlActive=&opacityFilterShadow=Alpha(Opacity%3D30)&opacityFilterOverlay=Alpha(Opacity%3D30)&opacityShadowPerc=30&opacityOverlayPerc=30&iconColorHover=%23555555&iconColorHighlight=%23777620&iconColorHeader=%23444444&iconColorError=%23cc0000&iconColorDefault=%23777777&iconColorContent=%23444444&iconColorActive=%23ffffff&bgImgOpacityShadow=0&bgImgOpacityOverlay=0&bgImgOpacityError=95&bgImgOpacityHighlight=55&bgImgOpacityContent=75&bgImgOpacityHeader=75&bgImgOpacityActive=65&bgImgOpacityHover=75&bgImgOpacityDefault=75&bgTextureShadow=flat&bgTextureOverlay=flat&bgTextureError=flat&bgTextureHighlight=flat&bgTextureContent=flat&bgTextureHeader=flat&bgTextureActive=flat&bgTextureHover=flat&bgTextureDefault=flat&cornerRadius=3px&fwDefault=normal&ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&cornerRadiusShadow=8px&thicknessShadow=5px&offsetLeftShadow=0px&offsetTopShadow=0px&opacityShadow=.3&bgColorShadow=%23666666&opacityOverlay=.3&bgColorOverlay=%23aaaaaa&fcError=%235f3f3f&borderColorError=%23f1a899&bgColorError=%23fddfdf&fcHighlight=%23777620&borderColorHighlight=%23dad55e&bgColorHighlight=%23fffa90&fcContent=%23333333&borderColorContent=%23dddddd&bgColorContent=%23ffffff&fcHeader=%23333333&borderColorHeader=%23dddddd&bgColorHeader=%23e9e9e9&fcActive=%23ffffff&borderColorActive=%23003eff&bgColorActive=%23007fff&fcHover=%232b2b2b&borderColorHover=%23cccccc&bgColorHover=%23ededed&fcDefault=%23454545&borderColorDefault=%23c5c5c5&bgColorDefault=%23f6f6f6
* Copyright jQuery Foundation and other contributors; Licensed MIT */
.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin:2px 0 0 0;padding:.5em .5em .5em .7em;font-size:100%}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-button{padding:.4em 1em;display:inline-block;position:relative;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2em;box-sizing:border-box;text-indent:-9999px;white-space:nowrap}input.ui-button.ui-button-icon-only{text-indent:0}.ui-button-icon-only .ui-icon{position:absolute;top:50%;left:50%;margin-top:-8px;margin-left:-8px}.ui-button.ui-icon-notext .ui-icon{padding:0;width:2.1em;height:2.1em;text-indent:-9999px;white-space:nowrap}input.ui-button.ui-icon-notext .ui-icon{width:auto;height:auto;text-indent:0;white-space:normal;padding:.4em 1em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-controlgroup{vertical-align:middle;display:inline-block}.ui-controlgroup > .ui-controlgroup-item{float:left;margin-left:0;margin-right:0}.ui-controlgroup > .ui-controlgroup-item:focus,.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus{z-index:9999}.ui-controlgroup-vertical > .ui-controlgroup-item{display:block;float:none;width:100%;margin-top:0;margin-bottom:0;text-align:left}.ui-controlgroup-vertical .ui-controlgroup-item{box-sizing:border-box}.ui-controlgroup .ui-controlgroup-label{padding:.4em 1em}.ui-controlgroup .ui-controlgroup-label span{font-size:80%}.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item{border-left:none}.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item{border-top:none}.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content{border-right:none}.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content{border-bottom:none}.ui-controlgroup-vertical .ui-spinner-input{width:75%;width:calc( 100% - 2.4em )}.ui-controlgroup-vertical .ui-spinner .ui-spinner-up{border-top-style:solid}.ui-checkboxradio-label .ui-icon-background{box-shadow:inset 1px 1px 1px #ccc;border-radius:.12em;border:none}.ui-checkboxradio-radio-label .ui-icon-background{width:16px;height:16px;border-radius:1em;overflow:visible;border:none}.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon{background-image:none;width:8px;height:8px;border-width:4px;border-style:solid}.ui-checkboxradio-disabled{pointer-events:none}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:45%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker .ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;left:.5em;top:.3em}.ui-dialog{position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-n{height:2px;top:0}.ui-dialog .ui-resizable-e{width:2px;right:0}.ui-dialog .ui-resizable-s{height:2px;bottom:0}.ui-dialog .ui-resizable-w{width:2px;left:0}.ui-dialog .ui-resizable-se,.ui-dialog .ui-resizable-sw,.ui-dialog .ui-resizable-ne,.ui-dialog .ui-resizable-nw{width:7px;height:7px}.ui-dialog .ui-resizable-se{right:0;bottom:0}.ui-dialog .ui-resizable-sw{left:0;bottom:0}.ui-dialog .ui-resizable-ne{right:0;top:0}.ui-dialog .ui-resizable-nw{left:0;top:0}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");height:100%;filter:alpha(opacity=25);opacity:0.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-selectmenu-menu{padding:0;margin:0;position:absolute;top:0;left:0;display:none}.ui-selectmenu-menu .ui-menu{overflow:auto;overflow-x:hidden;padding-bottom:1px}.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup{font-size:1em;font-weight:bold;line-height:1.5;padding:2px 0.4em;margin:0.5em 0 0 0;height:auto;border:0}.ui-selectmenu-open{display:block}.ui-selectmenu-text{display:block;margin-right:20px;overflow:hidden;text-overflow:ellipsis}.ui-selectmenu-button.ui-button{text-align:left;white-space:nowrap;width:14em}.ui-selectmenu-icon.ui-icon{float:right;margin-top:0}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;color:inherit;padding:.222em 0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:2em}.ui-spinner-button{width:1.6em;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top-style:none;border-bottom-style:none;border-right-style:none}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav .ui-tabs-anchor{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor{cursor:text}.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #c5c5c5}.ui-widget-content{border:1px solid #ddd;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #ddd;background:#e9e9e9;color:#333;font-weight:bold}.ui-widget-header a{color:#333}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,.ui-button,html .ui-button.ui-state-disabled:hover,html .ui-button.ui-state-disabled:active{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:normal;color:#454545}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button,.ui-button{color:#454545;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus,.ui-button:hover,.ui-button:focus{border:1px solid #ccc;background:#ededed;font-weight:normal;color:#2b2b2b}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,a.ui-button:hover,a.ui-button:focus{color:#2b2b2b;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px rgb(94,158,214)}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active,.ui-button:active,.ui-button.ui-state-active:hover{border:1px solid #003eff;background:#007fff;font-weight:normal;color:#fff}.ui-icon-background,.ui-state-active .ui-icon-background{border:#003eff;background-color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-checked{border:1px solid #dad55e;background:#fffa90}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-button:hover .ui-icon,.ui-button:focus .ui-icon{background-image:url("images/ui-icons_555555_256x240.png")}.ui-state-active .ui-icon,.ui-button:active .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-highlight .ui-icon,.ui-button .ui-state-highlight.ui-icon{background-image:url("images/ui-icons_777620_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cc0000_256x240.png")}.ui-button .ui-icon{background-image:url("images/ui-icons_777777_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:3px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:3px}.ui-widget-overlay{background:#aaa;opacity:.003;filter:Alpha(Opacity=.3)}.ui-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666}PK ! ͣu u ! public/css/skeleton-normalize.cssnu [ /*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
*/
html {
font-family: sans-serif; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/**
* Remove default margin.
*/
body {
margin: 0;
}
/* HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined for any HTML5 element in IE 8/9.
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox.
* Correct `block` display not defined for `main` in IE 11.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
display: block;
}
/**
* 1. Correct `inline-block` display not defined in IE 8/9.
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
progress,
video {
display: inline-block; /* 1 */
vertical-align: baseline; /* 2 */
}
/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Address `[hidden]` styling not present in IE 8/9/10.
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
*/
[hidden],
template {
display: none;
}
/* Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
background-color: transparent;
}
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
outline: 0;
}
/* Text-level semantics
========================================================================== */
/**
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted;
}
/**
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
*/
b,
strong {
font-weight: bold;
}
/**
* Address styling not present in Safari and Chrome.
*/
dfn {
font-style: italic;
}
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari, and Chrome.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/**
* Address styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000;
}
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
/* Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9/10.
*/
img {
border: 0;
}
/**
* Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
overflow: hidden;
}
/* Grouping content
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari.
*/
figure {
margin: 1em 40px;
}
/**
* Address differences between Firefox and other browsers.
*/
hr {
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0;
}
/**
* Contain overflow in all browsers.
*/
pre {
overflow: auto;
}
/**
* Address odd `em`-unit font size rendering in all browsers.
*/
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1em;
}
/* Forms
========================================================================== */
/**
* Known limitation: by default, Chrome and Safari on OS X allow very limited
* styling of `select`, unless a `border` property is set.
*/
/**
* 1. Correct color not being inherited.
* Known issue: affects color of disabled elements.
* 2. Correct font properties not being inherited.
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
*/
button,
input,
optgroup,
select,
textarea {
color: inherit; /* 1 */
font: inherit; /* 2 */
margin: 0; /* 3 */
}
/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
overflow: visible;
}
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
* Correct `select` style inheritance in Firefox.
*/
button,
select {
text-transform: none;
}
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
*/
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button; /* 2 */
cursor: pointer; /* 3 */
}
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default;
}
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
input {
line-height: normal;
}
/**
* It's recommended that you don't attempt to style these elements.
* Firefox's implementation doesn't respect box-sizing, padding, or width.
*
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
* (include `-moz` to future-proof).
*/
input[type="search"] {
-webkit-appearance: textfield; /* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box; /* 2 */
box-sizing: content-box;
}
/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* Define consistent border, margin, and padding.
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
/**
* 1. Correct `color` not being inherited in IE 8/9/10/11.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
border: 0; /* 1 */
padding: 0; /* 2 */
}
/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
overflow: auto;
}
/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
font-weight: bold;
}
/* Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0;
}
td,
th {
padding: 0;
}PK ! 6 ! public/css/applyonline-public.cssnu [ /**
* All of the CSS for your public-facing functionality should be
* included in this file.
*/
.aol-thumbnail {display: inline-block; height: auto; max-width: 100%; padding: 4px; line-height: 1.428571429; background-color: #ffffff; border: 1px solid #dddddd; border-radius: 4px; -webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }
.aol-wrapper input[type="checkbox"], .aol-wrapper input[type="radio"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}
.aol-wrapper input[type="number"]::-webkit-inner-spin-button, .aol-wrapper input[type="number"]::-webkit-outer-spin-button{height:auto}
.aol_app_form .checkbox, .aol_app_form .radio {position: relative; display: block; margin-top: 10px; margin-bottom: 10px; }
.aol-wrapper legend{border:0;padding:0}
.aol-wrapper textarea{overflow:auto}
.aol-wrapper input,.aol-wrapper button,.aol-wrapper select,.aol-wrapper textarea{font-family:inherit;font-size:inherit;line-height:inherit}
.aol-wrapper [role="button"]{cursor:pointer}
.aol-row{margin-left:-15px; margin-right:-15px}
.aol-xs-1, .aol-sm-1, .aol-md-1, .aol-lg-1, .aol-xs-2, .aol-sm-2, .aol-md-2, .aol-lg-2, .aol-xs-3, .aol-sm-3, .aol-md-3, .aol-lg-3, .aol-xs-4, .aol-sm-4, .aol-md-4, .aol-lg-4, .aol-xs-5, .aol-sm-5, .aol-md-5, .aol-lg-5, .aol-xs-6, .aol-sm-6, .aol-md-6, .aol-lg-6, .aol-xs-7, .aol-sm-7, .aol-md-7, .aol-lg-7, .aol-xs-8, .aol-sm-8, .aol-md-8, .aol-lg-8, .aol-xs-9, .aol-sm-9, .aol-md-9, .aol-lg-9, .aol-xs-10, .aol-sm-10, .aol-md-10, .aol-lg-10, .aol-xs-11, .aol-sm-11, .aol-md-11, .aol-lg-11, .aol-xs-12, .aol-sm-12, .aol-md-12, .aol-lg-12{position:relative;min-height:1px;padding-left:15px;padding-right:15px}
.aol-xs-1, .aol-xs-2, .aol-xs-3, .aol-xs-4, .aol-xs-5, .aol-xs-6, .aol-xs-7, .aol-xs-8, .aol-xs-9, .aol-xs-10, .aol-xs-11, .aol-xs-12{float:left}
.aol-xs-12{width:100%}
.aol-xs-11{width:91.66666667%}
.aol-xs-10{width:83.33333333%}
.aol-xs-9{width:75%}
.aol-xs-8{width:66.66666667%}
.aol-xs-7{width:58.33333333%}
.aol-xs-6{width:50%}
.aol-xs-5{width:41.66666667%}
.aol-xs-4{width:33.33333333%}
.aol-xs-3{width:25%}
.aol-xs-2{width:16.66666667%}
.aol-xs-1{width:8.33333333%}
.aol-xs-pull-12{right:100%}
.aol-xs-pull-11{right:91.66666667%}
.aol-xs-pull-10{right:83.33333333%}
.aol-xs-pull-9{right:75%}
.aol-xs-pull-8{right:66.66666667%}
.aol-xs-pull-7{right:58.33333333%}
.aol-xs-pull-6{right:50%}
.aol-xs-pull-5{right:41.66666667%}
.aol-xs-pull-4{right:33.33333333%}
.aol-xs-pull-3{right:25%}
.aol-xs-pull-2{right:16.66666667%}
.aol-xs-pull-1{right:8.33333333%}
.aol-xs-pull-0{right:auto}
.aol-xs-push-12{left:100%}
.aol-xs-push-11{left:91.66666667%}
.aol-xs-push-10{left:83.33333333%}
.aol-xs-push-9{left:75%}
.aol-xs-push-8{left:66.66666667%}
.aol-xs-push-7{left:58.33333333%}
.aol-xs-push-6{left:50%}
.aol-xs-push-5{left:41.66666667%}
.aol-xs-push-4{left:33.33333333%}
.aol-xs-push-3{left:25%}
.aol-xs-push-2{left:16.66666667%}
.aol-xs-push-1{left:8.33333333%}
.aol-xs-push-0{left:auto}
.aol-xs-offset-12{margin-left:100%}
.aol-xs-offset-11{margin-left:91.66666667%}
.aol-xs-offset-10{margin-left:83.33333333%}
.aol-xs-offset-9{margin-left:75%}
.aol-xs-offset-8{margin-left:66.66666667%}
.aol-xs-offset-7{margin-left:58.33333333%}
.aol-xs-offset-6{margin-left:50%}
.aol-xs-offset-5{margin-left:41.66666667%}
.aol-xs-offset-4{margin-left:33.33333333%}
.aol-xs-offset-3{margin-left:25%}
.aol-xs-offset-2{margin-left:16.66666667%}
.aol-xs-offset-1{margin-left:8.33333333%}
.aol-xs-offset-0{margin-left:0}
@media (min-width:768px){.aol-sm-1, .aol-sm-2, .aol-sm-3, .aol-sm-4, .aol-sm-5, .aol-sm-6, .aol-sm-7, .aol-sm-8, .aol-sm-9, .aol-sm-10, .aol-sm-11, .aol-sm-12{float:left}
.aol-sm-12{width:100%}
.aol-sm-11{width:91.66666667%}
.aol-sm-10{width:83.33333333%}
.aol-sm-9{width:75%}
.aol-sm-8{width:66.66666667%}
.aol-sm-7{width:58.33333333%}
.aol-sm-6{width:50%}
.aol-sm-5{width:41.66666667%}
.aol-sm-4{width:33.33333333%}
.aol-sm-3{width:25%}
.aol-sm-2{width:16.66666667%}
.aol-sm-1{width:8.33333333%}
.aol-sm-pull-12{right:100%}
.aol-sm-pull-11{right:91.66666667%}
.aol-sm-pull-10{right:83.33333333%}
.aol-sm-pull-9{right:75%}
.aol-sm-pull-8{right:66.66666667%}
.aol-sm-pull-7{right:58.33333333%}
.aol-sm-pull-6{right:50%}
.aol-sm-pull-5{right:41.66666667%}
.aol-sm-pull-4{right:33.33333333%}
.aol-sm-pull-3{right:25%}
.aol-sm-pull-2{right:16.66666667%}
.aol-sm-pull-1{right:8.33333333%}
.aol-sm-pull-0{right:auto}
.aol-sm-push-12{left:100%}
.aol-sm-push-11{left:91.66666667%}
.aol-sm-push-10{left:83.33333333%}
.aol-sm-push-9{left:75%}
.aol-sm-push-8{left:66.66666667%}
.aol-sm-push-7{left:58.33333333%}
.aol-sm-push-6{left:50%}
.aol-sm-push-5{left:41.66666667%}
.aol-sm-push-4{left:33.33333333%}
.aol-sm-push-3{left:25%}
.aol-sm-push-2{left:16.66666667%}
.aol-sm-push-1{left:8.33333333%}
.aol-sm-push-0{left:auto}
.aol-sm-offset-12{margin-left:100%}
.aol-sm-offset-11{margin-left:91.66666667%}
.aol-sm-offset-10{margin-left:83.33333333%}
.aol-sm-offset-9{margin-left:75%}
.aol-sm-offset-8{margin-left:66.66666667%}
.aol-sm-offset-7{margin-left:58.33333333%}
.aol-sm-offset-6{margin-left:50%}
.aol-sm-offset-5{margin-left:41.66666667%}
.aol-sm-offset-4{margin-left:33.33333333%}
.aol-sm-offset-3{margin-left:25%}
.aol-sm-offset-2{margin-left:16.66666667%}
.aol-sm-offset-1{margin-left:8.33333333%}
.aol-sm-offset-0{margin-left:0}
.center-sm-block{display:block;margin-left:auto;margin-right:auto}
}
@media (min-width:992px){.aol-md-1, .aol-md-2, .aol-md-3, .aol-md-4, .aol-md-5, .aol-md-6, .aol-md-7, .aol-md-8, .aol-md-9, .aol-md-10, .aol-md-11, .aol-md-12{float:left}
.aol-md-12{width:100%}
.aol-md-11{width:91.66666667%}
.aol-md-10{width:83.33333333%}
.aol-md-9{width:75%}
.aol-md-8{width:66.66666667%}
.aol-md-7{width:58.33333333%}
.aol-md-6{width:50%}
.aol-md-5{width:41.66666667%}
.aol-md-4{width:33.33333333%}
.aol-md-3{width:25%}
.aol-md-2{width:16.66666667%}
.aol-md-1{width:8.33333333%}
.aol-md-pull-12{right:100%}
.aol-md-pull-11{right:91.66666667%}
.aol-md-pull-10{right:83.33333333%}
.aol-md-pull-9{right:75%}
.aol-md-pull-8{right:66.66666667%}
.aol-md-pull-7{right:58.33333333%}
.aol-md-pull-6{right:50%}
.aol-md-pull-5{right:41.66666667%}
.aol-md-pull-4{right:33.33333333%}
.aol-md-pull-3{right:25%}
.aol-md-pull-2{right:16.66666667%}
.aol-md-pull-1{right:8.33333333%}
.aol-md-pull-0{right:auto}
.aol-md-push-12{left:100%}
.aol-md-push-11{left:91.66666667%}
.aol-md-push-10{left:83.33333333%}
.aol-md-push-9{left:75%}
.aol-md-push-8{left:66.66666667%}
.aol-md-push-7{left:58.33333333%}
.aol-md-push-6{left:50%}
.aol-md-push-5{left:41.66666667%}
.aol-md-push-4{left:33.33333333%}
.aol-md-push-3{left:25%}
.aol-md-push-2{left:16.66666667%}
.aol-md-push-1{left:8.33333333%}
.aol-md-push-0{left:auto}
.aol-md-offset-12{margin-left:100%}
.aol-md-offset-11{margin-left:91.66666667%}
.aol-md-offset-10{margin-left:83.33333333%}
.aol-md-offset-9{margin-left:75%}
.aol-md-offset-8{margin-left:66.66666667%}
.aol-md-offset-7{margin-left:58.33333333%}
.aol-md-offset-6{margin-left:50%}
.aol-md-offset-5{margin-left:41.66666667%}
.aol-md-offset-4{margin-left:33.33333333%}
.aol-md-offset-3{margin-left:25%}
.aol-md-offset-2{margin-left:16.66666667%}
.aol-md-offset-1{margin-left:8.33333333%}
.aol-md-offset-0{margin-left:0}
.pull-md-left{float:left !important; margin-right: 10px; margin-bottom: 10px; }
}
@media (min-width:1200px){
.aol-lg-1, .aol-lg-2, .aol-lg-3, .aol-lg-4, .aol-lg-5, .aol-lg-6, .aol-lg-7, .aol-lg-8, .aol-lg-9, .aol-lg-10, .aol-lg-11, .aol-lg-12{float:left}
.aol-lg-12{width:100%}
.aol-lg-11{width:91.66666667%}
.aol-lg-10{width:83.33333333%}
.aol-lg-9{width:75%}
.aol-lg-8{width:66.66666667%}
.aol-lg-7{width:58.33333333%}
.aol-lg-6{width:50%}
.aol-lg-5{width:41.66666667%}
.aol-lg-4{width:33.33333333%}
.aol-lg-3{width:25%}
.aol-lg-2{width:16.66666667%}
.aol-lg-1{width:8.33333333%}
.aol-lg-pull-12{right:100%}
.aol-lg-pull-11{right:91.66666667%}
.aol-lg-pull-10{right:83.33333333%}
.aol-lg-pull-9{right:75%}
.aol-lg-pull-8{right:66.66666667%}
.aol-lg-pull-7{right:58.33333333%}
.aol-lg-pull-6{right:50%}
.aol-lg-pull-5{right:41.66666667%}
.aol-lg-pull-4{right:33.33333333%}
.aol-lg-pull-3{right:25%}
.aol-lg-pull-2{right:16.66666667%}
.aol-lg-pull-1{right:8.33333333%}
.aol-lg-pull-0{right:auto}
.aol-lg-push-12{left:100%}
.aol-lg-push-11{left:91.66666667%}
.aol-lg-push-10{left:83.33333333%}
.aol-lg-push-9{left:75%}
.aol-lg-push-8{left:66.66666667%}
.aol-lg-push-7{left:58.33333333%}
.aol-lg-push-6{left:50%}
.aol-lg-push-5{left:41.66666667%}
.aol-lg-push-4{left:33.33333333%}
.aol-lg-push-3{left:25%}
.aol-lg-push-2{left:16.66666667%}
.aol-lg-push-1{left:8.33333333%}
.aol-lg-push-0{left:auto}
.aol-lg-offset-12{margin-left:100%}
.aol-lg-offset-11{margin-left:91.66666667%}
.aol-lg-offset-10{margin-left:83.33333333%}
.aol-lg-offset-9{margin-left:75%}
.aol-lg-offset-8{margin-left:66.66666667%}
.aol-lg-offset-7{margin-left:58.33333333%}
.aol-lg-offset-6{margin-left:50%}
.aol-lg-offset-5{margin-left:41.66666667%}
.aol-lg-offset-4{margin-left:33.33333333%}
.aol-lg-offset-3{margin-left:25%}
.aol-lg-offset-2{margin-left:16.66666667%}
.aol-lg-offset-1{margin-left:8.33333333%}
.aol-lg-offset-0{margin-left:0}
}
.aol-wrapper fieldset{padding:0;margin:0;border:0;min-width:0}
.aol-wrapper legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}
.aol-wrapper fieldset .section-info{margin-bottom:20px; margin-top:-20px; display: block}
.aol-wrapper label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:bold}
.aol-wrapper input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
.aol-wrapper input[type="radio"], .aol-wrapper input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}
.aol-wrapper input[type="file"]{display:block}
.aol-wrapper input[type="range"]{display:block;width:100%}
.aol-wrapper select[multiple], .aol-wrapper select[size]{height:auto}
.aol-wrapper input[type="file"]:focus, .aol-wrapper input[type="radio"]:focus, .aol-wrapper input[type="checkbox"]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
.aol-wrapper output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}
.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s}
.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6)}
.form-control::-moz-placeholder{color:#999;opacity:1}
.form-control:-ms-input-placeholder{color:#999}
.form-control::-webkit-input-placeholder{color:#999}
.form-control::-ms-expand{border:0;background-color:transparent}
.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}
.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}
textarea.form-control{height:auto}
.aol-wrapper input[type="search"]{-webkit-appearance:none}
@media screen and (-webkit-min-device-pixel-ratio:0){
input[type="date"].form-control, input[type="time"].form-control, input[type="datetime-local"].form-control,input[type="month"].form-control{line-height:34px}
input[type="date"].input-sm,input[type="time"].input-sm,input[type="datetime-local"].input-sm,input[type="month"].input-sm,.input-group-sm input[type="date"],.input-group-sm input[type="time"],.input-group-sm input[type="datetime-local"],.input-group-sm input[type="month"]{line-height:30px}
input[type="date"].input-lg,input[type="time"].input-lg,input[type="datetime-local"].input-lg,input[type="month"].input-lg,.input-group-lg input[type="date"],.input-group-lg input[type="time"],.input-group-lg input[type="datetime-local"],.input-group-lg input[type="month"]{line-height:46px}
}
.form-group{margin-bottom:15px}
.radio,.checkbox{position:relative;display:block;margin-top:10px;margin-bottom:10px}
.radio label,.checkbox label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:normal;cursor:pointer}
.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{position:absolute;margin-left:-20px;margin-top:4px \9}
.radio+.radio,.checkbox+.checkbox{margin-top:-5px}
.radio-inline,.checkbox-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}
.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}
input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"].disabled,input[type="checkbox"].disabled,fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"]{cursor:not-allowed}
.radio-inline.disabled,.checkbox-inline.disabled,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox-inline{cursor:not-allowed}
.radio.disabled label,.checkbox.disabled label,fieldset[disabled] .radio label,fieldset[disabled] .checkbox label{cursor:not-allowed}
.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0;min-height:34px}
.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right:0}
.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}
select.input-sm{height:30px;line-height:30px}
textarea.input-sm,select[multiple].input-sm{height:auto}
.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}
.form-group-sm select.form-control{height:30px;line-height:30px}
.form-group-sm textarea.form-control,.form-group-sm select[multiple].form-control{height:auto}
.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}
.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}
select.input-lg{height:46px;line-height:46px}
textarea.input-lg,select[multiple].input-lg{height:auto}
.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}
.form-group-lg select.form-control{height:46px;line-height:46px}
.form-group-lg textarea.form-control,.form-group-lg select[multiple].form-control{height:auto}
.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}
.has-feedback{position:relative}
.has-feedback .form-control{padding-right:42.5px}
.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}
.input-lg+.form-control-feedback,.input-group-lg+.form-control-feedback,.form-group-lg .form-control+.form-control-feedback{width:46px;height:46px;line-height:46px}
.input-sm+.form-control-feedback,.input-group-sm+.form-control-feedback,.form-group-sm .form-control+.form-control-feedback{width:30px;height:30px;line-height:30px}
.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline,.has-success.radio label,.has-success.checkbox label,.has-success.radio-inline label,.has-success.checkbox-inline label{color:#3c763d}
.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}
.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}
.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}
.has-success .form-control-feedback{color:#3c763d}
.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline,.has-warning.radio label,.has-warning.checkbox label,.has-warning.radio-inline label,.has-warning.checkbox-inline label{color:#8a6d3b}
.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}
.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}
.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}
.has-warning .form-control-feedback{color:#8a6d3b}
.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline,.has-error.radio label,.has-error.checkbox label,.has-error.radio-inline label,.has-error.checkbox-inline label{color:#a94442}
.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}
.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}
.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}
.has-error .form-control-feedback{color:#a94442}
.has-feedback label~.form-control-feedback{top:25px}
.has-feedback label.sr-only~.form-control-feedback{top:0}
.help-block{display:block;margin-bottom:10px;color:#737373}
@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}
.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}
.form-inline .form-control-static{display:inline-block}
.form-inline .input-group{display:inline-table;vertical-align:middle}
.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.form-inline .input-group .form-control{width:auto}
.form-inline .input-group>.form-control{width:100%}
.form-inline .control-label{margin-bottom:0;vertical-align:middle}
.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}
.form-inline .radio label,.form-inline .checkbox label{padding-left:0}
.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{position:relative;margin-left:0}
.form-inline .has-feedback .form-control-feedback{top:0}
}
.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}
.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}
.form-horizontal .form-group{margin-left:-15px;margin-right:-15px}
@media (min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}
}
.form-horizontal .has-feedback .form-control-feedback{right:15px}
@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}
}
@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}
}
.btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
.btn:focus,.btn:active:focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn.active.focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
.btn:hover,.btn:focus,.btn.focus{color:#333;text-decoration:none}
.btn:active,.btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}
.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}
a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}
.btn-default{color:#333;background-color:#fff;border-color:#ccc}
.btn-default:focus,.btn-default.focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}
.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}
.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}
.btn-default:active:hover,.btn-default.active:hover,.open>.dropdown-toggle.btn-default:hover,.btn-default:active:focus,.btn-default.active:focus,.open>.dropdown-toggle.btn-default:focus,.btn-default:active.focus,.btn-default.active.focus,.open>.dropdown-toggle.btn-default.focus{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}
.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{background-image:none}
.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled.focus,.btn-default[disabled].focus,fieldset[disabled] .btn-default.focus{background-color:#fff;border-color:#ccc}
.btn-default .badge{color:#fff;background-color:#333}
.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}
.btn-primary:focus,.btn-primary.focus{color:#fff;background-color:#286090;border-color:#122b40}
.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}
.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}
.btn-primary:active:hover,.btn-primary.active:hover,.open>.dropdown-toggle.btn-primary:hover,.btn-primary:active:focus,.btn-primary.active:focus,.open>.dropdown-toggle.btn-primary:focus,.btn-primary:active.focus,.btn-primary.active.focus,.open>.dropdown-toggle.btn-primary.focus{color:#fff;background-color:#204d74;border-color:#122b40}
.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{background-image:none}
.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled.focus,.btn-primary[disabled].focus,fieldset[disabled] .btn-primary.focus{background-color:#337ab7;border-color:#2e6da4}
.btn-primary .badge{color:#337ab7;background-color:#fff}
.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}
.btn-success:focus,.btn-success.focus{color:#fff;background-color:#449d44;border-color:#255625}
.btn-success:hover{color:#fff;background-color:#449d44;border-color:#398439}
.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}
.btn-success:active:hover,.btn-success.active:hover,.open>.dropdown-toggle.btn-success:hover,.btn-success:active:focus,.btn-success.active:focus,.open>.dropdown-toggle.btn-success:focus,.btn-success:active.focus,.btn-success.active.focus,.open>.dropdown-toggle.btn-success.focus{color:#fff;background-color:#398439;border-color:#255625}
.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{background-image:none}
.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled.focus,.btn-success[disabled].focus,fieldset[disabled] .btn-success.focus{background-color:#5cb85c;border-color:#4cae4c}
.btn-success .badge{color:#5cb85c;background-color:#fff}
.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}
.btn-info:focus,.btn-info.focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}
.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#269abc}
.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}
.btn-info:active:hover,.btn-info.active:hover,.open>.dropdown-toggle.btn-info:hover,.btn-info:active:focus,.btn-info.active:focus,.open>.dropdown-toggle.btn-info:focus,.btn-info:active.focus,.btn-info.active.focus,.open>.dropdown-toggle.btn-info.focus{color:#fff;background-color:#269abc;border-color:#1b6d85}
.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{background-image:none}
.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled.focus,.btn-info[disabled].focus,fieldset[disabled] .btn-info.focus{background-color:#5bc0de;border-color:#46b8da}
.btn-info .badge{color:#5bc0de;background-color:#fff}
.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}
.btn-warning:focus,.btn-warning.focus{color:#fff;background-color:#ec971f;border-color:#985f0d}
.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#d58512}
.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}
.btn-warning:active:hover,.btn-warning.active:hover,.open>.dropdown-toggle.btn-warning:hover,.btn-warning:active:focus,.btn-warning.active:focus,.open>.dropdown-toggle.btn-warning:focus,.btn-warning:active.focus,.btn-warning.active.focus,.open>.dropdown-toggle.btn-warning.focus{color:#fff;background-color:#d58512;border-color:#985f0d}
.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{background-image:none}
.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled.focus,.btn-warning[disabled].focus,fieldset[disabled] .btn-warning.focus{background-color:#f0ad4e;border-color:#eea236}
.btn-warning .badge{color:#f0ad4e;background-color:#fff}
.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}
.btn-danger:focus,.btn-danger.focus{color:#fff;background-color:#c9302c;border-color:#761c19}
.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}
.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}
.btn-danger:active:hover,.btn-danger.active:hover,.open>.dropdown-toggle.btn-danger:hover,.btn-danger:active:focus,.btn-danger.active:focus,.open>.dropdown-toggle.btn-danger:focus,.btn-danger:active.focus,.btn-danger.active.focus,.open>.dropdown-toggle.btn-danger.focus{color:#fff;background-color:#ac2925;border-color:#761c19}
.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{background-image:none}
.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled.focus,.btn-danger[disabled].focus,fieldset[disabled] .btn-danger.focus{background-color:#d9534f;border-color:#d43f3a}
.btn-danger .badge{color:#d9534f;background-color:#fff}
.btn-link{color:#337ab7;font-weight:normal;border-radius:0}
.btn-link,.btn-link:active,.btn-link.active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}
.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}
.btn-link:hover,.btn-link:focus{color:#23527c;text-decoration:underline;background-color:transparent}
.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#777;text-decoration:none}
.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}
.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}
.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}
.btn-block{display:block;width:100%}
.btn-block+.btn-block{margin-top:5px}
input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}
.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#eee}
.jumbotron h1,.jumbotron .h1{color:inherit}
.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}
.jumbotron>hr{border-top-color:#d5d5d5}
.container .jumbotron,.container-fluid .jumbotron{border-radius:6px;padding-left:15px;padding-right:15px}
.jumbotron .container{max-width:100%}
@media screen and (min-width:768px){
.jumbotron{padding-top:48px;padding-bottom:48px}
.container .jumbotron,.container-fluid .jumbotron{padding-left:60px;padding-right:60px}
.jumbotron h1,.jumbotron .h1{font-size:63px}
}
p#aol_form_status, .alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}
.alert h4{margin-top:0;color:inherit}
.alert .alert-link{font-weight:bold}
.alert>p,.alert>ul{margin-bottom:0}
.alert>p+p{margin-top:5px}
.alert-dismissable,.alert-dismissible{padding-right:35px}
.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}
.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}
.alert-success hr{border-top-color:#c9e2b3}
.alert-success .alert-link{color:#2b542c}
.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}
.alert-info hr{border-top-color:#a6e1ec}
.alert-info .alert-link{color:#245269}
.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}
.alert-warning hr{border-top-color:#f7e1b5}
.alert-warning .alert-link{color:#66512c}
.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}
.alert-danger hr{border-top-color:#e4b9c0}
.alert-danger .alert-link{color:#843534}
.panel{margin-bottom:20px;background-color:#fff;border:1px solid #ccc; border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}
.panel-body{padding:15px}
.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px; background-color:#f5f5f5; font-weight:bold; }
.panel-heading>.dropdown .dropdown-toggle{color:inherit}
.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}
.panel-title>a,.panel-title>small,.panel-title>.small,.panel-title>small>a,.panel-title>.small>a{color:inherit}
.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}
.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}
.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}
.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}
.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}
.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}
.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}
.list-group+.panel-footer{border-top-width:0}
.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table{margin-bottom:0}
.panel>.table caption,.panel>.table-responsive>.table caption,.panel>.panel-collapse>.table caption{padding-left:15px;padding-right:15px}
.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}
.panel>.table:first-child>thead:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}
.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}
.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}
.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}
.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}
.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}
.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}
.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}
.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}
.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}
.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}
.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}
.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}
.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}
.panel>.table-responsive{border:0;margin-bottom:0}
.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}
.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}
.well-lg{padding:24px;border-radius:6px}
.well-sm{padding:9px;border-radius:3px}
.clearfix:before,.clearfix:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.aol-row:before,.aol-row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.panel-body:before,.panel-body:after{content:" ";display:table}
.clearfix:after,.container:after,.container-fluid:after,.aol-row:after,.form-horizontal .form-group:after,.panel-body:after{clear:both}
.center-block{display:block;margin-left:auto;margin-right:auto}
.pull-right{float:right !important}
.pull-left{float:left !important}
.hide{display:none !important}
.show{display:block !important}
.invisible{visibility:hidden}
.img-responsive{max-width:100%; height:auto; display:block;}
.form-group:last-child{margin-bottom: 0}
.aol_app_form input[type="file"] {
height: auto;
width: auto;
}
.aol-ad-taxonomy{text-transform: capitalize;}
table.aol_ads_features{
border-bottom: 1px solid #ededed;
border-collapse: collapse;
border-spacing: 0;
font-size: 14px;
line-height: 2;
margin: 0 0 20px;
width: 100%;
}
table.aol_ads_features td{
border-top: 1px solid #ededed;
padding: 6px 10px 6px 0;
font-weight: normal;
text-align: left;
}
ol.aol_ads_list li{padding-bottom: 10px;}
ol.aol_ads_list p{padding: 0px; margin: 0}
#aol_form_status .error-title{margin-top: 0; font-size: 18px;}
.aol_ad_list p{margin: 0px;}
.aol_ad_list li{margin-bottom: 20px;}
.ui-datepicker .ui-datepicker-title input,
.ui-datepicker .ui-datepicker-title select,
.ui-datepicker .ui-datepicker-title textarea{padding: 0px;}
.form-control.selected { border-color: #66afe9; outline: 0; -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);}
.aol_app_form .help-block { display: inline-block; margin-bottom: 10px; color: #737373; font-style: italic;}
.aol_app_form fieldset{ margin-top: 20px;}
/*Textarea Charchter Counter*/
.the-count {display: inline-block; float: right;}
.aol-textbox {overflow-y: auto; border: 1px solid #eee; color: #555; border-radius: 4px; padding: 0px 10px; }
.aol_multistep .dashicons{vertical-align: middle; }
#aol_ad_form{margin-bottom: 0}
.aol-progress{width: 100%; background-color: #ddd; position: relative; text-align: center; margin-bottom: 20px; }
.aol-progress-count {
width: 0;
height: 30px;
background-color: #00428b;
text-align: center; /* To center it horizontally (if you want) */
line-height: 30px; /* To center it vertically */
color: white;
}
.aol-progress-counter{position: absolute; top:0;}
.progress-wrapper{display: none}
.aol_app_form.hideout{height: 0 !important; }
.aol_app_form{transition: all 1s ease-in-out; overflow:hidden; height: auto; }PK ! 6 public/css/skeleton-grid.cssnu [ /*
* Skeleton V2.0.4
* Copyright 2014, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 12/29/2014
*/
/* Table of contents
––––––––––––––––––––––––––––––––––––––––––––––––––
- Grid
- Base Styles
- Typography
- Links
- Buttons
- Forms
- Lists
- Code
- Tables
- Spacing
- Utilities
- Clearing
- Media Queries
*/
/* Grid
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.aol-wrapper .container {
position: relative;
width: 100%;
max-width: 960px;
margin: 0 auto;
padding: 0 20px;
box-sizing: border-box; }
.aol-wrapper .column,
.aol-wrapper .columns {
width: 100%;
float: left;
box-sizing: border-box; }
/* For devices larger than 400px */
@media (min-width: 400px) {
.aol-wrapper .container {
width: 85%;
padding: 0; }
}
/* For devices larger than 550px */
@media (min-width: 550px) {
.aol-wrapper .container {
width: 80%; }
.aol-wrapper .column,
.aol-wrapper .columns {
margin-left: 4%; }
.aol-wrapper .column:first-child,
.aol-wrapper .columns:first-child {
margin-left: 0; }
.aol-wrapper .one.column,
.aol-wrapper .one.columns { width: 4.66666666667%; }
.aol-wrapper .two.columns { width: 13.3333333333%; }
.aol-wrapper .three.columns { width: 22%; }
.aol-wrapper .four.columns { width: 30.6666666667%; }
.aol-wrapper .five.columns { width: 39.3333333333%; }
.aol-wrapper .six.columns { width: 48%; }
.aol-wrapper .seven.columns { width: 56.6666666667%; }
.aol-wrapper .eight.columns { width: 65.3333333333%; }
.aol-wrapper .nine.columns { width: 74.0%; }
.aol-wrapper .ten.columns { width: 82.6666666667%; }
.aol-wrapper .eleven.columns { width: 91.3333333333%; }
.aol-wrapper .twelve.columns { width: 100%; margin-left: 0; }
.aol-wrapper .one-third.column { width: 30.6666666667%; }
.aol-wrapper .two-thirds.column { width: 65.3333333333%; }
.aol-wrapper .one-half.column { width: 48%; }
/* Offsets */
.aol-wrapper .offset-by-one.column,
.aol-wrapper .offset-by-one.columns { margin-left: 8.66666666667%; }
.aol-wrapper .offset-by-two.column,
.aol-wrapper .offset-by-two.columns { margin-left: 17.3333333333%; }
.aol-wrapper .offset-by-three.column,
.aol-wrapper .offset-by-three.columns { margin-left: 26%; }
.aol-wrapper .offset-by-four.column,
.aol-wrapper .offset-by-four.columns { margin-left: 34.6666666667%; }
.aol-wrapper .offset-by-five.column,
.aol-wrapper .offset-by-five.columns { margin-left: 43.3333333333%; }
.aol-wrapper .offset-by-six.column,
.aol-wrapper .offset-by-six.columns { margin-left: 52%; }
.aol-wrapper .offset-by-seven.column,
.aol-wrapper .offset-by-seven.columns { margin-left: 60.6666666667%; }
.aol-wrapper .offset-by-eight.column,
.aol-wrapper .offset-by-eight.columns { margin-left: 69.3333333333%; }
.aol-wrapper .offset-by-nine.column,
.aol-wrapper .offset-by-nine.columns { margin-left: 78.0%; }
.aol-wrapper .offset-by-ten.column,
.aol-wrapper .offset-by-ten.columns { margin-left: 86.6666666667%; }
.aol-wrapper .offset-by-eleven.column,
.aol-wrapper .offset-by-eleven.columns { margin-left: 95.3333333333%; }
.aol-wrapper .offset-by-one-third.column,
.aol-wrapper .offset-by-one-third.columns { margin-left: 34.6666666667%; }
.aol-wrapper .offset-by-two-thirds.column,
.aol-wrapper .offset-by-two-thirds.columns { margin-left: 69.3333333333%; }
.aol-wrapper .offset-by-one-half.column,
.aol-wrapper .offset-by-one-half.columns { margin-left: 52%; }
}
/* Forms
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.aol-wrapper input[type="email"],
.aol-wrapper input[type="number"],
.aol-wrapper input[type="search"],
.aol-wrapper input[type="text"],
.aol-wrapper input[type="tel"],
.aol-wrapper input[type="url"],
.aol-wrapper input[type="password"],
.aol-wrapper textarea,
.aol-wrapper select {
height: 38px;
padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
background-color: #fff;
border: 1px solid #D1D1D1;
border-radius: 4px;
box-shadow: none;
box-sizing: border-box; }
/* Removes awkward default styles on some inputs for iOS */
.aol-wrapper input[type="email"],
.aol-wrapper input[type="number"],
.aol-wrapper input[type="search"],
.aol-wrapper input[type="text"],
.aol-wrapper input[type="tel"],
.aol-wrapper input[type="url"],
.aol-wrapper input[type="password"],
.aol-wrapper textarea {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none; }
.aol-wrapper textarea {
min-height: 65px;
padding-top: 6px;
padding-bottom: 6px; }
.aol-wrapper input[type="email"]:focus,
.aol-wrapper input[type="number"]:focus,
.aol-wrapper input[type="search"]:focus,
.aol-wrapper input[type="text"]:focus,
.aol-wrapper input[type="tel"]:focus,
.aol-wrapper input[type="url"]:focus,
.aol-wrapper input[type="password"]:focus,
.aol-wrapper textarea:focus,
.aol-wrapper select:focus {
border: 1px solid #33C3F0;
outline: 0; }
.aol-wrapper label,
.aol-wrapper legend {
display: block;
margin-bottom: .5rem;
font-weight: 600; }
.aol-wrapper fieldset {
padding: 0;
border-width: 0; }
.aol-wrapper input[type="checkbox"],
.aol-wrapper input[type="radio"] {
display: inline; }
.aol-wrapper label > .label-body {
display: inline-block;
margin-left: .5rem;
font-weight: normal; }
/* Spacing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.aol-wrapper button,
.aol-wrapper .button {
margin-bottom: 1rem; }
.aol-wrapper input,
.aol-wrapper textarea,
.aol-wrapper select,
.aol-wrapper fieldset {
margin-bottom: 1.5rem; }
.aol-wrapper pre,
.aol-wrapper blockquote,
.aol-wrapper dl,
.aol-wrapper figure,
.aol-wrapper table,
.aol-wrapper p,
.aol-wrapper ul,
.aol-wrapper ol,
.aol-wrapper form {
margin-bottom: 2.5rem; }
/* Utilities
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.aol-wrapper .u-full-width {
width: 100%;
box-sizing: border-box; }
.aol-wrapper .u-max-full-width {
max-width: 100%;
box-sizing: border-box; }
.aol-wrapper .u-pull-right {
float: right; }
.aol-wrapper .u-pull-left {
float: left; }
/* Misc
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.aol-wrapper hr {
margin-top: 3rem;
margin-bottom: 3.5rem;
border-width: 0;
border-top: 1px solid #E1E1E1; }
/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* Self Clearing Goodness */
.aol-wrapper .container:after,
.aol-wrapper .row:after,
.aol-wrapper .u-cf {
content: "";
display: table;
clear: both; }
/* Media Queries
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/*
Note: The best way to structure the use of media queries is to create the queries
near the relevant code. For example, if you wanted to change the styles for buttons
on small devices, paste the mobile query code up in the buttons section and style it
there.
*/
/* Larger than mobile */
@media (min-width: 400px) {}
/* Larger than phablet (also point when grid becomes active) */
@media (min-width: 550px) {}
/* Larger than tablet */
@media (min-width: 750px) {}
/* Larger than desktop */
@media (min-width: 1000px) {}
/* Larger than Desktop HD */
@media (min-width: 1200px) {}
PK ! # public/class-applyonline-public.phpnu [
*/
class Applyonline_Public {
/**
* The ID of this plugin.
*
* @since 1.0.0
* @access private
* @var string $plugin_name The ID of this plugin.
*/
protected $plugin_name;
/**
* The version of this plugin.
*
* @since 1.0.0
* @access private
* @var string $version The current version of this plugin.
*/
protected $version;
/**
* Initialize the class and set its properties.
*
* @since 1.0.0
* @param string $plugin_name The name of the plugin.
* @param string $version The version of this plugin.
*/
public function __construct( $plugin_name, $version ) {
$this->plugin_name = $plugin_name;
$this->version = $version;
new AOL_Single_Post_Template($plugin_name, $version); //Passing 2 parameters to the child
new Applyonline_Shortcodes();
new Applyonline_AjaxHandler();
}
/**
* Register the stylesheets for the public-facing side of the site.
*
* @since 1.0.0
*/
public function enqueue_styles() {
/**
* This function is provided for demonstration purposes only.
*
* An instance of this class should be passed to the run() function
* defined in Applyonline_Loader as all of the hooks are defined
* in that particular class.
*
* The Applyonline_Loader will then create the relationship
* between the defined hooks and the functions defined in this
* class.
*/
wp_enqueue_style('aol-jquery-ui', plugin_dir_url(__FILE__).'css/jquery-ui.min.css');
wp_enqueue_style( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'css/applyonline-public.css', array(), $this->version, 'all' );
}
/**
* Register the stylesheets for the public-facing side of the site.
*
* @since 1.0.0
*/
public function enqueue_scripts() {
/**
* This function is provided for demonstration purposes only.
*
* An instance of this class should be passed to the run() function
* defined in Applyonline_Loader as all of the hooks are defined
* in that particular class.
*
* The Applyonline_Loader will then create the relationship
* between the defined hooks and the functions defined in this
* class.
*/
wp_enqueue_script( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'js/applyonline-public.js', array( 'jquery','jquery-ui-datepicker' ), $this->version, false );
//wp_enqueue_script( 'aol-charcounter', plugin_dir_url( __FILE__ ) . 'js/cct_embed.min.js', array(), $this->version, false );
$aol_js_vars = array(
'ajaxurl' => admin_url ( 'admin-ajax.php' ),
'date_format' => get_option('aol_date_format', 'dd-mm-yy'),
'url' => plugins_url(NULL, __DIR__),
'consent_text' => get_option('aol_form_consent', FALSE),//esc_html__('Do you really want to submit this form?', 'ApplyOnline'),
);
wp_localize_script (
$this->plugin_name,
'aol_public',
apply_filters('aol_js_vars', $aol_js_vars)
);
}
public function check_ad_closing_status($query){
$types = get_aol_ad_types();
if(!is_admin() and isset($query->query['post_type']) and in_array($query->query['post_type'], $types)){
global $wpdb;
$closed = $wpdb->get_col("SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_aol_ad_closing_date' AND meta_value != '' AND (meta_value BETWEEN 0 AND UNIX_TIMESTAMP()) AND post_id NOT IN (SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_aol_ad_close_type' AND meta_value != 'ad')");
$query->set('post__not_in', $closed);
}
}
//@todo: Use this method instead of aol_form_generator() function.
function aol_form_generator($fields, $fieldset = 0, $prepend = NULL, $post_id = 0){
return aol_form_generator($fields, $fieldset, $prepend, $post_id);
}
/**
* This function should be moved to the admin section.
*/
function output_attachment(){
if( isset($_REQUEST['aol_attachment']) AND (current_user_can('read_application') OR current_user_can('save_application')) ){
//the file you want to send
$path = urldecode( aol_crypt( ($_REQUEST['aol_attachment']), 'd') );
// the file name of the download, change this if needed
$public_name = basename($path);
$mime_type = wp_check_filetype($path);
// send the headers
header("Content-Disposition: attachment; filename=$public_name;");
header("Content-Type: ".$mime_type['type']);
header('Content-Length: ' . filesize($path));
if( !function_exists('finfo_open') ){
echo file_get_contents($path);
exit;
}
// get the file's mime type to send the correct content type header
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime_type = finfo_file($finfo, $path);
// stream the file
$fp = fopen($path, 'rb');
$result = fpassthru($fp);
//Revert to File load method if File stream method fails
if( $result == FALSE ) echo file_get_contents($path);
exit;
}
}
}
class AOL_Single_Post_Template{
var $plugin_name;
var $version;
public function __construct($plugin_name = null, $version = null) {
$this->plugin_name = $version;
$this->version = $plugin_name;
add_filter('body_class', array($this, 'aol_body_classes'));
add_filter( 'the_content', array($this, 'aol_the_content') );
}
function aol_body_classes($classes){
$classes[] = $this->plugin_name;
$classes[] = $this->plugin_name.'-'.$this->version;
return $classes;
}
public function aol_ad_is_checked($i){
if($i==0) $checked="checked";
else $checked = NULL;
return $checked;
}
public function application_form_fields($post_id = 0){
//Get current post object on SINGLE Template file(e.g. single.php, aol_ad-single.php).
if(empty($post_id)){
global $post;
$post_id = $post->ID;
}
$field_types = array(
'text'=> esc_html__('Text','ApplyOnline'),
'checkbox'=>esc_html__('Check Box','ApplyOnline'),
'dropdown'=>esc_html__('Drop Down','ApplyOnline'),
'radio'=> esc_html__('Radio','ApplyOnline'),
'file'=> esc_html__('File','ApplyOnline'),
'separator' => esc_html__('Seprator','ApplyOnline')
);
$raw_fields = get_aol_ad_post_meta($post_id);
$fields = array();
$i=0;
foreach($raw_fields as $key => $val){
$fields[$i] = $val; //
$fields[$i]['key'] = substr($key, 9); //Add key as array element for easy access.
if(isset($fields[$i]['options'])) $fields[$i]['options'] = array_combine(explode(',', $fields[$i]['options']), explode(',', $fields[$i]['options'])); //Add options as an array, Setting arrays keys & values alike.
if(!isset($fields[$i]['required'])) $fields[$i]['required'] = 1; //Fix for older versions (prior to 1.6.1 when REQUIRED field was not available)
if(isset($fields[$i]['type']) AND $fields[$i]['type']=='seprator') $fields[$i]['type'] = 'separator'; //Fixed bug before 1.9.6, spell mistake in the key.
$i++;
}
return $fields;
}
public function application_form($post_id = 0){
if(empty($post_id) AND !is_singular()){
return '
'.esc_html__('Form ID is missing', 'ApplyOnline').'
';
}
global $post;
//Sanitizing & fetching post ID.
$post_id = empty($post_id) ? (int)$post->ID : (int)$post_id;
$date = get_post_meta($post_id, '_aol_ad_closing_date', TRUE);
$fields = apply_filters('aol_form_fields', $this->application_form_fields($post_id), $post_id);
//If Form has no fields.
if( empty($fields) ) return NULL;
$progress_bar = get_option('aol_progress_bar_color', array('foreground' => '#222222', 'background' => '#dddddd', 'counter' => '#888888'));
ob_start();
echo ''. esc_html_x('Apply Online', 'public', 'ApplyOnline').' ';
//If closing date has passed away.
if( !empty($date) AND $date < time() )
return ''. get_option_fixed('aol_application_close_message', esc_html__('We are no longer accepting applications for this ad.', 'ApplyOnline')).' ';
$css_pattern = '/^#([0-9A-Fa-f]{3}){1,2}$/';
$css_bg = preg_match($css_pattern, $progress_bar['background']) ? $progress_bar['background'] : NULL;
$css_fg = preg_match($css_pattern, $progress_bar['foreground']) ? $progress_bar['foreground'] : NULL;
$css_color = preg_match($css_pattern, $progress_bar['counter']) ? $progress_bar['counter'] : NULL;
?>
ID;
$fields = get_aol_ad_features($post_id);
$metas = NULL;
if( !empty($fields) ):
switch ($output):
case 'heading':
$start_wrapper = '';
$close_wrapper = '
';
$row_start = '';
$separator = ': ';
$row_close = ' ';
break;
case 'list':
$start_wrapper = '';
$row_start = '';
$separator = ': ';
$row_close = ' ';
break;
default:
$start_wrapper = '';
$row_start = '';
$separator = ' ';
$row_close = ' ';
endswitch;
$metas = $start_wrapper;
foreach($fields as $key => $val):
if(!is_array($val))
$val = array('label' => str_replace('_', ' ',substr($key, 13)), 'value' => $val);
$metas.= $row_start.$val['label'].$separator.$val['value'].$row_close;
endforeach;
$metas.= $close_wrapper;
endif;
return $metas;
}
function ad_type_fix($val, $key){
return 'aol_'.$val;
}
public function aol_the_content($content){
global $post;
$types = get_option_fixed('aol_ad_types', array('ad' => array('singular'=> esc_html__('Ad','ApplyOnline'), 'plural' => esc_html__('Ads','ApplyOnline'))));
$aol_types = array();
foreach($types as $type => $val){
$aol_types[] = 'aol_'.$type;
}
if(!is_singular($aol_types)) return $content;
global $template;
$features = $this->ad_features($post->ID);
$title_features = empty($features) ? NULL : ''. get_option( 'aol_features_title', 'Salient Features' ).' ';
$form = $this->application_form();
$not_working = ''.esc_html__('If the application does not load after a few seconds, please try the following:', 'ApplyOnline').' ';
$not_working .= ''.esc_html__('Open the application in a new tab. ', 'ApplyOnline').' ';
$not_working .= ''.esc_html__('Try using a different browser. ', 'ApplyOnline').' ';
$not_working .= ''.esc_html__('Try switching to a more stable network connection. ', 'ApplyOnline').' ';
$not_working .= ''.esc_html__('Report this problem to the development team. ', 'ApplyOnline').' ';
//Show this content if you are viewing aol_ad post type using single.php (not with single-aol_type.php)
$aol_content;
$this_template = substr(wp_basename($template), 7, -4);
if(in_array($this_template, $aol_types) OR has_shortcode( $content, 'aol_form' )):
$aol_content = $content;
else:
$aol_content = ''.$content.$title_features.$features.$form.'
';
$aol_content = apply_filters( 'aol_content', $aol_content, $content, $features, $form );
endif;
return $aol_content;
}
}
class Applyonline_Shortcodes{
function __construct() {
add_shortcode( 'aol', array($this, 'aol') ); //archive of ads.
add_shortcode( 'aol_ads', array($this, 'aol') ); //deprecated since 1.1
add_shortcode( 'aol_ad', array($this, 'aol_ad') ); //Single ad with form.
add_shortcode( 'aol_form', array($this, 'aol_form') ); //Single ad form only.
add_shortcode( 'aol_filters', array($this, 'aol_filters') ); //Single ad form only.
add_shortcode( 'aol_features', array($this, 'aol_features') );
}
/**
* Shortcode Generator
* @param type $atts
* @return type
*/
function aol( $atts ) {
$archive_wraper_classes = apply_filters('aol_archive_wrapper_classes', array('aol-ad-outer-wrapper'));
$wraper_classes = apply_filters('aol_ad_wrapper_classes', array('aol-ad-inner-wrapper'));
//$title_wrapper = apply_filters('aol_ad_title_wrapper', 'div');
$title_classes = apply_filters('aol_ad_title_wrapper_classes', array('panel-heading'));
$body_classes = apply_filters('aol_ad_body_wrapper_classes', array('panel-body'));
$thumb_wrapper = apply_filters('aol_ad_thumb_wrapper', 'div');
$thumb_classes= apply_filters('aol_ad_thumb_classes', array('aol-thumbnail', 'pull-md-left', 'center-sm-block'));
$footer_classes = apply_filters('aol_ad_footer_wrapper_classes', array('panel-footer'));
$order = apply_filters('aol_grid_element_order', array('title', 'body_start', 'meta', 'thumbnail', 'excerpt', 'body_close', 'footer'));
$a = shortcode_atts( array(
'ads' => '', //Depricated since 2.2.3
'include' => '', //Replaced ads attribute.
'exclude' => '',
'excerpt' => 'yes',
'display' => 'full',
'list-style' => 'ul',
'count' => '-1',
'filter' => 'yes',
'type' => 'ad',
'author' => null
), $atts, 'aol' );
$lstyle = ($a['list-style'] == 'ol') ? 'ol' : 'ul';
$args = array(
'posts_per_page'=> $a['count'],
'post_type' =>'aol_'.$a['type'],
'author' => $a['author'],
'exclude' => empty($a['exclude']) ? array() : explode(',',$a['exclude']),
//'include' => empty($a['include']) ? array() : explode(',',$a['include']),
'include' => empty($a['ads']) ? array() : explode(',',$a['ads']), // Depricated since version 2.5
);
/*
if( !(empty($a['ads']) and empty($a['include'])) ){
$a['show_filter'] = 'no';
}
*
*/
//Get list of taxanomies
$taxes = get_object_taxonomies('aol_'.$a['type']);
$args['s'] = $search_keyword = isset($_REQUEST['aol_seach_keyword']) ? $_REQUEST['aol_seach_keyword'] : NULL;
$args['tax_query'] = array();
foreach($taxes as $tax){
$tax = substr($tax, 7);
if(isset($_REQUEST[$tax]) AND $_REQUEST[$tax] != NULL) {
$args['tax_query'][] = array('taxonomy' => "aol_ad_$tax", 'terms' => array((int)$_REQUEST[$tax]));
}
}
//query_posts( $args );
//global $post;
$args = apply_filters('aol_pre_get_posts', $args);
$posts = get_posts($args);
add_filter( 'excerpt_more', array($this, 'aol_excerpt_more') );
//$show_filter = get_option('aol_show_filter', 1);
$filters = aol_ad_cpt_filters($a['type']);
$filter_count = count($filters);
ob_start();
do_action('aol_before_shortcode', $a, $filters);
if(!(empty($filters) OR $a['filter'] == 'no' )){
echo ''; //Started well
echo '
'; //2nd row closed, form closed
echo '
'; //Ended Well
}
if(!empty($posts)):
if($a['display'] == 'list') echo "<$lstyle>";
do_action('aol_before_archive');
echo '';
$post_count = 0;
foreach($posts as $post): setup_postdata($post);
$wrapper_inner_classes = apply_filters('aol_ad_inner_wrapper_classes', array('panel', 'panel-default'), $post);
/* Getting Post Status*/
$timestamp = (int)get_post_meta($post->ID, '_aol_ad_closing_date', true);
$timestamp = apply_filters('aol_ad_closing_date', $timestamp, $post);
if( $timestamp === 0 OR $timestamp > time() ) $status = 'open';
else $status = 'closed';
/* END Getting Post Status*/
$terms = get_terms(array('object_ids' => $post->ID, 'hide_empty' => TRUE, 'taxonomy' => aol_sanitize_taxonomies($filters)));
if($a['display'] == 'list'): echo '
'. apply_filters('aol_shortcode_list', ''.$post->post_title.' ').' ';
else:
do_action('aol_before_ad', $post_count, $post->post_count);
echo '
';
echo '
';
foreach($order as $index):
switch ($index):
case 'title':
$output = apply_filters('aol_shortcode_title', $post->post_title, $post, $title_classes);
echo '
'.$output.'
';
break;
case 'body_start' :
echo '
';
do_action('aol_shortcode_before_body');
break;
case 'thumbnail' :
if(has_post_thumbnail($post)) echo get_the_post_thumbnail($post->ID, apply_filters('aol_ad_thumbnail_size', 'thumbnail') , array('class' => implode(' ', $thumb_classes), 'title' => $post->post_title, 'alt' => $post->post_title));
break;
case 'meta' :
echo apply_filters('aol_ad_meta', NULL, $post);
break;
case 'body_close':
$body = array(
'excerpt' => get_the_excerpt($post),
'readmore' => sprintf(
'
%s ',
get_the_permalink($post),
'fusion-button button read-more btn btn-info',
esc_html__( 'Read More', 'ApplyOnline' )
)
);
$body = apply_filters('aol_shortcode_body', $body, $post);
do_action('aol_shortcode_before_body', $post);
if($a['excerpt'] != 'no') echo '
'. sanitize_text_field( $body['excerpt'] ).'
';
echo '
';
echo apply_filters('aol_shortcode_button', $body['readmore']);
do_action('aol_shortocde_after_body', $post);
echo "
"; //Boody Wrapper
break;
case 'footer':
if(empty($terms) or empty($filters)) break;
echo '";
break;
endswitch;
endforeach;
echo "
"; //Closing inner & outer wrapers.
do_action('aol_after_ad', $post_count, $post->post_count);
if($a['display'] == 'list') echo "$lstyle>";
endif; //End aol display check
$post_count++;
endforeach;
echo "
"; //Outer Wrapper
do_action('aol_after_archive', $post);
else: echo get_option('aol_not_found_alert', 'Sorry, we could not find what you were looking for.');
endif;
wp_reset_postdata();
$html = apply_filters('aol_shortcode', ob_get_clean());
return ''.$html.'
';
}
function aol_filters($atts){
//@ad support for all ad types.
//if(!is_singular('aol_ad')) return;
$a = shortcode_atts( array(
'style' => 'csv',
'ad' => 0,
), $atts );
if(empty($a['ad'])){
global $post;
$post_id = $post->ID;
} else {
$post_id = (int)$a['ad'];
}
$filters = aol_ad_cpt_filters(get_post_type());
$terms = get_terms(array('object_ids' => $post_id, 'hide_empty' => TRUE, 'taxonomy' => aol_sanitize_taxonomies($filters)));
ob_start();
echo '' ;
echo $this->aol_filters_terms($terms, $post_id);
echo '
';
return ob_get_clean();
ob_start();
$terms = get_terms(array('object_ids' => $post_id, 'orderby' => 'term_group', 'hide_empty' => TRUE, 'taxonomy' => aol_sanitize_taxonomies($filters)));
echo '' ;
if( !(empty($terms) or empty($filters)) ):
$tax = NULL;
foreach ($terms as $term){
$title = NULL;
$separator = ', ';
if($tax != $term->taxonomy) {
$taxObj = get_taxonomy($term->taxonomy);
$pad = empty($tax) ? NULL : ' ';
$title = $pad.'
'.$taxObj->label.': ';
}
echo $title.''.$term->name.$separator.' ';
$tax = $term->taxonomy;
}
endif;
echo '';
return ob_get_clean();
}
function aol_filters_terms($terms, $post_id){
do_action('aol_shortcode_before_terms', $post_id);
$tax = $output = NULL;
$terms = $this->organize_post_terms($terms);
foreach ($terms as $term){
$title = NULL;
$separator = ', ';
if($tax != $term->taxonomy) {
$pad = empty($tax) ? NULL : ' ';
$taxObj = get_taxonomy($term->taxonomy);
$span = is_null($tax) ? '' : ' ';
$title = $span.$pad.''.esc_html__($taxObj->label, 'ApplyOnline').': ';
}
$output.= $title.$term->name.$separator;
$tax = esc_html__($term->taxonomy, 'ApplyOnline');
}
$output.= ' ';
do_action('aol_shortcode_after_terms', $post_id);
return $output;
}
function organize_post_terms($terms_obj){
$terms = new stdClass();
$sort = array();
foreach($terms_obj as $key => $term){
$sort[$key] = $term->taxonomy;
}
asort($sort);
$keys = array_keys($sort);
$new_obj = array();
foreach($keys as $key){
array_push($new_obj, $terms_obj[$key]);
}
return $new_obj;
}
function aol_excerpt_more( $more ) {
return '....';
}
//@todo Form generated with this shortcode may not submit & generate error: "Your form could not submit, Please contact us"
function aol_form( $atts ){
global $post;
$id = is_singular('aol_ad') ? $post->ID: NULL;
$a = shortcode_atts( array(
//Check if shortcode is called on the Ads Page, ID is not required in that case.
//@todo extend post type to all ad types.
'id' => $id,
), $atts );
if(isset($a['id'])) return aol_form($a['id']);
}
/*
* @todo: this function should print complete ad with application form.
*/
function aol_ad( $atts ) {
$a = shortcode_atts( array(
'id' => NULL,
), $atts );
if(isset($a['id'])) {
$id = $a['id'];
$post = get_post($id);
return $post->post_content. aol_form($a['id']);
}
}
function aol_features($atts){
$a = shortcode_atts( array(
'style' => 'table',
), $atts );
return aol_features($a['style']);
}
}
/**
* This class is responsible to handle Ajax requests.
*
*
* @since 1.0
* @package AjaxHandler
* @author Farhan Noor
**/
class Applyonline_AjaxHandler{
/*
* Upload meta, after a successfull file upload.
*/
var $uploads;
public function __construct() {
add_action( 'wp_ajax_aol_app_form', array($this, 'aol_save_form') );
add_action( 'wp_ajax_nopriv_aol_app_form', array($this, 'aol_save_form') );
add_filter( 'aol_form_errors', array($this, 'file_uploader'), 10,3 ); //Call file uploader when form is being processed.
}
function upload_path($uploads){
$subdir = apply_filters('aol_upload_folder', 'applyonline');
//$default = wp_upload_dir(); $default['basedir'];
$aol_upload_path = get_option('aol_upload_path');
$uploads['path'] = wp_normalize_path($uploads['basedir'] . '/' . $subdir);
$uploads['subdir'] = wp_normalize_path( '/' . $subdir);
$uploads['url'] = $uploads['baseurl']. '/' . $subdir;
if(!empty($aol_upload_path)){
$uploads['basedir'] = $aol_upload_path;
$uploads['path'] = wp_normalize_path($aol_upload_path . '/' . $subdir);
}
return $uploads;
}
function file_uploader($errors, $post, $files){
if(empty($files)) return $errors; //If no files are being uploaded, just quit.
$upload_overrides = array( 'test_form' => false );
/*Initialixing Variables*/
//$errors = new WP_Error();
$error_assignment = null;
$uploads = array();
$user = get_userdata(get_current_user_id());
if ( ! function_exists( 'wp_handle_upload' ) ) {
require_once( ABSPATH . 'wp-admin/includes/file.php' );
}
foreach($files as $key => $val):
if(empty($val['name'])) continue;
$field = get_post_meta($post['ad_id'], $key, TRUE);
if( isset($field['allowed_file_types']) AND !empty($field['allowed_file_types']) ){
$allowed_types = str_replace(' ', '', $field['allowed_file_types']);
} else{
$allowed_types = str_replace(' ', '', get_option('aol_allowed_file_types'));
}
//Check if single File Type or multiple, if multiple convert it to an array.
$allowed_types = strstr($allowed_types, ',') == FALSE ? array($allowed_types) : explode(',', $allowed_types );
$upload_size = empty($field['allowed_size']) ? get_option_fixed('aol_upload_max_size', 1) : $field['allowed_size'];
$max_upload_size = $upload_size*1048576; //Multiply by KBs
if($max_upload_size < $val['size']){
$errors->add('max_size', sprintf(esc_html__( '%s is oversized. Must be under %s MB', 'ApplyOnline' ), $val['name'] , $upload_size));
}
/* Check File Size */
$file_type_match = 0;
$filetype = wp_check_filetype( $val['name'] );
$file_ext = strtolower($filetype['ext']);
if( !in_array($file_ext, $allowed_types) ) $errors->add('file_type', sprintf(esc_html__( 'Invalid file %1$s. Allowed file types are: %2$s', 'ApplyOnline' ), $val['name'], implode (',', $allowed_types)));
$errors = apply_filters('aol_before_file_upload_errors', $errors);
if(empty($errors->errors)){
do_action('aol_before_file_upload', $key, $val, $post);
add_filter('upload_dir', array($this, 'upload_path')); //Change upload path.
$movefile = wp_handle_upload( $val, $upload_overrides );
if ( $movefile && ! isset( $movefile['error'] ) ) {
$uploads[$key] = $movefile;
$uploads[$key]['name'] = $val['name'];
//update_user_meta(get_current_user_id(), $key, $movefile['url'] );
} else {
/**
* Error generated by _wp_handle_upload()
* @see _wp_handle_upload() in wp-admin/includes/file.php
*/
$errors->add('file_move', $val['name'].': '.$movefile['error']);
}
}
endforeach;
//return array('errors' => $errors, 'uploads' => $uploads);
$this->uploads = $uploads;
return $errors;
}
/**
* The function processes and saves application form info in the database.
*/
public function aol_save_form( $form_data = NULL ){
if( empty($form_data) ) $form_data = $_POST;
$nonce = $form_data['wp_nonce'];
if( !wp_verify_nonce($nonce, 'the_best_aol_ad_security_nonce') /*and (int)get_option('aol_nonce_is_active', 1) == 1*/ ){
$response = array( 'reason' => 'Session Expired', 'message' => esc_html__( 'Session Expired, please refresh this page and try again. If problem presists, please report this issue through Contact Us page. Thanks', 'ApplyOnline' ) );
$this->response($response, 401);
}
$app_field = $app_data = array();
/*Initializing Variables*/
$errors = new WP_Error();
$error_assignment = null;
//Check for required fields
//Get parent ad value for which the application is being submitted.
$ad_id = (int)$form_data['ad_id'];
//@todo: Save transcript in json/serialized format as one postmeta field instead of seperate field for each form field for ad.
$transcript = $ad_transcript = get_post_meta($ad_id, '', TRUE);
//Remove unnecessary array elements from the parent ad array.
foreach($transcript as $key => $val):
$key = sanitize_key($key);
if( substr($key, 0, 9) != '_aol_app_' ){
unset($transcript[$key]);
} else{
//$transcript[$key] = apply_filters('aol_form_field_before_validation', maybe_unserialize( $val[0] ), $key, $val, $form_data[$key]);
$transcript[$key] = maybe_unserialize( $val[0] );
}
endforeach;
$form = apply_filters('aol_form_for_app_validation', $transcript, $form_data, $_FILES);
foreach($form as $key => $val):
$key = sanitize_key($key);
//Excludes separator & paragraph from validation & verification.
if(in_array($val['type'], array('separator', 'seprator', 'paragraph'))) continue;
//Support for previous versions
if(!isset($val['label'])) $val['label'] = str_replace('_',' ', substr($key, 9));
//eMail validation.
if($val['type'] == 'email'){
if(!empty($form_data[$key]) and is_email($form_data[$key])==FALSE) $errors->add('email', sprintf(esc_html__('%s is invalid.', 'ApplyOnline'), '"'.$val['label'].'"'));
}
//File validation & verification.
if(isset($val['required']) AND $val['type'] == 'file'){
//if(!isset($_FILES[$key]['name'])) $errors->add('file', sprintf(esc_html__('%s is not a file.', 'ApplyOnline'), str_replace('_',' ', substr($key, 9))));
if((int)$val['required'] == 1 and empty($_FILES[$key]['name'])) $errors->add('required', sprintf(esc_html__('%s is required.', 'ApplyOnline'), '"'.$val['label'].'"'));
}
//chek required fields for non File Fields.
if( isset($val['required']) AND (int)$val['required'] == 1 and $val['type'] != 'file'){
$form_data[$key] = is_array($form_data[$key]) ? array_map('sanitize_text_field', $form_data[$key]) : sanitize_textarea_field($form_data[$key]);
if(empty($form_data[$key])) $errors->add('required', sprintf (esc_html__('%s is required.', 'ApplyOnline'), '"'.$val['label'].'"') );
}
endforeach;
//Deprictated since 2.2.2. Will be deleted soon. Use aol_app_final_fields hook instead
$app_data = apply_filters('aol_app_fields_to_process', $app_data, $form_data);
$parent_id = $app_data['ad_id'] = (int)$form_data['ad_id'];
//You can hook 3rd party form errors here.
$errors = apply_filters('aol_form_errors', $errors, $form_data, $_FILES);
$error_messages = $errors->get_error_messages();
//$error_messages = array_merge($error_messages, $upload_error_messages);
if( !empty($error_messages ) ){
$error_html = implode(' ', $error_messages);
$response = array( 'reason' => esc_html__('Missing required fields', 'ApplyOnline'), 'message' => $error_html ); //generate the error response.
//response output
$this->response($response, 406);
}
//End - Check for required fields
$applicant_emails = array();
foreach($form as $key => $val){
if( !isset($form_data[$key]) ) continue;
$app_field = maybe_unserialize($val);
//normalizing path & sanitizing data before input.
$val = is_array($form_data[$key]) ? array_map('sanitize_text_field', $form_data[$key]) : sanitize_textarea_field($form_data[$key]);
$key = sanitize_key($key);
//Populating array with sanitized keys & values.
$app_data[$key] = $val;
/*get applicant's email for email notification*/
if( $app_field['type'] == 'email' AND isset($app_field['notify']) AND $app_field['notify']==1 ){
$applicant_emails[] = $val;
}
}
if(isset($this->uploads)){
foreach($this->uploads as $name => $file){
//FILTER_SANITIZE_URL convert french file names to enlgish file names.
$args = array('file'=> array('filter' => FILTER_SANITIZE_STRING, 'flags'), 'url' => FILTER_SANITIZE_STRING, 'type' => FILTER_SANITIZE_STRING, 'name' => FILTER_SANITIZE_STRING);
$app_data[sanitize_key($name)] = filter_var_array($file, $args);
}
}
$app_data = apply_filters('aol_app_final_fields', $app_data, $form_data);
$args = array(
'post_type' => 'aol_application',
'post_parent' => $parent_id,
'post_title' => get_the_title($parent_id),
'post_status' => 'publish',
'tax_input' => array('aol_application_status' => 'pending'),
);
do_action('aol_before_app_save', $app_data, $form_data); //Depricated Since 2.5
do_action('aol_before_save_app', $app_data, $form_data);
$args = apply_filters('aol_insert_app_data', $args, $app_data);
$args['ID'] = $pid = wp_insert_post($args, TRUE);
//If post is not saved and generates an error, return error message to the client and terminate further execution.
if( is_wp_error($pid) ){
$response = array( 'reason' => 'Something went wrong.', 'message' => $pid->get_error_message() ); // generate the error response.
$this->response($response, 400);
}
foreach($app_data as $key => $val):
update_post_meta($pid, $key, $val);
$args['meta_input'][$key] = $val;
endforeach;
$parent = get_post($parent_id);
update_post_meta($pid, 'aol_ad_id', $parent->ID);
update_post_meta($pid, 'aol_ad_author', $parent->post_author);
/* Saving Ad Transcript Since v2.2 */
foreach($ad_transcript as $key => $val){
if( substr($key, 0, 9) == '_aol_app_' OR $key == '_aol_fields_order' ) $ad_transcript[$key] = $val[0];
else unset($ad_transcript[$key]);
}
update_post_meta($pid, 'ad_transcript', $ad_transcript );
/* End Saving Ad Transcript Since v2.2 */
wp_set_post_terms( $pid, 'pending', 'aol_application_status' );
do_action('aol_after_app_save', $pid, $app_data); //Depricated since 2.5
do_action('aol_after_save_app', $pid, $app_data);
//do_action('aol_after_app_save', $pid, $form_data);
//Email notification Since v2.2
if( $args['post_status'] != 'draft'){
$this->applicant_email_notification( $pid, $args, $applicant_emails );
$recipients = sanitize_textarea_field( get_post_meta($parent_id, '_recipients_emails', true) );
if( !empty($recipients) ) $recipients = explode("\n", str_replace(array("\r", " "),"", $recipients));
$this->admin_email_notification($recipients, $pid, $args, $this->uploads, $parent->post_author);
}
$divert_page = get_option('aol_thankyou_page');
empty($divert_page) ? $divert_link = null : $divert_link = get_page_link($divert_page);
$message = str_replace('[id]', $pid, get_option_fixed('aol_application_success_alert', esc_html__('Form has been submitted successfully with application id [id]. If required, we will get back to you shortly!', 'ApplyOnline')) );
$response = array( 'divert' => $divert_link, 'hide_form'=>TRUE , 'message'=>$message );// generate the response.
$this->response($response);
}
/**
* Application success Email notification for Applicants
*
* @param type $post_id
* @param type $post
* @param type $uploads
* @return boolean
*/
function applicant_email_notification($post_id, $post, $emails){
if(empty($emails)) return;
$post = (object)$post;
$subject = str_replace('[title]', $post->post_title, get_option('aol_success_mail_subject', 'Your application for [title]') );
$headers = aol_from_mail_header();
$attachments = array();
//@todo need a filter hook to modify content of this email message and to add a from field in the message.
$message="Hi there,
"
."Thank you for showing your interest in the ad: [title]. Your application with id [id] has been received. We will review your application and contact you if required.
"
.sprintf(esc_html__('Team %s'), get_bloginfo('name'))." "
.site_url()." "
."Please do not reply to this system generated message.";
$message = str_replace( array('[title]', '[id]'), array($post->post_title, $post->ID), get_option('aol_success_mail_message', $message) );
$aol_email = apply_filters(
'aol_applicant_mail_notification',
array('to' => $emails, 'subject' => $subject, 'message' => nl2br($message), 'headers' => $headers),
$post_id,
$post
);
do_action('aol_email_before', array('to' => $emails, 'subject' => $subject, 'message' => nl2br($message), 'headers' => $headers), $post_id, $post);
//add_filter( 'wp_mail_content_type', 'aol_email_content_type' );
wp_mail( $aol_email['to'], $aol_email['subject'], $aol_email['message'], $aol_email['headers']);
//remove_filter( 'wp_mail_content_type', 'aol_email_content_type' );
do_action('aol_email_after', $emails, $subject, nl2br($message), $headers);
return true;
}
function admin_email_notification($emails, $post_id, $post, $uploads, $post_author ){
$post = (object)$post;
//send email alert.
$post_url = admin_url("post.php?post=$post_id&action=edit");
if( empty($emails) ){
//Get global recipients
$emails_string = sanitize_textarea_field( get_option_fixed('aol_recipients_emails', get_option('admin_email')) );
$emails = explode("\n", str_replace(array("\r", " "),"", $emails_string) );
}
$emails = array_map('sanitize_email', $emails);
$author_notification = get_option('aol_ad_author_notification');
if( $author_notification ){
$author = get_userdata( $post_author );
if( !in_array($author->user_email, $emails) ) array_push($emails, $author->user_email);
}
/*
// Get the site domain and get rid of www.
$sitename = strtolower( $_SERVER['SERVER_NAME'] );
if ( substr( $sitename, 0, 4 ) == 'www.' ) {
$sitename = substr( $sitename, 4 );
}
$from_email = 'do-not-reply@' . $sitename;
$headers = array('Content-Type: text/html', "From: ". wp_specialchars_decode(get_bloginfo('name'))." <$from_email>");
*
*/
//$subject = sprintf(esc_html__('New application for %s', 'ApplyOnline'), sanitize_text_field($post->post_title));
$subject = str_replace( array('[id]' ,'[title]'), array($post->ID ,$post->post_title), get_option('aol_admin_mail_subject', 'New application [id] for [title]') );
$headers = aol_from_mail_header();
//@todo need a filter hook to modify content of this email message and to add a from field in the message.
$message= ''.esc_html__('Hi,', 'ApplyOnline').'
'
.''
.sprintf(esc_html__('A new application for the ad %1$s received on %2$s website.', 'ApplyOnline'), ''.$post->post_title.' ', ''.get_bloginfo('name').' ')
.'
'
.sprintf(esc_html__('%sClick Here%s to access this application.', 'ApplyOnline'),'', ' ')
.'
'
.esc_html__('Thank you', 'ApplyOnline')
.'---- '
.sprintf(esc_html__('This is an automated response from Apply Online plugin on %s', 'ApplyOnline'), ''.get_bloginfo('name').' ')
.'
';
$message = apply_filters('aol_email_notification', $message, $post_id); //Deprecated.
$aol_email = apply_filters(
'aol_email',
array( 'to' => $emails, 'subject' => $subject, 'message' => $message, 'headers' => $headers, 'attachments' => array() ),
$post_id,
$post,
$uploads
);
do_action('aol_email_before', array('to' => $emails, 'subject' => $subject, 'message' => nl2br($message), 'headers' => $headers), $post_id, $post, $uploads);
wp_mail( $aol_email['to'], $aol_email['subject'], $aol_email['message'], $aol_email['headers'], $aol_email['attachments']);
do_action('aol_email_after', $emails, $subject, nl2br($message), $headers);
return true;
}
/**
* This function returns REST or AJAX response back to the client and terminatex further execution of the calling function.
*
* @param array $result The actual data that is being returned to the client. It is the body of the HTTP response, containing the information that needs to be received from the server
* @param int $code HTTP response status code. Default is 200 successful. If $result variable is empty, it will return 404 not found status code.
* @param string $header HTTP header to be sent to the requesting client.
*
* @return NULL NONE This function terminates further execution hence it retunrs nothing.
*/
function response( $result = [], $code = 200, $header = "Content-type:application/json" ){
if( empty($result) ) $code = 404;
http_response_code($code);
header($header);
exit( json_encode($result) );
}
}PK ! * public/index.phpnu [ 70 && characterCount < 90) {
current.css('color', '#6d5555');
}
if (characterCount > 90 && characterCount < 100) {
current.css('color', '#793535');
}
if (characterCount > 100 && characterCount < 120) {
current.css('color', '#841c1c');
}
if (characterCount > 120 && characterCount < 139) {
current.css('color', '#8f0001');
}
if (characterCount >= 140) {
maximum.css('color', '#8f0001');
current.css('color', '#8f0001');
theCount.css('font-weight','bold');
} else {
maximum.css('color','#666');
theCount.css('font-weight','normal');
}
});
/*Ends Textarea Charchter Counter*/
/*Submit Application Form*/
$( ".aol_app_form" ).submit(function(){
aolSubmitForm(event);
});
/*
$( ".aol_app_form" ).submit(function(){
var datastring = new FormData(document.getElementById("aol_app_form"));
var request = $.ajax({
url: aol_public.ajaxurl,
type: 'POST',
dataType: 'json',
data: datastring,
//async: false,
contentType: false,
processData: false,
beforeSend: function(){
$('#aol_form_status').removeClass();
$('#aol_form_status').html(' ');
$('#aol_form_status').addClass('alert alert-warning');
$(".aol-form-button").prop('disabled', true);
}
});
request.done( function(response, type, data){
$(document).trigger('afterAppSubmit', response); //Custom event on ajax completion
if(response['success']==true){
$('#aol_form_status').removeClass();
$('#aol_form_status').addClass('alert alert-success');
$('#aol_form_status').html(response['message']);
$(".aol-form-button").prop('disabled', false);
if(response['hide_form']==true) $('.aol_app_form').slideUp(); //Show a sliding effecnt.
//Divert to thank you page.
if(response.divert != null){
var page = response.divert;
window.location.href = stripslashes(page);
}
}
});
request.fail( function(xhr, type, errorText){
let response = JSON.parse(xhr.responseText);
$('#aol_form_status').removeClass();
$('#aol_form_status').addClass('alert alert-danger');
$('#aol_form_status').html(''+errorText+' '+response['message']);
$(".aol-form-button").prop('disabled', false);
});
return false;
});
*/
//Separator Code
$('.aol_multistep').click(function(){
$('fieldset').hide();
var load = $(this).data('load');
if( load == 'next' ) $(this).parent("fieldset").next("fieldset").show();
else if( load == 'back' ) $(this).parent("fieldset").prev("fieldset").show(); else $(this).parent("fieldset").previous("fieldset").show();
return false;
});
/* Progress Bar*/
var fields_required = $('.aol-form-group.required');
var fields_count = fields_required.length;
if(fields_count > 0) {
$('.progress-wrapper').show();
update_progress_bar($, fields_required, fields_count);
$(fields_required).find('input, textarea').change(function(){
update_progress_bar($, fields_required, fields_count);
});
}
/*End Progress Bar*/
})
})( jQuery );
function update_progress_bar($, field, fields_count){
var filled = 0;
$(field).each(function(){
//If child input field is a checkbox or radio.
if( $(this).find('input').attr('type') == 'checkbox' || $(this).find('input').attr('type') == 'radio' ){
if($(this).find('input').is(':checked')) { // zero-length string AFTER a trim
filled++;
}
}
else{
if($.trim( $(this).find('input, textarea').val() ).length ) { // zero-length string AFTER a trim
filled++;
}
}
});
filled_pecentage = (filled/fields_count)*100;
$('.aol-progress-count').css('width',filled_pecentage+'%');
$('.aol-progress-counter').text(filled+'/'+fields_count);
//$('.aol_progress').val(filled+'/'+fields_count);
}
async function aolSubmitForm( event ) {
if(!aolEmpty(aol_public.consent_text)){
if ( window.confirm(aol_public.consent_text) == false ) return;
}
event.preventDefault();
const submitButton = document.getElementById('aol_app_submit_button');
const statusBar = document.getElementById('aol_form_status');
const aolForm = event.target;
//event.target.setAttribute('disabled', 'disabled');
submitButton.setAttribute('disabled', 'disabled');
statusBar.classList.remove('alert-danger'); //May be trying again after errors.
statusBar.classList.add('alert');
statusBar.classList.add('alert-warning');
statusBar.innerHTML = ' ';
const formData = new FormData(document.getElementById("aol_app_form"));
//formData.append('note', 'hello_world');
const response = await fetch(aol_public.ajaxurl, {
method: 'POST',
body: formData,
headers: {'Accept': 'application/json'}
});
const data = await response.json();
let message = !aolEmpty(data['message']) ? data['message'] : 'Something went wrong. Please try again or contact support.';
if( response.status == 200 ){
statusBar.classList.remove('alert-warning');
statusBar.classList.add('alert-info');
statusBar.innerHTML = message;
if(data['hide_form'] == true){
aolForm.classList.toggle('hideout');
} //Show a sliding effecnt.
//Divert to thank you page.
if(data.divert == true){
var page = response.divert;
window.location.href = stripslashes(page);
}
} else {
statusBar.classList.remove('alert-warning');
statusBar.classList.add('alert-danger');
statusBar.innerHTML = ''+response.statusText+' '+message;
submitButton.removeAttribute('disabled');
}
}
function stripslashes (str) {
return (str + '').replace(/\\(.?)/g, function (s, n1) {
switch (n1) {
case '\\':
return '\\';
case '0':
return '\u0000';
case '':
return '';
default:
return n1;
}
});
}
function limitText(limitField, limitNum) {
if (limitField.value.length > limitNum) {
limitField.value = limitField.value.substring(0, limitNum);
}
}
function aolEmpty(e) {
switch (e) {
case "":
case 0:
case "0":
case null:
case false:
case undefined:
return true;
default:
return false;
}
}PK ! FY Y public/js/cct_embed.min.jsnu [ function cct_getWordStats(e){var t=[],n=e.trim();t.num_character=e.trim().length;var c=n.split(/\s+/).join("");t.num_character_wo_spaces=c.length,t.num_paragraph=0,n.length>0&&(t.num_paragraph=n.split(/\n+/).length);var r=n.replace(/(\w)[-_'](\w)/gi,"$10$2");r=r.replace(/(\d)[,.](\d)/gi,"$10$2"),t.num_sentence=0,r.length>0&&(t.num_sentence=r.replace(/"/gi,"").split(/[.?!:\n]+/).length);var _=r.split(/[\s\n]+/);if(t.num_word=0,r.length>0&&(t.num_word=_.length),t.avg_sentence_length=0!=t.num_sentence?Math.round(t.num_word/t.num_sentence*10)/10:0,0!=t.num_word){var a=c.length/t.num_word;t.avg_word_length=Math.round(10*a)/10}else t.avg_word_length=0;var d=[];t.num_unique_word=0,t.percentage_num_unique_word=0;for(var s=0;s<_.length;s++)d[_[s]]=1;var u=Object.keys(d).length;return t.num_unique_word=Object.keys(d).length,percentage_unique_words=Math.round(100*u/t.num_word),t.percentage_num_unique_word=percentage_unique_words,t}function cct_display_counts(){var e=document.getElementById("cct_embed_input_text").value;wordStats=cct_getWordStats(e),document.getElementById("cct_embed_result").innerHTML=""+wordStats.num_character+" characters | "+wordStats.num_character_wo_spaces+" characters w/o spaces | "+wordStats.num_word+" words | "+wordStats.num_sentence+" sentences | "}var cct_powered_by=document.getElementById("cct_powered_by");cct_powered_by.setAttribute("style","font-size:small;float:right;");var cct_embed_result=document.getElementById("cct_embed_result");cct_embed_result.setAttribute("style","margin:5px;text-align:center;");var cct_embed_input_text=document.getElementById("cct_embed_input_text");cct_embed_input_text.setAttribute("style","width: 100%;-webkit-box-sizing: border-box;-moz-box-sizing: border-box; box-sizing: border-box;");var cct_embed_result=document.getElementById("cct_embed_result");cct_embed_result.innerHTML="0 characters | 0 characters w/o spaces | 0 words | 0 sentences";var cct_textarea=document.getElementById("cct_embed_input_text");cct_textarea.value="",cct_textarea.addEventListener&&(cct_textarea.addEventListener("input",cct_display_counts,!1),cct_textarea.addEventListener("textInput",cct_display_counts,!1),cct_textarea.addEventListener("textinput",cct_display_counts,!1)),cct_textarea.attachEvent&&cct_textarea.attachEvent("onpropertychange",cct_display_counts);PK ! |
~ ~ apply-online.phpnu [ run();
}
run_applyonline();PK ! p[ storage/index.htmlnu [ Kangaroos cannot jump herePK ! Vo storage/.htaccessnu [
AddType application/octet-stream .wpress
DirectoryIndex index.php
Options -Indexes
PK ! J J storage/robots.txtnu [ User-agent: *
Disallow: /applyonline/
Disallow: /wp-content/applyonline/PK ! p[ storage/index.phpnu [ Kangaroos cannot jump herePK ! Z&0 0 storage/web.confignu [
PK ! _+ images/loading.gifnu [ GIF89a ర莎Ȝبvvvhhh !Created with ajaxload.info ! !NETSCAPE2.0 , $ AeZ
<䠒ÌQ46<A
ßH a :ID0Fa\xG3! O:-RjTJ*
t
~"ds]
)t-" i;H>nQg]_*
R3GI?
˴v$ýj3! ! , $0eZy0q PУW)";qX^D50 Ո