Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d9bb152863 | |||
| 1e52338d37 | |||
| b701d07741 | |||
| bcd93dee2c |
@@ -195,8 +195,10 @@ Au plaisir d’échanger avec vous,
|
||||
<span class="label label-warning">Entretien programmé</span>
|
||||
{% elseif answer.statusReponse =="A_TRAITER"%}
|
||||
<span class="label label-info">À traiter</span>
|
||||
{% else %}
|
||||
{% elseif answer.statusReponse =="CONTACTE"%}
|
||||
<span class="label">Contacté</span>
|
||||
{% else %}
|
||||
<span class="label label-info">À traiter</span>
|
||||
{% endif %}
|
||||
</td>
|
||||
|
||||
|
||||
@@ -394,7 +394,9 @@
|
||||
console.log(this.value);
|
||||
//competences.push(competence);
|
||||
//on remplace la virgule par un esapce car sinon bug (les compétences sont séparés par une virgule)
|
||||
var chaine = this.value.replace(",", " ");
|
||||
|
||||
var chaine = this.value.replace("'", " ");
|
||||
chaine = chaine.replace(",", " ");
|
||||
//On limite a 10 compétences, au dela, on les enregistre pas dans le champ ad_competences
|
||||
if (nbCompetencesSelect < 11) {
|
||||
competences += chaine + ",";
|
||||
@@ -408,6 +410,7 @@
|
||||
}
|
||||
|
||||
}).get();
|
||||
console.log(competences);
|
||||
// on renseigne le champ ad_competences
|
||||
$("#ad_competences").val(competences);
|
||||
//Gestion des erreurs si aucune compétence
|
||||
@@ -519,7 +522,8 @@
|
||||
suggestion: function (data) {
|
||||
//comment sont formaté les suggestion de l'auto completion
|
||||
$(".tt-dataset-metiers").show();
|
||||
var chaine = data.metier_libelle.replace("'", "\\'");
|
||||
var chaine = data.metier_libelle.replace("'", " ");
|
||||
var chaine = chaine.replace("'", ",");
|
||||
return '<div onclick="chargerDonneesTemp(' + data.metier_id + ',\'' +
|
||||
chaine +
|
||||
'\')" data-toggle="modal" data-target="#competencesModal" id="competences"><a href="#" >' +
|
||||
@@ -594,17 +598,18 @@
|
||||
checked = "checked";
|
||||
}
|
||||
var chaine = object.libelle.replace("'", " ");
|
||||
var chaine = chaine.replace(",", " ");
|
||||
$("#competencesAd").append("<div id='competence_ad_" + object.code +
|
||||
"' name='competences_ad[]'><input type='checkbox' " + checked +
|
||||
" onChange='genererCompetences(this);' id='competence_" + object
|
||||
.code + "' value='" + chaine + "_" + object.code + "'> " + object.libelle +
|
||||
"<br/></div>");
|
||||
chaine = chaine.replace(",", " ");
|
||||
chaine = chaine.replace('"', " ");
|
||||
$("#competencesAd").append('<div id="competence_ad_' + object.code +
|
||||
'" name="competences_ad[]"><input type="checkbox" ' + checked +
|
||||
' onChange="genererCompetences(this);" id="competence_' + object
|
||||
.code + '" value="' + chaine + "_" + object.code + '"> ' + object.libelle +
|
||||
'<br/></div>');
|
||||
|
||||
$("#competencesAdPopup").append("<div id='competence_ad_popup_" + object.code +
|
||||
"'><input type='checkbox' " + checked +
|
||||
" onChange='genererCompetences(this);' id='competencepopup_" + object
|
||||
.code + "' value='" + object.code + "'> " + object.libelle + "<br/></div>");
|
||||
$("#competencesAdPopup").append('<div id="competence_ad_popup_' + object.code +
|
||||
'"><input type="checkbox" ' + checked +
|
||||
' onChange="genererCompetences(this);" id="competencepopup_' + object
|
||||
.code + '" value="' + object.code + '"> ' + object.libelle + '<br/></div>');
|
||||
if (object.competenceCle == false) {
|
||||
$("#competence_ad_" + object.code).hide();
|
||||
}
|
||||
@@ -624,7 +629,7 @@
|
||||
//checked = "checked";
|
||||
//}
|
||||
var chaine = competence.libelle.replace("'", " ");
|
||||
var chaine = chaine.replace(",", " ");
|
||||
chaine = chaine.replace(",", " ");
|
||||
$("#competencesAd").append("<div id='competence_ad_" + competence.code +
|
||||
"' name='competences_ad[]'><input type='checkbox' " + checked +
|
||||
" onChange='genererCompetences(this);' id='competence_" +
|
||||
|
||||
@@ -42,6 +42,9 @@
|
||||
<div class="col-xl-10 col-sm-12">
|
||||
{% if answer.ad%}
|
||||
<h5> <a href="{{ path('company_ad_answer_list',{'id':answer.ad.id}) }}">{{ answer.ad.title }}</a></h5>
|
||||
{% else %}
|
||||
|
||||
<h5><a href="{{ path('company_answer_list') }}">Candidature spontanée</a></h5>
|
||||
{% endif %}
|
||||
<h6>Candidature reçue le {{ answer.cTime|date('d/m/Y') }}</h6>
|
||||
</div>
|
||||
@@ -53,21 +56,22 @@
|
||||
<div class="row profil-candidature">
|
||||
<div class="col-xl-8 col-md-12 p-t-10">
|
||||
<h4 class="bold">{{ answer.user.firstname }} {{ answer.user.lastname }}</h4>
|
||||
<p><i class="material-icons fs-16 tab-icon icons-candidatures">home</i>
|
||||
<p>
|
||||
{% if answer.user.getGeoloc %}
|
||||
{% for adress in answer.user.getGeoloc %}
|
||||
|
||||
<i class="material-icons fs-16 tab-icon icons-candidatures">home</i>
|
||||
{{ adress["locality"] }}, {{ adress["postal_code"] }}
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
Non renseignée
|
||||
|
||||
{% endif %}
|
||||
</p>
|
||||
{% if answer.user.company.extra["phoneTalent"] is defined %}
|
||||
<i class="material-icons fs-16 tab-icon icons-candidatures">phone</i><span id="telBouton"
|
||||
class="visible"><a href="#" onClick="afficherNumero()">Afficher le numéro de
|
||||
téléphone</a></span>{% if answer.user.company.extra["phoneTalent"] is defined %} <span
|
||||
id="telSpan" class="invisible">Tel : {{ answer.user.company.extra["phoneTalent"] }}<span>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="col-xl-4 col-md-12 profil-candidature-action">
|
||||
<div class="dropdown candidature-action">
|
||||
@@ -84,6 +88,8 @@
|
||||
Entretien programmé
|
||||
{% elseif answer.statusReponse =='A_TRAITER' %}
|
||||
À traiter
|
||||
{% else %}
|
||||
À traiter
|
||||
{% endif %}
|
||||
|
||||
</span>
|
||||
@@ -99,38 +105,23 @@
|
||||
onClick="changerStatutAnswer('EMBAUCHE', 'Embauché')">Embauché</button>
|
||||
</div>
|
||||
</div>
|
||||
<button aria-label="" type="button" class="btn btn-lg btn-seconday btn-cons">Contacter le candidat</button>
|
||||
<a href="#" data-toggle="tab" role="tab"
|
||||
data-target="#messagerieVideo" onClick="switcherMenu()">
|
||||
<button aria-label="" type="button" class="btn btn-lg btn-seconday btn-cons">Contacter le candidat</button></a>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="nav nav-tabs nav-tabs-simple d-none d-md-flex d-lg-flex d-xl-flex" role="tablist"
|
||||
data-init-reponsive-tabs="dropdownfx">
|
||||
<li class="nav-item">
|
||||
<a class="active" data-toggle="tab" role="tab" data-target="#candidature"
|
||||
href="{{ path('company_ad_answer_list',{'id':answer.ad.id}) }}" id="candidatureLien">Candidature</a>
|
||||
href="#" id="candidatureLien">Candidature</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a href="{{ path('company_ad_answer_list',{'id':answer.ad.id}) }}" data-toggle="tab" role="tab"
|
||||
<a href="#" data-toggle="tab" role="tab"
|
||||
data-target="#messagerieVideo" id="messagerieVideoLien">Messagerie</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="nav-tab-dropdown cs-wrapper full-width d-lg-none d-xl-none d-md-none">
|
||||
<div class="cs-select cs-skin-slide full-width" tabindex="0"><span class="cs-placeholder">Candidature</span>
|
||||
<div class="cs-options">
|
||||
<ul>
|
||||
<li data-option="" data-value="#candidature"><span>Candidature</span></li>
|
||||
<li data-option="" data-value="#messagerieVideo"><span>Messagerie vidéo</span></li>
|
||||
<li data-option="" data-value="#messagerie"><span>Messagerie
|
||||
texte</span></li>
|
||||
</ul>
|
||||
</div><select class="cs-select cs-skin-slide full-width" data-init-plugin="cs-select">
|
||||
<option value="#candidature" selected="">Candidature</option>
|
||||
<option value="#messagerieVideo">Messagerie vidéo</option>
|
||||
<option value="#messagerie">Messagerie
|
||||
texte</option>
|
||||
</select>
|
||||
<div class="cs-backdrop"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="col-xl-12 bg-white details-candidature">
|
||||
<div class="tab-content">
|
||||
@@ -166,6 +157,11 @@
|
||||
{% block javascripts %}
|
||||
{{ parent() }}
|
||||
<script type="text/javascript">
|
||||
function switcherMenu(){
|
||||
$("#messagerieVideoLien").addClass("active");
|
||||
$("#candidatureLien").removeClass("active");
|
||||
console.log("messagerie active");
|
||||
}
|
||||
var urlDropzone = '{{ path("upload_media_message", {"id": message.getId()}) }}';
|
||||
var urlDelete = '{{ path("delete_media_message", {"id": message.getId() }) }}'
|
||||
var idObject = null;
|
||||
|
||||
+5
-3
@@ -14,10 +14,12 @@
|
||||
|
||||
</div>
|
||||
<div class="card-body row">
|
||||
{% if answer.user.company.cv %}
|
||||
<div class="col-8">
|
||||
<h5><i class="material-icons fs-18 tab-icon icons-candidatures">text_snippet</i>Curriculum vitae
|
||||
</h5>
|
||||
</div>
|
||||
|
||||
<div class="col-4">
|
||||
<a href="/uploads/cv/{{ answer.user.company.cv }}" target="_blank">
|
||||
<button aria-label="" type="button" class="btn btn-lg btn-seconday btn-cons m-b-10">Télécharger
|
||||
@@ -32,7 +34,7 @@
|
||||
<iframe width="100%" height="600"
|
||||
src="/uploads/cv/{{ answer.user.company.cv }}"></iframe>
|
||||
{% endif %}
|
||||
|
||||
{% endif %}
|
||||
<!--<iframe width="100%" height="600" src="http://docs.google.com/gview?url=http://qualite-en-recherche.cnrs.fr/IMG/doc/pr-m1-09-ressources_humaines-30-1.doc&embedded=true"></iframe>-->
|
||||
|
||||
</div>
|
||||
@@ -43,7 +45,7 @@
|
||||
<!-- START card -->
|
||||
<div class="card-body">
|
||||
{{ form_start(formNote) }}
|
||||
<div class="form-group">
|
||||
<div class="form-group form-group-default required">
|
||||
<i class="material-icons fs-18 tab-icon icons-candidatures">comment</i><label for="">
|
||||
<h5>Commentaires</h5>
|
||||
</label>
|
||||
@@ -56,7 +58,7 @@
|
||||
{{ form_end(formNote) }}
|
||||
|
||||
|
||||
{% for note in answer.notes %}
|
||||
{% for note in answer.notes|reverse %}
|
||||
<div class="card card-body">
|
||||
<h6 class="card-title">{{ note.author.firstname }} {{ note.author.lastname }}</h6>
|
||||
<p class="card-text">{{ note.content }}</p>
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@
|
||||
value="{{ app.user.firstname }} {{ app.user.lastname }}" />
|
||||
</div>
|
||||
|
||||
<div class="form-group form-group-default" style="min-height:250px;">
|
||||
<div class="form-group form-group-default required" style="min-height:250px;">
|
||||
<label for="contact_talent_message" class="active">Message</label>
|
||||
{# <textarea id="contact_talent_message"
|
||||
name="contact_talent[message]" required="required"
|
||||
|
||||
@@ -161,11 +161,11 @@
|
||||
<div class="card-fog delete-fog {{ classFog }}">
|
||||
<div class="card-fog-container">
|
||||
{% if media.getAds().toArray() or media.getAnswers().toArray() %}
|
||||
<div class="card-fog-message">
|
||||
{# <div class="card-fog-message">
|
||||
Vous ne pouvez pas supprimer cette vidéo.<br />
|
||||
<i data-position="top" data-tooltip="{{ messageTooltipFog }}"
|
||||
class="fa fa-question-circle tooltipped" aria-hidden="true"></i>
|
||||
</div>
|
||||
</div> #}
|
||||
{% else %}
|
||||
<a class="btn btn-default halfway-fab waves-effect waves-light red delete_unattached_media tooltipped"
|
||||
href="{{ path("delete_unattached_media",{"id" : media.getId()}) }}"
|
||||
@@ -187,7 +187,7 @@
|
||||
|
||||
|
||||
{# cas d'un nombre impair de video #}
|
||||
{% if medias|length == iteration+1%}
|
||||
{% if medias|length == iteration+1 and medias|length is divisible by(2)%}
|
||||
<div class="col">
|
||||
<div class="card-image">
|
||||
<div class="embed-responsive embed-responsive-16by9">
|
||||
|
||||
@@ -80,7 +80,7 @@ twig:
|
||||
globals:
|
||||
push_public_key: "%push_params.public_key%"
|
||||
fairlane_cookie_consent: '@fairlane_cookie_consent.twig'
|
||||
version: '2.7.2'
|
||||
version: '2.7.3'
|
||||
|
||||
|
||||
|
||||
@@ -160,9 +160,7 @@ doctrine_mongodb:
|
||||
liip_imagine :
|
||||
resolvers :
|
||||
default :
|
||||
web_path:
|
||||
web_root: %kernel.root_dir%/..'
|
||||
cache_prefix: media/cache
|
||||
web_path: ~
|
||||
filter_sets :
|
||||
cache : ~
|
||||
profile_thumb :
|
||||
|
||||
@@ -68,8 +68,9 @@ class SecurityController extends FOSRestController
|
||||
$email = htmlspecialchars($request->get('email'));
|
||||
$password = htmlspecialchars($request->get('password'));
|
||||
$adId = htmlspecialchars($request->get('adId'));
|
||||
|
||||
if (!isset($firstname) || !isset($lastname) || !isset($email) || !isset($password))
|
||||
$phoneTalent = htmlspecialchars($request->get('phone'));
|
||||
|
||||
if (!isset($firstname) || !isset($lastname) || !isset($email) || !isset($password) )
|
||||
$status = array('status' => "failure", 'message' => 'empty parameters');
|
||||
else {
|
||||
$userManager = $this->get('fos_user.user_manager');
|
||||
@@ -89,7 +90,8 @@ class SecurityController extends FOSRestController
|
||||
$user->setEnabled(false);
|
||||
|
||||
$user->setRoles(array('ROLE_TALENT'));
|
||||
|
||||
|
||||
|
||||
$tokengen = $this->get('fos_user.util.token_generator');
|
||||
$user->setConfirmationToken($tokengen->generateToken());
|
||||
|
||||
@@ -101,11 +103,27 @@ class SecurityController extends FOSRestController
|
||||
$company->setAlias($alias);
|
||||
$company->setType("TALENT");
|
||||
$company->setDescription("Annonce consultée : ".$adId);
|
||||
|
||||
$company->setWebsite("");
|
||||
$company->setLinkedin("");
|
||||
$company->setTwitter("");
|
||||
$company->setTitleTalent("");
|
||||
|
||||
$extra['twitter']=" ";
|
||||
$extra['linkedin']=" ";
|
||||
$extra['phoneTalent']=$phoneTalent;
|
||||
$extra['titleTalent']=" ";
|
||||
$extra['situationTalent']=" ";
|
||||
$extra['descriptionTalent']=" ";
|
||||
|
||||
$company->setExtra($extra);
|
||||
$user->setCompany($company);
|
||||
|
||||
$userManager->updateUser($user);
|
||||
|
||||
}
|
||||
// $userManager->updatePassword($user);//pas besoin car fait dans updateUser , vraiment bizarre....
|
||||
$status = array('status' => "success", 'confirmationToken' => $user->getConfirmationToken(), 'email' => $user->getEmail(), 'firstname' => $user->getFirstname(), 'lastname' => $user->getLastname(), 'adId' => $adId);
|
||||
$status = array('status' => "success", 'confirmationToken' => $user->getConfirmationToken(), 'email' => $user->getEmail(), 'firstname' => $user->getFirstname(), 'lastname' => $user->getLastname(), 'phone' => $company->getPhoneTalent(), 'adId' => $adId);
|
||||
}
|
||||
}
|
||||
return new JsonResponse($status);
|
||||
|
||||
@@ -124,6 +124,7 @@ class CompanyController extends Controller
|
||||
'notice',
|
||||
$this->get('translator')->trans('Le logo de votre entreprise a bien été modifié')
|
||||
);
|
||||
return $this->redirect($this->generateUrl('company_profile'));
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -114,9 +114,9 @@ class MediaController extends Controller
|
||||
]);
|
||||
}
|
||||
public function convertKekab($string){
|
||||
$search = array('À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'à', 'á', 'â', 'ã', 'ä', 'å', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ð', 'ò', 'ó', 'ô', 'õ', 'ö', 'ù', 'ú', 'û', 'ü', 'ý', 'ÿ', "/");
|
||||
$search = array('À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'à', 'á', 'â', 'ã', 'ä', 'å', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ð', 'ò', 'ó', 'ô', 'õ', 'ö', 'ù', 'ú', 'û', 'ü', 'ý', 'ÿ', "/", "'");
|
||||
//Préférez str_replace à strtr car strtr travaille directement sur les octets, ce qui pose problème en UTF-8
|
||||
$replace = array('A', 'A', 'A', 'A', 'A', 'A', 'C', 'E', 'E', 'E', 'E', 'I', 'I', 'I', 'I', 'O', 'O', 'O', 'O', 'O', 'U', 'U', 'U', 'U', 'Y', 'a', 'a', 'a', 'a', 'a', 'a', 'c', 'e', 'e', 'e', 'e', 'i', 'i', 'i', 'i', 'o', 'o', 'o', 'o', 'o', 'o', 'u', 'u', 'u', 'u', 'y', 'y', "s");
|
||||
$replace = array('A', 'A', 'A', 'A', 'A', 'A', 'C', 'E', 'E', 'E', 'E', 'I', 'I', 'I', 'I', 'O', 'O', 'O', 'O', 'O', 'U', 'U', 'U', 'U', 'Y', 'a', 'a', 'a', 'a', 'a', 'a', 'c', 'e', 'e', 'e', 'e', 'i', 'i', 'i', 'i', 'o', 'o', 'o', 'o', 'o', 'o', 'u', 'u', 'u', 'u', 'y', 'y', "", "");
|
||||
|
||||
$string = str_replace($search, $replace, $string);
|
||||
$string = strtolower (str_replace(" ", "-", $string));
|
||||
|
||||
@@ -108,10 +108,10 @@ class Answer
|
||||
/**
|
||||
* @var string
|
||||
*
|
||||
* @ORM\Column(name="status_reponse", type="string", length=255, nullable=true)
|
||||
* @ORM\Column(name="status_reponse", type="string", length=255, nullable=true, options={"default":"CONTACTE"})
|
||||
*
|
||||
*/
|
||||
private $statusReponse;
|
||||
private $statusReponse ='CONTACTE';
|
||||
|
||||
/**
|
||||
* @var string
|
||||
|
||||
Reference in New Issue
Block a user