Add candidate and employer templates, application form, and new password functionality

- Created 'dla-kandydata.php' template for candidates with job offers and registration options.
- Developed 'dla-pracodawcy.php' template for employers detailing how Globelus works and registration for new employers.
- Implemented 'advert-apply.php' for job applications, including form validation and file upload for CVs.
- Added 'new-password.php' for users to set a new password with validation for password strength and matching.
This commit is contained in:
2025-05-24 11:51:42 +02:00
parent 4fdd906b81
commit 905c0f0d89
59 changed files with 1987 additions and 791 deletions

View File

@@ -0,0 +1,36 @@
<div class="_banner_box">
<div class="_title">Dla kandydata</div>
<div class="_subtitle">Mamy dla Ciebie oferty pracy! Nie zwlekaj, wybierz rozwiązanie dla siebie.</div>
<div class="_boxes_candidate">
<div class="_box">
<div class="_text">
<img src="/upload/filemanager/ikony/szukasz-pracy-1.svg">
<p><span>Masz czas! - jesteś szczęściarzem!</span><br><br>Nie czekaj więc, aplikuj już teraz!<br>To szybkie, bezpłatne i przybliża Cię do pracy, której szukasz.</p>
<a href="/rejestracja" class="_button">Rejestracja dla kandydatów</a>
</div>
</div>
<div class="_box">
<div class="_text">
<img src="/upload/filemanager/ikony/szukasz-pracy-2.svg">
<p><span>Nie masz czasu! - nie przejmuj się!</span><br><br>Uzupełnij swój profil, a oferty pracy znajdą Ciebie!<br>Nie musisz aplikować pracodawcy sami odezwą się do Ciebie, jeśli Twój profil będzie kompletny.</p>
<a href="/jakiej-pracy-szukasz" class="_button">Uzupełnij profil kandydata</a>
</div>
</div>
</div>
</div>
<div class="_login_box _single">
<div class="_left">
<div class="_question">
<div class="_title">Masz pytania?</div>
<div class="_text">Nie jesteś sam wspieramy Cię na każdym kroku. Napisz do nas na: <a href="mailto:kontakt@globelus.pl">kontakt@globelus.pl</a> lub skorzystaj z <a href="/kontakt">formularza kontaktowego</a></div>
</div>
</div>
</div>
<div class="_partners">
<div class="_title">Partnerzy globelus.pl</div>
<div class="_content">
<img src="/images/logo-jooble.png" alt="jooble">
<img src="/images/logo-cvwizard.png" alt="cvwizard">
<img src="/images/logo-megapraca.jpg" alt="megapraca">
</div>
</div>

View File

@@ -0,0 +1,84 @@
<div class="_banner_box">
<div class="_title">Jak działa Globelus?</div>
<div class="_boxes">
<div class="_box">
<div class="_text">
<img src="/images/icon-clock-red.svg">
<p><span>szybka</span> publikacja ogłoszeń</p>
</div>
</div>
<div class="_box">
<div class="_text">
<img src="/images/icon-file-red.svg">
<p><span>4</span> oferty pracy zupelnie<br><span>za darmo</span></p>
</div>
</div>
<div class="_box">
<div class="_text">
<img src="/images/icon-calendar-red.svg">
<p><span>45 dni</span> publikacji oferty</p>
</div>
</div>
<div class="_box">
<div class="_text">
<img src="/images/icon-wyroznienia-red.svg">
<p><span>polecanie oraz wyróżnianie</span><br>ofert pracy</p>
</div>
</div>
<div class="_box">
<div class="_text">
<img src="/images/icon-facebook-red.svg">
<p>promocja ogłoszeń<br>w <span>social media</span></p>
</div>
</div>
<div class="_box">
<div class="_text">
<img src="/images/icon-mail-red.svg">
<p>promocja ogłoszeń<br>przez <span>mailing</span></p>
</div>
</div>
<div class="_box">
<div class="_text">
<img src="/images/icon-peoples-red.svg">
<p>dostęp do<br><span>bazy kandydatów</span></p>
</div>
</div>
<div class="_box">
<div class="_text">
<img src="/images/icon-peoples-red.svg">
<p>lista<br><span>potencjalnych kandydatów</span></p>
</div>
</div>
<div class="_box">
<div class="_text">
<img src="/images/icon-ads-red.svg">
<p>promocja przez<br><span>banner reklamowy</span></p>
</div>
</div>
</div>
</div>
<div class="_login_box">
<div class="_left">
<div class="_question">
<div class="_title">Masz pytania?</div>
<div class="_text">Jesteśmy do Twojej dyspozycji na każdym etapie publikacji ogłoszenia. Napisz do nas na: <a href="mailto:kontakt@globelus.pl">kontakt@globelus.pl</a> lub skorzystaj z <a href="/kontakt">formularza kontaktowego</a></div>
</div>
</div>
<div class="_right">
<div class="_login">
<div class="_title">Rejestracja nowego pracodawcy</div>
<div class="_subtitle">Załóż konto pracodawcy (jest to darmowe) i dodaj oferty pracy już dziś.</div>
<div class="_text">
<a href="/rejestracja#pracodawca" class="_button">Zarejestruj się</a>
</div>
</div>
</div>
</div>
<div class="_partners">
<div class="_title">Partnerzy globelus.pl</div>
<div class="_content">
<img src="/images/logo-jooble.png" alt="jooble">
<img src="/images/logo-cvwizard.png" alt="cvwizard">
<img src="/images/logo-megapraca.jpg" alt="megapraca">
</div>
</div>

View File

@@ -0,0 +1,146 @@
<? global $lang; ?>
<div class="row">
<div class="col-12">
<div class="advert_apply">
<? if ( $this -> send_message ):?>
<? \S::set_session( 'send_message', false ); ?>
<? if ( !$this -> send_register ):?>
<div class="alert alert-success alert-border">Twoja aplikacja została wysłana. Dziękujemy.<br>Uzupełnij swój <a href="/jakiej-pracy-szukasz" style="display: inline; color: #3a87ad; font-weight: bold;">profil kandydata</a>, aby bez konieczności aplikacji na ogłoszenia dostawać pasujące do Ciebie propozycje pracy.</div>
<? else:?>
<div class="alert alert-success alert-border">Twoja aplikacja została wysłana. Dziękujemy.</div>
<? endif;?>
<center>
<a href="https://www.globelus.pagedev.pl/oferty-pracy" class="btn btn-blue">Wróć do ofert pracy</a>
</center>
<? else:?>
<img src="/images/icon-file-upload.svg" alt="oferta pracy" class="_icon">
<div class="_title">Aplikujesz na stanowisko:</div>
<div class="_advert_title"><?= $this -> advert['title'];?></div>
<div class="_advert_data">
<div class="_columns">
<div class="_left">Pracodawca:</div>
<div class="_right">
<a href="/pracodawca/<?= $this->advert['user_id']; ?>/<?= \S::seo($this->advert['firm_name_profile'], true); ?>"><?= $this->advert['firm_name_profile']; ?></a>
</div>
</div>
<div class="_columns">
<div class="_left">Lokalizacja:</div>
<div class="_right"><?= $this -> advert['country_name'];?><? if ($this -> advert['id_voivodeship']):?> - <?= \front\factory\Globelus::get_voivodeship_name( $this -> advert['id_voivodeship'] );?><? endif;?> - <?= $this -> advert['city'];?></div>
</div>
<form method="POST" action="/globelusAdverts/send_message/" id="advert-contact" enctype="multipart/form-data">
<input type="hidden" name="redirect_url" value="<?= $_SERVER['REQUEST_URI']; ?>">
<input type="hidden" name="advert_id" value="<?= $this->advert['id']; ?>">
<div class="_columns">
<div class="_left">Imię:</div>
<div class="_right">
<input type="text" id="name" name="name" class="form-control" value="<?= $this->g_user['name'] ? htmlspecialchars($this->g_user['name']) : htmlspecialchars(\S::get_session('advert_answer_name')); ?>">
</div>
</div>
<div class="_columns">
<div class="_left">Nazwisko:</div>
<div class="_right">
<input type="text" id="surname" name="surname" class="form-control" value="<?= $this->g_user['surname'] ? htmlspecialchars($this->g_user['surname']) : htmlspecialchars(\S::get_session('advert_answer_surname')); ?>">
</div>
</div>
<div class="_columns">
<div class="_left">Email:<span class="red">*</span></div>
<div class="_right">
<input type="text" id="email" name="email" class="form-control" value="<?= $this->g_user['email'] ? htmlspecialchars($this->g_user['email']) : htmlspecialchars(\S::get_session('advert_answer_email')); ?>">
</div>
</div>
<div class="_columns">
<div class="_left">Telefon:<span class="red">*</span></div>
<div class="_right">
<input type="text" id="phone" name="phone" class="form-control" value="<?= $this->g_user['phone'] ? htmlspecialchars($this->g_user['phone']) : htmlspecialchars(\S::get_session('advert_answer_phone')); ?>">
</div>
</div>
<div class="_columns">
<div class="_left">Wiadomość:</div>
<div class="_right">
<textarea id="text" name="text" class="form-control">Witam,<?= PHP_EOL; ?>Państwa oferta pracy wydaje mi się interesująca. Bardzo proszę o kontakt.<?= PHP_EOL; ?>Pozdrawiam<?= PHP_EOL; ?><?= htmlspecialchars($this->g_user['surname']); ?> <?= htmlspecialchars($this->g_user['name']); ?></textarea>
</div>
</div>
<div class="_columns">
<div class="_left">CV:<span class="red">*</span></div>
<div class="_right">
<? if ($this->g_user and file_exists(\front\factory\GlobelusCandidates::cv_url($this->g_user['id']))) : ?>
<p class="small-info mt0 text-success">Nie musisz dodawać CV, chyba, że chcesz użyć innego cv niż to zarejestrowane w Profilu Kandydata?</p>
<input type="file" id="cv" name="cv">
<? elseif (!$this->g_user and \S::get_session('advert_answer_cv')) : ?>
<p class="small-info mt0 text-success">Dodaj nowe CV, lub skorzystaj z wcześniej wysłanego.</p>
<input type="file" id="cv" name="cv">
<? else : ?>
<input type="file" id="cv" name="cv" required="required">
<? endif; ?>
</div>
</div>
<div class="_columns">
<div class="_left">
<input type="checkbox" required id="agremment">
</div>
<div class="_right"> *
<?
$text = str_replace('[LINK-REGULAMIN]', '<a href="/regulamin">' . $lang['regulamin'] . '</a>', $lang['rejestracja-akceptacja-regulaminu']);
echo $text = str_replace('[LINK-POLITYKA-PRYWATNOSCI]', '<a href="/polityka-prywatnosci">' . $lang['polityke-prywatnosci'] . '</a>', $text);
?>
</div>
</div>
<div class="_columns">
<div class="_left">
<input type="checkbox" name="register">
</div>
<div class="_right">
Zgadzam się na dopasowanie mojego cv również do innych ofert pracy oraz udostepnienie mojego cv innym pracodawcom zarejestrowanym na globelus.pl
</div>
</div>
<div class="_columns">
<div class="_left"></div>
<div class="_right">
<input type="submit" value="Aplikuj teraz" class="btn btn-red btn_aplikuj">
</div>
</div>
<div class="_columns">
<div class="_left"></div>
<div class="_right">
<small>Jeśli dałeś nam swoją zgodę i możemy dopasować Twoje cv również do innych ofert pracy oraz udostępnić Twoje cv innym pracodawcom zarejestrowanym na globelus.pl to zalecamy abyś uzupełnij swój <a href="/jakiej-pracy-szukasz">Profil Kandydata</a>.</small>
</div>
</div>
</form>
</div>
<? endif;?>
</div>
</div>
<script class="footer" type="text/javascript">
$(function() {
$('body').on('submit', '#advert-contact', function(e) {
if (!($('#cv')[0].files[0].size < 5242880)) {
e.preventDefault();
$.alert({
title: '<?= ucfirst($lang['blad']); ?>',
icon: 'fa fa-exclamation',
content: '<?= $lang['plik-cv-jest-zbyt-duzy']; ?>',
type: 'blue',
closeIcon: true,
closeIconClass: 'fa fa-close',
typeAnimated: true,
animation: 'opacity',
autoClose: 'confirm|10000',
columnClass: 'large',
theme: 'modern',
buttons: {
confirm: {
text: '<?= $lang['zamknij']; ?>',
btnClass: 'btn-blue',
keys: ['enter'],
action: function() {}
}
}
});
}
});
});
</script>
<?
if (!$this->g_user['id'] or $this->g_user['id'] != $this->advert['user_id'])
\front\factory\GlobelusAdverts::advert_visits_increase($this->advert['id']);
?>

View File

@@ -1,6 +1,6 @@
<? global $lang; ?>
<div class="row">
<div class="col-12 col-lg-9">
<div class="col-12 col-lg-9" style="padding: 0 5px;">
<div class="advert-details">
<div class="top">
<h1 class="name"><?= $this->advert['title']; ?></h1>
@@ -54,76 +54,108 @@
</div>
</div>
</div>
<div class="icons row no-gutters">
<div class="col-12 col-lg-10 offset-lg-1">
<? if ($this->advert['salary']) : ?>
<div class="icon">
<img src="/layout/images/oferta-wynagrodzenie-gray.svg">
<?= $this->advert['salary']; ?>
<div class="icons">
<? if ( trim( $this->advert['salary'] )):?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-money.svg">
</div>
<? endif; ?>
<? if ($this->advert['overtime']) : ?>
<div class="icon small">
<img src="/layout/images/nadgodziny-gray.svg">
<div class="_text">
<?= $this -> advert['salary'];?>
</div>
</div>
<? endif; ?>
<? if ($this->advert['overtime']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-time.svg">
</div>
<div class="_text">
<?= $this->advert['overtime_quantity']; ?>
</div>
<? endif; ?>
<? if ($this->advert['accommodation']) : ?>
<div class="icon small">
<img src="/layout/images/zakwaterowanie-gray.svg">
</div>
<? endif; ?>
<? if ($this->advert['accommodation']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-bed.svg">
</div>
<div class="_text">
<?= $this->advert['accommodation_cost']; ?>
</div>
<? endif; ?>
<? if ($this->advert['travel_refund']) : ?>
<div class="icon">
<img src="/layout/images/przejazd-gray.svg">
</div>
<? endif; ?>
<? if ($this->advert['travel_refund']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-plane.svg">
</div>
<div class="_text">
refundacja przejazdu
</div>
<? endif; ?>
<? if ($this->advert['from_now']) : ?>
<div class="icon">
<img src="/layout/images/praca-od-zaraz-gray.svg">
<?= \S::lang('praca-od-zaraz'); ?>
</div>
<? endif; ?>
<? if ($this->advert['work_type']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-plane.svg">
</div>
<? endif; ?>
<? if ($this->advert['work_type']) : ?>
<div class="icon small">
<img src="/layout/images/oferta-rodzaj-umowy-gray.svg">
<div class="_text">
<? $work_type = \front\factory\Globelus::work_types();
echo $work_type[$this->advert['work_type']]; ?>
</div>
<? endif; ?>
<? if ($this->advert['without_experience']) : ?>
<div class="icon small">
<img src="/layout/images/oferta-doswiadczenie-gray.svg">
</div>
<? endif; ?>
<? if ($this->advert['without_experience']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-case.svg">
</div>
<div class="_text">
<?= \S::lang('bez-doswiadczenia'); ?>
</div>
<? endif; ?>
<? if ($this->advert['without_language']) : ?>
<div class="icon">
<img src="/layout/images/bez-znajomosci-jezyka-gray.svg">
</div>
<? endif; ?>
<? if ($this->advert['without_language']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-lang.svg">
</div>
<div class="_text">
<?= \S::lang('bez-znajomosci-jezyka'); ?>
</div>
<? endif; ?>
<? if ($this->advert['for_couples']) : ?>
<div class="icon small">
<img src="/layout/images/oferta-dla-par-gray.svg">
</div>
<? endif; ?>
<? if ($this->advert['for_couples']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-couple.svg">
</div>
<div class="_text">
<?= \S::lang('dla-par'); ?>
</div>
<? endif; ?>
<? if ($this->advert['outside_ue']) : ?>
<div class="icon small">
<img src="/layout/images/ue-gray.svg">
</div>
<? endif; ?>
<? if ($this->advert['outside_ue']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-ue.svg">
</div>
<div class="_text">
dla obywateli spoza UE
</div>
<? endif; ?>
<? if ($this->advert['without_driving_license']) : ?>
<div class="icon small">
<img src="/layout/images/prawojazdy-gray.svg">
</div>
<? endif; ?>
<? if ($this->advert['without_driving_license']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-car.svg">
</div>
<div class="_text">
bez prawa jazdy
</div>
<? endif; ?>
</div>
</div>
<? endif; ?>
</div>
</div>
<?
@@ -131,7 +163,7 @@
$advert_add_img_top = \front\factory\GlobelusFirms::advert_add_img_top_url( $this -> advert['id'] );
if ( file_exists( $advert_add_img_top ) ):
echo '<div class="image_header"><img src="/advert_add_img_top/' . $this->advert['id'] . '/'. \S::get_token() . '"></div>';
elseif ( file_exists( $img_header_url ) and !$this -> advert ):
elseif ( file_exists( $img_header_url ) ):
echo '<div class="image_header"><img src="/img_header/' . $this->g_user['id'] . '/'. \S::get_token() . '"></div>';
endif;
?>
@@ -150,24 +182,32 @@
?>
</div>
<?
$img_bottom_url = \front\factory\GlobelusFirms::img_bottom_url( $this -> g_user['id'] );
$img_bottom_url = \front\factory\GlobelusFirms::img_bottom_url( $this -> advert['user_id'] );
$advert_add_img_bottom = \front\factory\GlobelusFirms::advert_add_img_bottom_url( $this -> advert['id'] );
if ( file_exists( $advert_add_img_bottom ) ):
echo '<div class="image_bottom"><img src="/advert_add_img_bottom/' . $this->advert['id'] . '/'. \S::get_token() . '"></div>';
elseif ( file_exists( $img_bottom_url ) ):
echo '<div class="image_bottom"><img src="/img_bottom/' . $this->g_user['id'] . '/'. \S::get_token() . '"></div>';
echo '<div class="image_bottom"><img src="/img_bottom/' . $this -> advert['user_id'] . '/'. \S::get_token() . '"></div>';
endif;
?>
<? if ($this->advert['clauses']) : ?>
<? if ($this->advert['clauses'] === 'test' ) : ?>
<div class="content clauses">
<?= $this->advert['clauses']; ?>
</div>
<? endif; ?>
<? if ($this->advert['contact_person'] or $this->advert['contact_person2']) : ?>
<? if ( $this->advert['contact_person'] ):?>
<div class="content person">
<div class="row">
<? if ($this->advert['contact_person']) : ?>
<div class="col-12 col-md-6">
<? if ( !$this -> g_user['id'] ):?>
<div class="_content_nologged">
<div class="_title">Osoba rekrutująca na stanowisko</div>
<div class="_subtitle">Zaloguj się aby zobaczyć dane kontaktowe</div>
</div>
<? else:?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-user-square.svg" alt="Osoba rekrutująca na stanowisko" />
</div>
<div class="_text">
<p><strong>Osoba rekrutująca na stanowisko:</strong></p>
<p><?= $this->advert['contact_person']; ?><br />
<? if (!$this->g_user) : ?>
@@ -179,208 +219,98 @@
<? endif; ?>
</p>
</div>
<? endif; ?>
<? if ($this->advert['contact_person2']) : ?>
<div class="col-12 col-md-6">
<p><strong>Osoba rekrutująca na stanowisko:</strong></p>
<p><?= $this->advert['contact_person2']; ?><br />
<? if (!$this->g_user) : ?>
<a href="/logowanie">Zaloguj się aby zobaczyć adres email</a><br />
<a href="/logowanie">Zaloguj się aby zobaczyć numer telefonu</a><br />
<? else : ?>
<?= $this->advert['phone2']; ?><br />
<?= $this->advert['email2']; ?><br />
<? endif; ?>
</p>
</div>
<? endif; ?>
</div>
</div>
<? endif;?>
</div>
<? endif; ?>
<? if ($this->advert['aplication_link']) : ?>
<div class="form form--aplication-link application">
<a href="<?= $this->advert['aplication_link'] ?>" target="_blank" class="aplication-link btn btn-success">Aplikuj teraz</a>
<? else : ?>
<div class="form application">
<h3><?= $lang['zainteresowany-nie-zwlekaj-aplikuj']; ?></h3>
<div class="row">
<div class="col-12 col-md-10 offset-md-1">
<form method="POST" action="/globelusAdverts/send_message/" id="advert-contact" enctype="multipart/form-data">
<input type="hidden" name="redirect_url" value="<?= $_SERVER['REQUEST_URI']; ?>">
<input type="hidden" name="advert_id" value="<?= $this->advert['id']; ?>">
<div class="row">
<div class="col-12 col-md-6">
<div class="form-group row">
<label form="name" class="col-12 col-sm-4"><?= ucfirst($lang['imie']); ?>:</label>
<div class="col-12 col-sm-8">
<input type="text" id="name" name="name" class="form-control" value="<?= $this->g_user['name'] ? htmlspecialchars($this->g_user['name']) : htmlspecialchars(\S::get_session('advert_answer_name')); ?>">
</div>
</div>
</div>
<div class="col-12 col-md-6">
<div class="form-group row">
<label form="surname" class="col-12 col-sm-4"><?= ucfirst($lang['nazwisko']); ?>:</label>
<div class="col-12 col-sm-8">
<input type="text" id="surname" name="surname" class="form-control" value="<?= $this->g_user['surname'] ? htmlspecialchars($this->g_user['surname']) : htmlspecialchars(\S::get_session('advert_answer_surname')); ?>">
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12 col-md-6">
<div class="form-group row">
<label form="email" class="col-12 col-sm-4"><?= ucfirst($lang['email']); ?><span class="red">*</span>:</label>
<div class="col-12 col-sm-8">
<input type="text" required id="email" name="email" class="form-control" value="<?= $this->g_user['email'] ? htmlspecialchars($this->g_user['email']) : htmlspecialchars(\S::get_session('advert_answer_email')); ?>">
</div>
</div>
</div>
<div class="col-12 col-md-6">
<div class="form-group row">
<label form="phone" class="col-12 col-sm-4"><?= ucfirst($lang['telefon']); ?><span class="red">*</span>:</label>
<div class="col-12 col-sm-8">
<input type="text" required id="phone" name="phone" class="form-control" value="<?= $this->g_user['phone'] ? htmlspecialchars($this->g_user['phone']) : htmlspecialchars(\S::get_session('advert_answer_phone')); ?>">
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="form-group row">
<label form="text" class="col-12 col-sm-4 col-md-2"><?= ucfirst($lang['wiadomosc']); ?>:</label>
<div class="col-12 col-sm-8 col-md-10">
<textarea id="text" name="text" class="form-control">Witam,<?= PHP_EOL; ?>Państwa oferta pracy wydaje mi się interesująca. Bardzo proszę o kontakt.<?= PHP_EOL; ?>Pozdrawiam<?= PHP_EOL; ?><?= htmlspecialchars($this->g_user['surname']); ?> <?= htmlspecialchars($this->g_user['name']); ?>
</textarea>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="form-group row">
<label form="cv" class="col-12 col-sm-4 col-md-2"><?= strtoupper($lang['cv']); ?><span class="red">*</span>:</label>
<div class="col-12 col-sm-8 col-md-10 pt10">
<? if ($this->g_user and file_exists(\front\factory\GlobelusCandidates::cv_url($this->g_user['id']))) : ?>
<p class="small-info mt0 text-success">Nie musisz dodawać CV, chyba, że chcesz użyć innego cv niż to zarejestrowane w Profilu Kandydata?</p>
<input type="file" id="cv" name="cv">
<? elseif (!$this->g_user and \S::get_session('advert_answer_cv')) : ?>
<p class="small-info mt0 text-success">Dodaj nowe CV, lub skorzystaj z wcześniej wysłanego.</p>
<input type="file" id="cv" name="cv">
<? else : ?>
<input type="file" id="cv" name="cv" required="required">
<? endif; ?>
</div>
</div>
</div>
</div>
<? if (!$this->g_user) : ?>
<div class="form-group row agremment">
<div class="col-12 col-sm-10 offset-sm-2">
<input type="checkbox" required id="agremment">
<?
$text = str_replace('[LINK-REGULAMIN]', '<a href="/regulamin">' . $lang['regulamin'] . '</a>', $lang['rejestracja-akceptacja-regulaminu']);
echo $text = str_replace('[LINK-POLITYKA-PRYWATNOSCI]', '<a href="/polityka-prywatnosci">' . $lang['polityke-prywatnosci'] . '</a>', $text);
?>
</div>
</div>
<div class="form-group row agremment mt20">
<div class="col-12 col-sm-10 offset-sm-2">
<input type="checkbox" name="register"> Zgadzam się na dopasowanie mojego cv również do innych ofert pracy oraz udostepnienie mojego cv innym pracodawcom zarejestrowanym na globelus.pl
</div>
</div>
<? endif; ?>
<div class="form-group row">
<div class="col-12 col-sm-8 offset-sm-4 offset-md-2 mt20">
<input type="submit" value="<?= ucfirst($lang['aplikuj-na-oferte']); ?>" class="btn btn-success">
</div>
</div>
<div class="form-group row agremment mt20">
<div class="col-12 col-sm-10 offset-sm-2">
Jeśli dałeś nam swoją zgodę i możemy dopasować Twoje cv również do innych ofert pracy oraz udostępnić Twoje cv innym pracodawcom zarejestrowanym na globelus.pl to zalecamy abyś uzupełnij swój <a href="/jakiej-pracy-szukasz">Profil Kandydata</a>.
<!--<input type="checkbox" name="register"> Zgadzam się na dopasowanie mojego cv również do innych ofert pracy oraz udostepnienie mojego cv innym pracodawcom zarejestrowanym na globelus.pl-->
</div>
</div>
</form>
</div>
</div>
<? endif; ?>
</div>
</div>
<a href="<?= $this->advert['aplication_link'] != '' ? $this->advert['aplication_link'] : '/aplikuj/' . $this -> advert['id'];?>" class="aplication-link btn btn-red mt15 btn_aplikuj">Aplikuj teraz</a>
</div>
<div class="col-12 col-lg-3">
<div class="row advert_details_boxes">
<? if (count($this->similar_adverts)) : ?>
<div class="col-12">
<div class="mini-box vertical similar-adverts">
<div class="title small">
Podobne oferty
</div>
<ul>
<? foreach ($this->similar_adverts as $advert_id) : ?>
<? $advert = \front\factory\GlobelusAdverts::advert_details($advert_id); ?>
<li>
<a href="/oferta/<?= $advert['id']; ?>/<?= \S::seo($advert['title'], true); ?>" title="Ogłoszenie: <?= addslashes($advert['title']); ?>"><?= $advert['title']; ?></a>
<div class="place">
<i class="fa fa-map-marker"></i>
<a href="/oferty-pracy/<?= \S::seo($advert['country_name'], true); ?>" title="oferty pracy <?= $advert['country_name']; ?>"><?= $advert['country_name']; ?></a>
<? if ($advert['id_voivodeship']) : ?> - <?= \front\factory\Globelus::get_voivodeship_name($advert['id_voivodeship']); ?><? endif; ?> -
<?= $advert['city']; ?>
</div>
</li>
<? endforeach; ?>
</ul>
</div>
</div>
<? endif; ?>
<div class="col-12">
<div class="mini-box mt10 text-center">
<form method="POST" action="/oferty-pracy">
<input type="hidden" name="filtr" value="t">
<input type="hidden" name="k" value="<?= $this->advert['firm_name_profile']; ?>">
<a href="#" class="action" onclick="$( this ).parent( 'form' ).submit(); return false;">
<i class="fa fa-bars"></i>
<?= ucfirst($lang['inne-oferty-tego-pracodawcy']); ?>
</a>
</form>
</div>
</div>
<div class="col-12 col-lg-3" style="padding: 0 5px;">
<a href="<?= $this->advert['aplication_link'] != '' ? $this->advert['aplication_link'] : '/aplikuj/' . $this -> advert['id'];?>" class="btn btn-red btn_aplikuj" <?= $this -> advert['aplication_link'] ? 'target="_blank"' : '';?>>Aplikuj</a>
<div class="row advert_details_boxes">
<div class="col-12">
<div class="mini-box mt10 text-center">
<form method="POST" action="/oferty-pracy">
<input type="hidden" name="filtr" value="t">
<input type="hidden" name="k" value="<?= $this->advert['firm_name_profile']; ?>">
<a href="#" class="action" onclick="$( this ).parent( 'form' ).submit(); return false;">
<i class="fa fa-bars"></i>
<?= ucfirst($lang['inne-oferty-tego-pracodawcy']); ?>
</a>
</form>
</div>
<div class="col-12">
<div class="mini-box mt10 text-center">
<a href="/pracodawca/<?= $this->advert['user_id']; ?>/<?= \S::seo($this->advert['firm_name_profile'], true); ?>" class="action">
<i class="fa fa-user"></i>
<?= ucfirst($lang['zobacz-profil-pracodawcy']); ?>
</div>
<div class="col-12">
<div class="mini-box mt10 text-center">
<a href="/pracodawca/<?= $this->advert['user_id']; ?>/<?= \S::seo($this->advert['firm_name_profile'], true); ?>" class="action">
<i class="fa fa-user"></i>
<?= ucfirst($lang['zobacz-profil-pracodawcy']); ?>
</a>
</div>
</div>
<div class="col-12">
<div class="mini-box mt10 text-center">
<div class="social-icons">
<a class="fb" href="http://www.facebook.com/sharer.php?u=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;" title="facebook" target="_blank" rel="nofollow">
<img src="/images/system/logo-facebook.jpg" alt="facebook" />
</a>
<a class="pinterest" href="http://pinterest.com/pin/create/button/?url=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;" title="pinterest" target="_blank" rel="nofollow">
<img src="/images/system/logo-pinterest.jpg" alt="pinterest" />
</a>
<a class="twitter" href="http://twitter.com/share?url=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=450,width=600');return false;" title="twitter" target="_blank" rel="nofollow">
<img src="/images/system/logo-twitter.jpg" alt="twitter" />
</a>
<a class="linkedin" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=500,width=850');return false;" title="linked in" target="_blank" rel="nofollow">
<img src="/images/system/logo-linkedin.jpg" alt="linkedin" />
</a>
<a class="gp" href="https://plus.google.com/share?url=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;" title="google+" target="_blank" rel="nofollow">
<img src="/images/system/logo-google.jpg" alt="google+" />
</a>
</div>
</div>
</div>
<? if (count( $this -> similar_adverts)) : ?>
<div class="col-12">
<div class="mini-box mt10 text-center">
<div class="social-icons">
<a class="fb" href="http://www.facebook.com/sharer.php?u=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;" title="facebook" target="_blank" rel="nofollow">
<img src="/images/system/logo-facebook.jpg" alt="facebook" />
</a>
<a class="pinterest" href="http://pinterest.com/pin/create/button/?url=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;" title="pinterest" target="_blank" rel="nofollow">
<img src="/images/system/logo-pinterest.jpg" alt="pinterest" />
</a>
<a class="twitter" href="http://twitter.com/share?url=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=450,width=600');return false;" title="twitter" target="_blank" rel="nofollow">
<img src="/images/system/logo-twitter.jpg" alt="twitter" />
</a>
<a class="linkedin" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=500,width=850');return false;" title="linked in" target="_blank" rel="nofollow">
<img src="/images/system/logo-linkedin.jpg" alt="linkedin" />
</a>
<a class="gp" href="https://plus.google.com/share?url=<?= \S::get_domain_url($_SERVER['SERVER_NAME']); ?>/oferta/<?= $this->advert['id']; ?>/<?= \S::seo($this->advert['title'], true); ?>/" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=600,width=600');return false;" title="google+" target="_blank" rel="nofollow">
<img src="/images/system/logo-google.jpg" alt="google+" />
</a>
<div class="mini-box vertical similar-adverts">
<div class="title small">
Podobne oferty
</div>
<ul>
<? foreach ($this->similar_adverts as $advert_id) : ?>
<? $advert = \front\factory\GlobelusAdverts::advert_details( $advert_id );?>
<li>
<a href="/oferta/<?= $advert['id']; ?>/<?= \S::seo($advert['title'], true); ?>" title="Ogłoszenie: <?= addslashes($advert['title']); ?>"><?= $advert['title']; ?></a>
<div class="_firm">
<div class="_image">
<? if (file_exists( \front\factory\GlobelusFirms::logo_url($advert['user_id'] ) ) ):?>
<img src="/logo/<?= $advert['user_id']; ?>/<?= \S::get_token(); ?>">
<? else : ?>
<img src="/images/no-logo.jpg">
<? endif; ?>
</div>
<div class="_name">
<div class="place">
<i class="fa fa-map-marker"></i>
<a href="/oferty-pracy/<?= \S::seo( $advert['country_name'], true); ?>" title="oferty pracy <?= $advert['country_name']; ?>"><?= $advert['country_name']; ?></a>
<? if ($advert['id_voivodeship']) : ?> - <?= \front\factory\Globelus::get_voivodeship_name($advert['id_voivodeship']); ?><? endif; ?> - <?= $advert['city']; ?>
</div>
<a href="/pracodawca/<?= $this->advert['user_id']; ?>/<?= \S::seo($this->advert['firm_name_profile'], true); ?>"><?= $this->advert['firm_name_profile']; ?></a>
</div>
</div>
<div class="_bottom">
<!-- button aplikuj -->
<a href="<?= $advert['aplication_link'] != '' ? $advert['aplication_link'] : '/aplikuj/' . $advert['id'];?>">Aplikuj szybko</a>
</div>
</li>
<? endforeach; ?>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<a href="javascript:history.go(-1);" class="btn btn-dark btn-back"><?= $lang['wstecz']; ?></a>
<? endif; ?>
</div>
</div>
</div>
<script class="footer" type="text/javascript">
$(function() {
$('body').on('submit', '#advert-contact', function(e) {

View File

@@ -172,75 +172,108 @@
<a href="/oferty-pracy/<?= \S::seo( $advert['category'], true );?>" title="praca <?= $advert['category'];?>"><?= $advert['category'];?></a>
</span>
</div>
<div class="icons row no-gutters">
<div class="col-12">
<? if ( $advert['salary'] ):?>
<div class="icon">
<img src="/layout/images/oferta-wynagrodzenie-gray.svg">
<div class="icons">
<? if ( trim( $advert['salary'] ) ):?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-money.svg">
</div>
<div class="_text">
<?= $advert['salary'];?>
</div>
<? endif;?>
<? if ( $advert['overtime'] ):?>
<div class="icon small">
<img src="/layout/images/nadgodziny-gray.svg">
<?= $advert['overtime_quantity'];?>
</div>
<? endif; ?>
<? if ($advert['overtime']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-time.svg">
</div>
<? endif;?>
<? if ( $advert['accommodation'] ):?>
<div class="icon small">
<img src="/layout/images/zakwaterowanie-gray.svg">
<?= $advert['accommodation_cost'];?>
<div class="_text">
<?= $advert['overtime_quantity']; ?>
</div>
<? endif;?>
<? if ( $advert['travel_refund'] ):?>
<div class="icon">
<img src="/layout/images/przejazd-gray.svg">
</div>
<? endif; ?>
<? if ($advert['accommodation']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-bed.svg">
</div>
<div class="_text">
<?= $advert['accommodation_cost']; ?>
</div>
</div>
<? endif; ?>
<? if ($advert['travel_refund']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-plane.svg">
</div>
<div class="_text">
refundacja przejazdu
</div>
<? endif;?>
<? if ( $advert['from_now'] ):?>
<div class="icon">
<img src="/layout/images/praca-od-zaraz-gray.svg">
<?= \S::lang( 'praca-od-zaraz' );?>
</div>
<? endif; ?>
<? if ($advert['work_type']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-plane.svg">
</div>
<? endif;?>
<? if ( $advert['work_type'] ):?>
<div class="icon small">
<img src="/layout/images/oferta-rodzaj-umowy-gray.svg">
<? $work_type = \front\factory\Globelus::work_types(); echo $work_type[ $advert['work_type'] ];?>
<div class="_text">
<? $work_type = \front\factory\Globelus::work_types();
echo $work_type[$advert['work_type']]; ?>
</div>
<? endif;?>
<? if ( $advert['without_experience'] ):?>
<div class="icon small">
<img src="/layout/images/oferta-doswiadczenie-gray.svg">
<?= \S::lang( 'bez-doswiadczenia' );?>
</div>
<? endif; ?>
<? if ($advert['without_experience']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-case.svg">
</div>
<? endif;?>
<? if ( $advert['without_language'] ):?>
<div class="icon">
<img src="/layout/images/bez-znajomosci-jezyka-gray.svg">
<?= \S::lang( 'bez-znajomosci-jezyka' );?>
<div class="_text">
<?= \S::lang('bez-doswiadczenia'); ?>
</div>
<? endif;?>
<? if ( $advert['for_couples'] ):?>
<div class="icon small">
<img src="/layout/images/oferta-dla-par-gray.svg">
<?= \S::lang( 'dla-par' );?>
</div>
<? endif; ?>
<? if ($advert['without_language']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-lang.svg">
</div>
<? endif;?>
<? if ( $advert['outside_ue'] ):?>
<div class="icon small">
<img src="/layout/images/ue-gray.svg">
<div class="_text">
<?= \S::lang('bez-znajomosci-jezyka'); ?>
</div>
</div>
<? endif; ?>
<? if ($advert['for_couples']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-couple.svg">
</div>
<div class="_text">
<?= \S::lang('dla-par'); ?>
</div>
</div>
<? endif; ?>
<? if ($advert['outside_ue']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-ue.svg">
</div>
<div class="_text">
dla obywateli spoza UE
</div>
<? endif;?>
<? if ( $advert['without_driving_license'] ):?>
<div class="icon small">
<img src="/layout/images/prawojazdy-gray.svg">
</div>
<? endif; ?>
<? if ($advert['without_driving_license']) : ?>
<div class="_content">
<div class="_icon">
<img src="/images/icon-car.svg">
</div>
<div class="_text">
bez prawa jazdy
</div>
<? endif;?>
</div>
</div>
<? endif; ?>
</div>
<div class="text-right">
<a href="/oferta/<?= $advert['id'];?>/<?= \S::seo( $advert['title'], true );?>" class="btn btn-success"><?= $lang['szczegoly-oferty'];?></a>

View File

@@ -1,16 +1,16 @@
<? global $lang;?>
<div class="mini-buttons" id="buttons">
<a href="/panel-pracodawcy/profil" class="btn <?= $this -> active == 'moj-profil' ? 'active' : '';?>">
<?= $lang['moj-profil'];?>
profil pracodawcy
</a>
<a href="/panel-pracodawcy/ogloszenia" class="btn <?= $this -> active == 'ogloszenia' ? 'active' : '';?>">
<?= $lang['ogloszenia'];?>
Twoje oferty pracy
</a>
<a href="/panel-pracodawcy/odpowiedzi-na-ogloszenia" class="btn <?= $this -> active == 'cv' ? 'active' : '';?>">
CV
aplikacje
</a>
<a href="/panel-pracodawcy/proponowani-kandydaci" class="btn btn-red <?= $this -> active == 'proponowani-kandydaci' ? 'active' : '';?>">
proponowani kandydaci
<a href="/panel-pracodawcy/proponowani-kandydaci" class="btn <?= $this -> active == 'proponowani-kandydaci' ? 'active' : '';?>">
potencjalni kandydaci
</a>
<a href="/panel-pracodawcy/obserwowani-kandydaci" class="btn <?= $this -> active == 'obserwowani-kandydaci' ? 'active' : '';?>" style="display:none;">
<?= $lang['obserwowani-kandydaci'];?>

View File

@@ -253,7 +253,9 @@
Zdjęcie nad ogłoszeniem
<br>
<span>
<small>Ważna informacja: jeśli chcesz, aby ta grafika była widoczna jednocześnie we wszystkich ogłoszeniach publikowanych z tego profilu dodaj ją w Profilu Pracodawcy.</small>
<small>
<strong>Uwaga! Jest to grafika dodatkowa, NIE logo, jeśli chcesz, aby ta grafika była widoczna jednocześnie we wszystkich Twoich ogłoszeniach dodaj ją w Profilu Pracodawcy. Zalecany rozmiar 730px x 200px.</strong>
</small>
</span>
</div>
<div class="row">
@@ -267,9 +269,11 @@
</div>
<div class="col-12 col-md-6">
<div class="advert-img-top">
<? if (file_exists(\front\factory\GlobelusFirms::advert_add_img_top_url($this->advert['id']))) :?>
<? if ( file_exists(\front\factory\GlobelusFirms::advert_add_img_top_url($this->advert['id']))) :?>
<img src="/advert_add_img_top/<?= $this->advert['id']; ?>/<?= \S::get_token(); ?>" style="max-width: 200px;">
<a class="btn btn-danger advert-img-top_delete" href="#">Usuń zdjęcie</a>
<? elseif ( file_exists(\front\factory\GlobelusFirms::img_top_url( $this -> user['id'] ) ) ):?>
<img src="/img_header/<?= $this-> user['id'];?>/<?= \S::get_token();?>" style="max-width: 200px;">
<? endif; ?>
</div>
</div>
@@ -280,7 +284,9 @@
Zdjęcie pod ogłoszeniem
<br>
<span>
<small>Ważna informacja: jeśli chcesz, aby ta grafika była widoczna jednocześnie we wszystkich ogłoszeniach publikowanych z tego profilu dodaj ją w Profilu Pracodawcy.</small>
<small>
<strong>Uwaga! Jest to grafika dodatkowa, NIE logo, jeśli chcesz, aby ta grafika była widoczna jednocześnie we wszystkich Twoich ogłoszeniach dodaj ją w Profilu Pracodawcy. Zalecany rozmiar 730px x 200px.</strong>
</small>
</span>
</div>
<div class="row">
@@ -297,6 +303,8 @@
<? if (file_exists(\front\factory\GlobelusFirms::advert_add_img_bottom_url($this->advert['id']))) :?>
<img src="/advert_add_img_bottom/<?= $this->advert['id']; ?>/<?= \S::get_token(); ?>" style="max-width: 200px;">
<a class="btn btn-danger advert-img-bottom_delete" href="#">Usuń zdjęcie</a>
<? elseif (file_exists(\front\factory\GlobelusFirms::img_bottom_url($this->user['id']))) :?>
<img src="/img_bottom/<?= $this->user['id']; ?>/<?= \S::get_token(); ?>" style="max-width: 200px;">
<? endif; ?>
</div>
</div>
@@ -356,38 +364,6 @@
</div>
</div>
</div>
<div class="col-12 col-md-6">
<div class="row">
<div class="col-12">
<div class="form-group row">
<label form="contact_person2" class="col-12 col-sm-4"><?= ucfirst($lang['osoba-do-kontaktu']); ?>:</label>
<div class="col-12 col-sm-8">
<input type="text" class="form-control" name="contact_person2" value="<?= $this->advert['id'] ? htmlspecialchars($this->advert['contact_person2']) : htmlspecialchars($this->user['contact_person_2']); ?>">
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="form-group row">
<label form="email2" class="col-12 col-sm-4"><?= ucfirst($lang['email']); ?>:</label>
<div class="col-12 col-sm-8">
<input type="text" class="form-control" name="email2" value="<?= $this->advert['id'] ? htmlspecialchars($this->advert['email2']) : htmlspecialchars($this->user['email_2']); ?>">
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="form-group row">
<label form="phone2" class="col-12 col-sm-4"><?= ucfirst($lang['telefon']); ?>:</label>
<div class="col-12 col-sm-8">
<input type="text" class="form-control" name="phone2" value="<?= $this->advert['id'] ? htmlspecialchars($this->advert['phone2']) : htmlspecialchars($this->user['phone_2']); ?>">
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12 col-md-6">
@@ -453,31 +429,125 @@
});
$('body').on('submit', '#advert-add', function(e) {
var text = $("#text").summernote('code');
e.preventDefault();
if (document.activeElement) {
document.activeElement.blur();
}
var text = $('#text').summernote('code');
text = text.replace(/(<([^>]+)>)/ig, '');
text = text.replace(/&nbsp;/g, '');
if ($.trim(text) === '') {
$('#text').parent('.col-12').children('.note-editor').addClass('error');
$('#text').parent('.col-12').children('.editor-error').removeClass('hidden');
$('html, body').animate({
scrollTop: $('#text').parent('.col-12').children('.note-editor').offset().top
scrollTop: $('#text').parent('.col-12').children('.note-editor').offset().top - 100
}, 100);
e.preventDefault();
return;
} else {
$('#text').parent('.col-12').children('.note-editor').removeClass('error');
$('#text').parent('.col-12').children('.editor-error').addClass('hidden');
}
var work_type = $( 'select[name="work_type"]' ).val();
if ( work_type == 0 )
{
$( 'select[name="work_type"]' ).addClass( 'error' );
$( 'select[name="work_type"]' ).focus();
e.preventDefault();
var work_type = $('select[name="work_type"]').val();
if (work_type == 0) {
$('select[name="work_type"]').addClass('error').focus();
return;
} else {
$('select[name="work_type"]').removeClass('error');
}
else
{
$( 'select[name="work_type"]' ).removeClass( 'error' );
const headerInput = $('#advert-img-top')[0];
const bottomInput = $('#advert-img-bottom')[0];
const imageChecks = [];
if (headerInput && headerInput.files && headerInput.files.length) {
imageChecks.push(getImageSize(headerInput.files[0]).then(size => {
if (!isValidRatio(size)) {
throw new Error('header');
}
}));
}
if (bottomInput && bottomInput.files && bottomInput.files.length) {
imageChecks.push(getImageSize(bottomInput.files[0]).then(size => {
if (!isValidRatio(size)) {
throw new Error('bottom');
}
}));
}
Promise.allSettled(imageChecks).then(results => {
const rejected = results.find(r => r.status === 'rejected');
if (rejected) {
let scrollTarget;
let label;
if (rejected.reason.message === 'header') {
scrollTarget = $('#advert-img-top');
label = 'górny';
} else if (rejected.reason.message === 'bottom') {
scrollTarget = $('#advert-img-bottom');
label = 'dolny';
}
if (scrollTarget && scrollTarget.length) {
$('html, body').animate({
scrollTop: scrollTarget.offset().top - 100
}, 200);
}
showAlert(`Obrazek ${label} ma nieprawidłowe proporcje. Dozwolony zakres to 2.66:1 do 8:1.`);
return;
}
e.target.submit();
});
function isValidRatio({ width, height }) {
const ratio = width / height;
return ratio >= 2.6667 && ratio <= 8.0;
}
function getImageSize(file) {
return new Promise((resolve, reject) => {
const img = new Image();
img.onload = function () {
resolve({ width: this.naturalWidth, height: this.naturalHeight });
};
img.onerror = () => reject(new Error('invalid-image'));
const reader = new FileReader();
reader.onload = function (e) {
img.src = e.target.result;
};
reader.readAsDataURL(file);
});
}
function showAlert(message) {
$.alert({
title: 'Błąd',
icon: 'fa fa-exclamation',
content: message,
type: 'blue',
closeIcon: true,
closeIconClass: 'fa fa-close',
typeAnimated: true,
animation: 'opacity',
autoClose: 'confirm|10000',
columnClass: 'large',
theme: 'modern',
buttons: {
confirm: {
text: 'Zamknij',
btnClass: 'btn-blue',
keys: ['enter'],
action: function () {}
}
}
});
}
});

View File

@@ -16,7 +16,7 @@
] );?>
<div class="mini-box fluid">
<div class="title">
<?= ucfirst( $lang['moje-ogloszenia'] );?>
Twoje oferty pracy
<span class="pull-right text-danger small">
Posiadasz <?= (int)$this -> firm_points;?> pkt. <a href="/panel-pracodawcy/zakup-punktow">Doładuj konto.</a>
</span>
@@ -147,7 +147,7 @@
'td' => [ 'class' => 'g-center' ],
'db' => 'answers',
'sort' => true,
'php' => 'echo "<a href=\'/panel-pracodawcy/odpowiedzi/[id]\' class=\'btn"; if ( [answers_nondisplayed] ) echo " btn-danger "; else echo " btn-gray "; echo "pull-right\'>[answers]</a>"; '
'php' => 'echo "<a href=\'/panel-pracodawcy/odpowiedzi/[id]\' class=\'"; if ( [answers_nondisplayed] ) echo " btn-danger "; else echo " btn-gray "; echo "\'>[answers]</a>"; '
], [
'name' => 'Widoczne',
'db' => 'visible',
@@ -256,8 +256,6 @@
. 'echo "<span class=\'container-tooltip\' data-tippy-content=\'" . $title4 . "\'>" '
. '. "<a href=\'#\' class=\'advert_highlight btn btn-primary btn-sm " . $class4 . "\' advert-id=\'[id]\'>dodatkowa promocja</a>" '
. '. "</span>"; '
. 'else '
. 'echo "<a href=\'#\' class=\'advert-additional-promotion btn btn-primary btn-sm\' advert-id=\'[id]\'>dodatkowa promocja</a>"; '
//wyróżnienie - sprawdzanie czy ogłoszenie jest opublikowane
. 'if ( [disabled_by_admin] ) { '
@@ -324,24 +322,22 @@
. 'echo "<a href=\'#\' class=\'advert_main_page btn btn-primary btn-sm\' advert-id=\'[id]\'>włącz polecenie</a>"; '
. 'if ( ![disabled_by_admin] ) { '
. 'if ( \'[active_to]\' >= date( \'Y-m-d\' ) ) { '
. 'if ( [visible] ) '
. 'echo "<a href=\'#\' class=\'btn btn-sm btn-primary advert-disable\' advert-id=\'[id]\'>wyłącz ogłoszenie</a>"; '
. 'else { '
//sprawdzenie ile ktoś ma ogłoszeń
. 'if ( ' . $this -> adverts_count . ' >= ' . $globelus_settings['limit-ogloszen'] . ' ) { '
. 'if ( ' . $this -> firm_points . ' < ' . $globelus_settings['pkt-dodanie-ogloszenia-powyzej-limitu'] . ' ) { '
. 'echo "<span class=\'container-tooltip\' data-tippy-content=\'Niestety posiadasz zbyt mało punktów aby opublikować nowe ogłoszenie.\'>" '
. '. "<a href=\'#\' class=\'advert-public btn btn-primary btn-sm btn-disabled\' advert-id=\'[id]\'>publikuj</a>" '
. '. "</span>"; '
. '} else { '
. 'echo "<a href=\'#\' class=\'btn btn-sm btn-primary advert-public\' advert-id=\'[id]\'>publikuj</a>"; '
. '} '
. '} '
. 'else {'
. 'if ( [visible] ) '
. 'echo "<a href=\'#\' class=\'btn btn-sm btn-primary advert-disable\' advert-id=\'[id]\'>wyłącz ogłoszenie</a>"; '
. 'else { '
//sprawdzenie ile ktoś ma ogłoszeń
. 'if ( ' . $this -> adverts_count . ' >= ' . $globelus_settings['limit-ogloszen'] . ' ) { '
. 'if ( ' . $this -> firm_points . ' < ' . $globelus_settings['pkt-dodanie-ogloszenia-powyzej-limitu'] . ' ) { '
. 'echo "<span class=\'container-tooltip\' data-tippy-content=\'Niestety posiadasz zbyt mało punktów aby opublikować nowe ogłoszenie.\'>" '
. '. "<a href=\'#\' class=\'advert-public btn btn-primary btn-sm btn-disabled\' advert-id=\'[id]\'>publikuj</a>" '
. '. "</span>"; '
. '} else { '
. 'echo "<a href=\'#\' class=\'btn btn-sm btn-primary advert-public\' advert-id=\'[id]\'>publikuj</a>"; '
. '} '
. '} '
. 'else {'
. 'echo "<a href=\'#\' class=\'btn btn-sm btn-primary advert-public\' advert-id=\'[id]\'>publikuj</a>"; '
. '} '
. '} '
. 'echo \'<a href="/panel-pracodawcy/edytuj-ogloszenie/[id]" class="btn btn-sm btn-primary advert-edit" title="edytuj" style="font-size: 12px;">edytuj</a>\';'
. '} '
@@ -357,6 +353,10 @@
'class' => 'btn-danger multi-delete',
'label' => 'Usuń',
'url' => '/globelusFirms/multi_delete/'
], [
'class' => 'btn-primary multi-refresh',
'label' => 'Odśwież',
'url' => '/globelusFirms/multi_refresh/'
]
];
echo $grid -> draw();
@@ -371,48 +371,20 @@
<script class="footer" src="/libraries/framework/vendor/plugins/datatables/media/js/jquery.dataTables.js"></script>
<script class="footer" src="/libraries/framework/vendor/plugins/datatables/media/js/dataTables.bootstrap.js"></script>
<script class="footer" type="text/javascript">
function odmiana_slowa_ogloszenie( liczba )
{
var slowo = 'ogłoszenie';
if ( liczba == 1 ) return slowo;
if ( liczba > 1 && liczba < 5 ) return 'ogłoszenia';
if ( liczba >= 5 ) return 'ogłoszeń';
}
$( function()
{
tippy('[data-tippy-content]', {
theme: 'material'
});
$( 'body' ).on( click_event, '.advert-additional-promotion', function(e)
{
e.preventDefault();
var advert_id = $( this ).attr( 'advert-id' );
$.alert(
{
title: 'Dodatkowa promocja ogłoszenia',
icon: 'fa fa-exclamation',
content: 'Dodatkowa promocja ogłoszenia kosztuje <b><?= $globelus_settings['pkt-dodatkowa-promocja-ogloszenia'];?> punktów<\/b>, zostaną one pobrane z Twojego konta.',
closeIcon: true,
closeIconClass: 'fa fa-close',
typeAnimated: true,
animation: 'opacity',
columnClass: 'large',
theme: 'modern',
buttons:
{
cancel:
{
text: '<?= $lang['anuluj'];?>',
action: function() {}
},
confirm:
{
text: '<?= $lang['zatwierdz'];?>',
btnClass: 'btn-blue',
keys: ['enter'],
action: function()
{
document.location.href='/globelusFirms/advert_additional_promotion/advert-id=' + advert_id;
}
}
}
});
});
$( 'body' ).on( click_event, '.advert_highlight', function(e)
{
e.preventDefault();
@@ -485,6 +457,56 @@
});
});
$( 'body' ).on( click_event, '.multi-refresh', function(e)
{
e.preventDefault();
var ids = getCheckedIds( 'ogloszenia-<?= $this -> user['id'];?>' );
var points = <?= $globelus_settings['pkt-odswiezenie-ogloszenia'];?> * ids.length;
var href = $( this ).attr( 'href' );
$.alert(
{
title: 'Odświeżenie ogłoszeń',
icon: 'fa fa-exclamation',
content: 'Odświeżasz ' + ids.length + ' ' + odmiana_slowa_ogloszenie( ids.length ) + '. Z Twojego konta zostanie pobrane <b>' + points + ' punktów<\/b>.',
closeIcon: true,
closeIconClass: 'fa fa-close',
typeAnimated: true,
animation: 'opacity',
columnClass: 'large',
theme: 'modern',
buttons:
{
cancel:
{
text: '<?= $lang['anuluj'];?>',
action: function() {}
},
confirm:
{
text: '<?= $lang['zatwierdz'];?>',
btnClass: 'btn-blue',
keys: ['enter'],
action: function()
{
$.ajax({
type: 'POST',
cache: false,
url: href,
data: {
ids: ids
},
beforeSend: function() {},
success: function( data ) {
document.location.reload();
}
});
}
}
}
});
});
$( 'body' ).on( click_event, '.multi-delete', function(e)
{
var ids = getCheckedIds( 'ogloszenia-<?= $this -> user['id'];?>' );

View File

@@ -5,7 +5,7 @@
] );?>
<div class="mini-box fluid">
<div class="title">
Lista CV
Aplikacje na Twoje oferty pracy
</div>
</div>
<? if ( is_array( $this -> answers ) and count( $this -> answers ) ):?>

View File

@@ -13,86 +13,117 @@
<? if ( !$this -> user['profile_completed'] ):?>
<div class="alert alert-danger">Aby doładować konto musisz uzupełnić Swój profil. <a href="/panel-pracodawcy/profil">Przejdź do profilu</a>.</div>
<? else:?>
<div class="subtitle">
Wybierz jeden z dostępnych pakietów i zwiększ ilość posiadanych punktów.
</div>
<div class="row">
<div class="col-lg-5">
<div class="col-12">
<div class="subtitle" style="margin-bottom: 32px;">
Wybierz jeden z dostępnych pakietów i zwiększ ilość posiadanych punktów.
</div>
<div class="row">
<div class="col-12 points-prices">
<div class="content">
<div class="row">
<div class="col-12">
<a href="/panel-pracodawcy/zakup-punktow/pakiet=2"><strong><?= $this -> gsettings['pkt-pakiet-2-ilosc'];?></strong> punktów za <strong><?= number_format( $this -> gsettings['pkt-pakiet-2-cena'], 2, ',', ' ' );?></strong> zł</a>
<div class="col-12">
<div class="points_prices">
<div class="_row">
<div class="_column _header">
Pakiet
</div>
<div class="_column _header _center">
Punkty
</div>
<div class="_column _header _center">
Cena (zł)
</div>
<div class="_column _header">
Bonus (zysk Klienta)
</div>
</div>
</div>
</div>
<div class="col-12 points-prices">
<div class="content">
<div class="row">
<div class="col-12">
<a href="/panel-pracodawcy/zakup-punktow/pakiet=3"><strong><?= $this -> gsettings['pkt-pakiet-3-ilosc'];?></strong> punktów za <strong><?= number_format( $this -> gsettings['pkt-pakiet-3-cena'], 2, ',', ' ' );?></strong> zł</a>
<div class="_row" onclick="location.href='/panel-pracodawcy/zakup-punktow/pakiet=1'">
<div class="_column">
MINI
</div>
<div class="_column _center">
<?= $this -> gsettings['pkt-pakiet-1-ilosc'];?>
</div>
<div class="_column _center">
<?= number_format( $this -> gsettings['pkt-pakiet-1-cena'], 2, ',', ' ' );?> zł
</div>
<div class="_column">
-
</div>
</div>
</div>
</div>
<div class="col-12 points-prices">
<div class="content">
<div class="row">
<div class="col-12">
<a href="/panel-pracodawcy/zakup-punktow/pakiet=4"><strong><?= $this -> gsettings['pkt-pakiet-4-ilosc'];?></strong> punktów za <strong><?= number_format( $this -> gsettings['pkt-pakiet-4-cena'], 2, ',', ' ' );?></strong> zł</a>
<!-- pakiet basic -->
<div class="_row" onclick="location.href='/panel-pracodawcy/zakup-punktow/pakiet=2'">
<div class="_column">
BASIC
</div>
<div class="_column _center">
<?= $this -> gsettings['pkt-pakiet-2-ilosc'];?>
</div>
<div class="_column _center">
<?= number_format( $this -> gsettings['pkt-pakiet-2-cena'], 2, ',', ' ' );?> zł
</div>
<div class="_column">
+10 zł / 10 pkt gratis
</div>
</div>
</div>
</div>
<div class="col-12 points-prices">
<div class="content">
<div class="row">
<div class="col-12">
<a href="/panel-pracodawcy/zakup-punktow/pakiet=5"><strong><?= $this -> gsettings['pkt-pakiet-5-ilosc'];?></strong> punktów za <strong><?= number_format( $this -> gsettings['pkt-pakiet-5-cena'], 2, ',', ' ' );?></strong> zł</a>
<!-- pakiet pro -->
<div class="_row" onclick="location.href='/panel-pracodawcy/zakup-punktow/pakiet=3'">
<div class="_column">
PRO - <span>Najpopularniejszy!</span>
</div>
<div class="_column _center">
<?= $this -> gsettings['pkt-pakiet-3-ilosc'];?>
</div>
<div class="_column _center">
<?= number_format( $this -> gsettings['pkt-pakiet-3-cena'], 2, ',', ' ' );?> zł
</div>
<div class="_column">
+30 zł / 30 pkt gratis
</div>
</div>
</div>
</div>
<div class="col-12 points-prices">
<div class="content">
<div class="row">
<div class="col-12">
<a href="/panel-pracodawcy/zakup-punktow/pakiet=6"><strong><?= $this -> gsettings['pkt-pakiet-6-ilosc'];?></strong> punktów za <strong><?= number_format( $this -> gsettings['pkt-pakiet-6-cena'], 2, ',', ' ' );?></strong> zł</a>
<!-- pakiet premium -->
<div class="_row" onclick="location.href='/panel-pracodawcy/zakup-punktow/pakiet=4'">
<div class="_column">
PREMIUM - <span>+70 zł gratis!</span>
</div>
<div class="_column _center">
<?= $this -> gsettings['pkt-pakiet-4-ilosc'];?>
</div>
<div class="_column _center">
<?= number_format( $this -> gsettings['pkt-pakiet-4-cena'], 2, ',', ' ' );?> zł
</div>
<div class="_column">
+70 zł / 70 pkt gratis
</div>
</div>
</div>
</div>
<div class="col-12 points-prices">
<div class="content">
<div class="row">
<div class="col-12">
<a href="/panel-pracodawcy/zakup-punktow/pakiet=7"><strong><?= $this -> gsettings['pkt-pakiet-7-ilosc'];?></strong> punktów za <strong><?= number_format( $this -> gsettings['pkt-pakiet-7-cena'], 2, ',', ' ' );?></strong> zł</a>
<!-- pakiet vip -->
<div class="_row" onclick="location.href='/panel-pracodawcy/zakup-punktow/pakiet=5'">
<div class="_column">
VIP - <span>Najlepszy stosunek cena/jakość!</span>
</div>
</div>
</div>
</div>
<div class="col-12 points-prices">
<div class="content">
<div class="row">
<div class="col-12">
<a href="/panel-pracodawcy/zakup-punktow/pakiet=8"><strong><?= $this -> gsettings['pkt-pakiet-8-ilosc'];?></strong> punktów za <strong><?= number_format( $this -> gsettings['pkt-pakiet-8-cena'], 2, ',', ' ' );?></strong> zł</a>
<div class="_column _center">
<?= $this -> gsettings['pkt-pakiet-5-ilosc'];?>
</div>
<div class="_column _center">
<?= number_format( $this -> gsettings['pkt-pakiet-5-cena'], 2, ',', ' ' );?> zł
</div>
<div class="_column">
+180 zł / 180 pkt gratis
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-7 lg-hm">
<?=\front\view\Scontainers::scontainer( 6 );?>
</div>
</div>
<? endif;?>
<div class="row">
<div class="col-12">
<?=\front\view\Scontainers::scontainer( 5 );?>
</div>
</div>
</div>
<div class="mini-box fluid mt25">
<?=\front\view\Scontainers::scontainer( 6 );?>
</div>
<div class="mini-box fluid mt25">
<div class="row">
<div class="col-12">
<?=\front\view\Scontainers::scontainer( 5 );?>
</div>
</div>
</div>

View File

@@ -11,7 +11,7 @@
<div class="row">
<div class="col-12">
<div class="content profil">
<form method="POST" action="/globelusFirms/data_save/" enctype="multipart/form-data">
<form method="POST" action="/globelusFirms/data_save/" enctype="multipart/form-data" id="profile_edit">
<div class="step-title">
<?= $lang['pracodawca-profil-krok-1-opis']; ?>
</div>
@@ -164,8 +164,8 @@
</div>
<hr />
<div class="step-title">
Zdjęcie nad ogłoszeniem<br>
<p><span><small>Ważna informacja: ta grafika będzie widoczna jednocześnie we wszystkich ogłoszeniach publikowanych z tego profilu i zmienić ją będzie można tylko w Profilu Pracodawcy.</small></span></p>
Zdjęcie nad ogłoszeniem
<p><span><small><strong>Uwaga! Jest to grafika dodatkowa, NIE logo, będzie widoczna automatycznie we wszystkich ogłoszeniach publikowanych z tego profilu, ale w momencie dodawania ogłoszenia będzie można ją zmienić. Zalecany rozmiar 730px x 200px.</strong></small></span></p>
</div>
<div class="row">
<div class="col-12 col-md-6">
@@ -189,7 +189,13 @@
<hr />
<div class="step-title">
Zdjęcie pod ogłoszeniem
<p><span><small>Ważna informacja: ta grafika będzie widoczna jednocześnie we wszystkich ogłoszeniach publikowanych z tego profilu i zmienić ją będzie można tylko w Profilu Pracodawcy.</small></span></p>
<p>
<span>
<small>
<strong>Uwaga! Jest to grafika dodatkowa, NIE logo, będzie widoczna automatycznie we wszystkich ogłoszeniach publikowanych z tego profilu, ale w momencie dodawania ogłoszenia będzie można ją zmienić. Zalecany rozmiar 730px x 200px.</strong>
</small>
</span>
</p>
</div>
<div class="row">
<div class="col-12 col-md-6">
@@ -293,7 +299,7 @@
</div>
</div>
</div>
<hr />
<!-- <hr />
<div class="step-title">
<?= \S::lang('klauzula'); ?>
<p><span><small>Ważna informacja: klauzula będzie widoczna jednocześnie we wszystkich ogłoszeniach publikowanych z tego profilu i zmienić ją będzie można tylko w Profilu Pracodawcy.</small></span></p>
@@ -303,7 +309,7 @@
<div class="col-12">
<textarea name="clauses" id="clauses"><?= $this->g_user['clauses']; ?></textarea>
</div>
</div>
</div> -->
<div class="row">
<div class="col-12 col-md-6">
<div class="form-group row">
@@ -330,6 +336,100 @@
<script class="footer" type="text/javascript" src="/libraries/framework/vendor/plugins/datepicker/js/bootstrap-datetimepicker.js"></script>
<script class="footer" type="text/javascript" src="/plugins/selectize/js/selectize.js"></script>
<script class="footer" type="text/javascript">
// Sprawdzanie proporcji width / height
function isValidRatio({ width, height }) {
const ratio = width / height;
return ratio >= 2.6667 && ratio <= 8.0;
}
function getImageSize(file) {
return new Promise((resolve, reject) => {
const img = new Image();
img.onload = function () {
resolve({ width: this.naturalWidth, height: this.naturalHeight });
};
img.onerror = reject;
const reader = new FileReader();
reader.onload = function (e) {
img.src = e.target.result;
};
reader.readAsDataURL(file);
});
}
function showAlert(message) {
$.alert({
title: '<?= ucfirst($lang['blad']); ?>',
icon: 'fa fa-exclamation',
content: message,
type: 'blue',
closeIcon: true,
closeIconClass: 'fa fa-close',
typeAnimated: true,
animation: 'opacity',
autoClose: 'confirm|10000',
columnClass: 'large',
theme: 'modern',
buttons: {
confirm: {
text: '<?= $lang['zamknij']; ?>',
btnClass: 'btn-blue',
keys: ['enter'],
action: function () {}
}
}
});
}
$('body').on('submit', '#profile_edit', function(e) {
e.preventDefault();
const logoInput = $('#logo')[0];
const headerInput = $('#img-header')[0];
const bottomInput = $('#img-bottom')[0];
if (
logoInput &&
logoInput.files &&
logoInput.files.length &&
logoInput.files[0].size >= 125000
) {
showAlert('<?= $lang['plik-logo-jest-zbyt-duzy']; ?>');
return;
}
const imageChecks = [];
if (headerInput && headerInput.files && headerInput.files.length) {
imageChecks.push(getImageSize(headerInput.files[0]).then(size => {
if (!isValidRatio(size)) {
throw new Error('header');
}
}));
}
if (bottomInput && bottomInput.files && bottomInput.files.length) {
imageChecks.push(getImageSize(bottomInput.files[0]).then(size => {
if (!isValidRatio(size)) {
throw new Error('bottom');
}
}));
}
Promise.allSettled(imageChecks).then(results => {
const hasError = results.some(r => r.status === 'rejected');
if (hasError) {
showAlert( 'Wybrany obraz jest nieprawidłowy. Propoce obrazu muszą mieścić się w przedziale 2.66:1 i 8:1.' );
return;
}
e.target.submit();
});
});
$(function() {
$('#other_information').summernote({
height: 200,
@@ -341,7 +441,7 @@
]
});
$('#text, #clauses').summernote({
$('#text').summernote({
height: 200,
lang: 'pl-PL',
toolbar: [
@@ -355,33 +455,6 @@
]
});
$('body').on('submit', '#user-panel form', function(e) {
if ($("#user-panel form #logo")[0].files.length && !($('#user-panel form #logo')[0].files[0].size < 125000)) {
e.preventDefault();
$.alert({
title: '<?= ucfirst($lang['blad']); ?>',
icon: 'fa fa-exclamation',
content: '<?= $lang['plik-logo-jest-zbyt-duzy']; ?>',
type: 'blue',
closeIcon: true,
closeIconClass: 'fa fa-close',
typeAnimated: true,
animation: 'opacity',
autoClose: 'confirm|10000',
columnClass: 'large',
theme: 'modern',
buttons: {
confirm: {
text: '<?= $lang['zamknij']; ?>',
btnClass: 'btn-blue',
keys: ['enter'],
action: function() {}
}
}
});
}
});
$('body').on(click_event, '.input-icon .fa', function() {
$(this).parent().children('input').focus();
});
@@ -403,8 +476,8 @@
});
});
/*usuwanie loga */
$( function()
/*usuwanie loga */
$( function()
{
$( 'body' ).on( click_event, '.img_logo_delete', function()
{
@@ -459,7 +532,7 @@
});
/*usuwanie zdjecia header */
$( function()
$( function()
{
$( 'body' ).on( click_event, '.img_header_delete', function()
{
@@ -514,7 +587,7 @@ $( function()
});
/*usuwanie zdjecia bottom */
$( function()
$( function()
{
$( 'body' ).on( click_event, '.img_bottom_delete', function()
{
@@ -567,7 +640,5 @@ $( function()
});
});
});
</script>

View File

@@ -177,7 +177,7 @@
<?= $this -> g_user['other_information'];?>
</div>
</div>
<hr/>
<!--<hr/>
<div class="step-title">
<?= ucfirst( \S::lang( 'klauzula' ) );?>
<p><span><small>Ważna informacja: klauzula będzie widoczna jednocześnie we wszystkich ogłoszeniach publikowanych z tego profilu i zmienić ją będzie można tylko w Profilu Pracodawcy.</small></span></p>
@@ -186,14 +186,20 @@
<div class="col-12">
<?= $this -> g_user['clauses'];?>
</div>
</div>
</div>-->
<?
$img_header_url = \front\factory\GlobelusFirms::img_header_url( $this -> g_user['id'] );
if ( file_exists( $img_header_url ) ):?>
<hr/>
<div class="step-title">
Zdjęcie nad ogłoszeniem
<p><span><small>Ważna informacja: klauzula będzie widoczna jednocześnie we wszystkich ogłoszeniach publikowanych z tego profilu i zmienić ją będzie można tylko w Profilu Pracodawcy.</small></span></p>
<p>
<span>
<small>
<strong>Uwaga! Jest to grafika dodatkowa, NIE logo, będzie widoczna automatycznie we wszystkich ogłoszeniach publikowanych z tego profilu, ale w momencie dodawania ogłoszenia będzie można ją zmienić. Zalecany rozmiar 730px x 200px.</strong>
</small>
</span>
</p>
</div>
<div class="image_header"><img src="/img_header/<?= $this->g_user['id'];?>/<?= \S::get_token();?>"></div>
<?
@@ -205,7 +211,13 @@
<hr/>
<div class="step-title">
Zdjęcie pod ogłoszeniem
<p><span><small>Ważna informacja: klauzula będzie widoczna jednocześnie we wszystkich ogłoszeniach publikowanych z tego profilu i zmienić ją będzie można tylko w Profilu Pracodawcy.</small></span></p>
<p>
<span>
<small>
<strong>Uwaga! Jest to grafika dodatkowa, NIE logo, będzie widoczna automatycznie we wszystkich ogłoszeniach publikowanych z tego profilu, ale w momencie dodawania ogłoszenia będzie można ją zmienić. Zalecany rozmiar 730px x 200px.</strong>
</small>
</span>
</p>
</div>
<div class="image_bottom"><img src="/img_bottom/<?= $this->g_user['id'];?>/<?= \S::get_token();?>"></div>
<?

View File

@@ -4,18 +4,10 @@
<?= \Tpl::view( 'globelus/firms/_partials/menu', [
'active' => 'proponowani-kandydaci'
] );?>
<!--<div class="form-group row">
<label form="sex" class="col-12" style="text-align: left;">Wybierz ogłoszenie:</label>
<div class="col-12">
<select class="form-control" onchange="document.location.href='/panel-pracodawcy/proponowani-kandydaci?aid=' + $( this ).val();">
<option value="0">--- wszystkie ogłoszenia ---</option>
<? foreach ( $this -> adverts as $advert ):?>
<option value="<?= $advert['id'];?>" <? if ( $this -> current_advert == $advert['id'] ):?>selected="selected"<? endif;?>><?= $advert['title'];?></option>
<? endforeach;?>
</select>
</div>
</div>-->
<div class="mini-box fluid">
<div class="mini-box fluid mb15">
<div class="title">Potencjalni kandydaci</div>
</div>
<div class="mini-box fluid" style="background: none; padding: 0;">
<?
if ( is_array( $this -> candidates ) and count( $this -> candidates ) ):
foreach ( $this -> candidates as $candidate_id ):

View File

@@ -1,5 +1,5 @@
<div id="mini-banners">
<a href="/oferty-pracy/polska?filtr=t&k=&c2%5B%5D=1&t=3&wt=0" class="banner banner-01">
<a href="/oferty-pracy/polska/od-zaraz" class="banner banner-01">
<div class="img">
<img src="/upload/filemanager/mini-baner-01.png" alt="">
</div>
@@ -7,7 +7,7 @@
<h2>Najnowsze <strong>oferty pracy</strong> w Polsce</h2>
</div>
</a>
<a href="/oferty-pracy/dowolny-zagranica?filtr=t&k=&c2%5B%5D=77&t=3&wt=0" class="banner banner-02">
<a href="/oferty-pracy?filtr=t&k=&c2%5B%5D=77&t=0" class="banner banner-02">
<div class="text">
<h2>Najnowsze <strong>oferty pracy</strong> za granicą</h2>
</div>
@@ -15,7 +15,7 @@
<img src="/upload/filemanager/mini-baner-04.png" alt="">
</div>
</a>
<a href="/oferty-pracy/zagranica?filtr=t&k=&c2%5B%5D=77&t=3&wt=0&we=on" class="banner banner-03">
<a href="/oferty-pracy?filtr=t&k=&c2%5B%5D=77&t=0&we=on" class="banner banner-03">
<div class="img">
<img src="/upload/filemanager/mini-baner-03.png" alt="">
</div>
@@ -23,7 +23,7 @@
<h2>Oferty pracy<br /><strong>za granicą</strong> bez doświadczenia</h2>
</div>
</a>
<a href="/oferty-pracy/zagranica?filtr=t&k=&c2%5B%5D=77&t=3&wt=0&wl=on" class="banner banner-04">
<a href="/oferty-pracy?filtr=t&k=&c2%5B%5D=77&t=0&wl=on" class="banner banner-04">
<div class="text">
<h2>Oferty pracy<br /><strong>za granicą</strong> bez znajomości języka</h2>
</div>

View File

@@ -1,6 +1,9 @@
<?
global $lang;
$countries = \front\factory\Globelus::countries();
$countries_visible = [
'- dowolny -', 'Austria', 'Belgia', 'Czechy', 'Dania', 'Finlandia', 'Francja', 'Holandia', 'Niemcy', 'Norwegia', 'Polska', 'Szwajcaria', 'Szwecja'
]
?>
<form method="GET" action="/oferty-pracy" id="simple-search">
<input type="hidden" name="filtr" value="true">
@@ -8,6 +11,7 @@
<input type="text" name="k" class="form-control" value="" placeholder="słowo kluczowe, stanowisko, miasto, pracodawca">
<select name="c2[]">
<? foreach ( $countries as $country ):?>
<? if ( !in_array( $country['name'], $countries_visible ) ) continue;?>
<option value="<?= $country['id']; ?>"><?= $country['name'];?></option>
<? endforeach;?>
</select>

View File

@@ -0,0 +1,84 @@
<? global $lang;?>
<div id="user-login">
<div class="mini-box">
<div class="title">Ustaw nowe hasło</div>
<div class="subtitle">Wpisz nowe hasło do Swojego konta (min. 6 znaków)</div>
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="content user">
<form method="POST" action="/globelusUser/save_new_password/">
<input type="hidden" name="hash" value="<?= $this -> hash;?>">
<div class="form-group row">
<label form="password" class="col-12 col-sm-4">Hasło:</label>
<div class="col-12 col-sm-8">
<input type="password" name="password" required id="password" class="form-control">
</div>
</div>
<div class="form-group row">
<label form="password_retype" class="col-12 col-sm-4">Powtórz hasło:</label>
<div class="col-12 col-sm-8">
<input type="password" name="password_retype" required id="password_retype" class="form-control">
</div>
</div>
<div class="form-group row">
<div class="col-12 col-sm-8 offset-sm-4">
<input type="submit" value="Zatwierdź" class="btn btn-success">
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
$( function() {
$( 'body' ).on( 'click', '#user-login input[type="submit"]', function( e ) {
e.preventDefault();
var form = $( this ).closest( 'form' );
var password = form.find( '#password' ).val();
var password_retype = form.find( '#password_retype' ).val();
var alert_text = '';
if ( password != password_retype ) {
var alert_text = 'Hasła nie są takie same!';
}
if ( password.length < 6 ) {
var alert_text = 'Hasło musi mieć min. 6 znaków!';
}
if ( !form.find( '#password' ).val() ) {
var alert_text = 'Hasło nie może być puste!';
}
if ( alert_text ) {
$.alert({
title: '<?= ucfirst( $lang['informacja'] );?>',
icon: 'fa fa-exclamation',
content: alert_text,
type: 'blue',
closeIcon: true,
closeIconClass: 'fa fa-close',
typeAnimated: true,
animation: 'opacity',
autoClose: 'confirm|10000',
columnClass: 'large',
theme: 'modern',
buttons: {
confirm: {
text: 'Zamknij',
btnClass: 'btn-blue',
keys: ['enter'],
action: function() {
}
}
},
onClose: function () {
}
});
return false;
}
form.submit();
} );
});
</script>

View File

@@ -51,7 +51,7 @@ if ( !$accessToken )
</div>
<div class="form-group row agremment">
<div class="col-12 col-sm-8 offset-sm-4">
<input type="checkbox" required id="agremment">
<input type="checkbox" required id="agremment"> *
<?
$text = str_replace( '[LINK-REGULAMIN]', '<a href="/regulamin">' . $lang['regulamin'] . '</a>', $lang['rejestracja-akceptacja-regulaminu'] );
echo $text = str_replace( '[LINK-POLITYKA-PRYWATNOSCI]', '<a href="/polityka-prywatnosci">' . $lang['polityke-prywatnosci'] . '</a>', $text );
@@ -60,7 +60,7 @@ if ( !$accessToken )
</div>
<div class="form-group row agremment-profile">
<div class="col-12 col-sm-8 offset-sm-4">
<input type="checkbox" required id="agremment-profile"> <?= $lang['rejestracja-zgoda-na-wyswietlenie-profilu'];?>
<input type="checkbox" required id="agremment-profile"> * <?= $lang['rejestracja-zgoda-na-wyswietlenie-profilu'];?>
</div>
</div>
<div class="form-group row agremment-marketing">

View File

@@ -305,7 +305,7 @@
</div>
<div class="form-group row agremment-profile">
<div class="col-12">
<input type="checkbox" id="agremment-profile" name="agremment_profile" required > <?= $lang['rejestracja-zgoda-na-wyswietlenie-profilu'];?>
<input type="checkbox" id="agremment-profile" name="agremment_profile" required > * <?= $lang['rejestracja-zgoda-na-wyswietlenie-profilu'];?>
</div>
</div>
<div class="form-group row agremment-marketing">