job_offer_form.html 6.44 KB
Newer Older
1
2
{% extends "base.html" %}

3
4
5
{% block title %}Formulaire de dépôt d'une offre d'emploi{% endblock %}
{% block ogtitle %}Formulaire de dépôt d'une offre d'emploi{% endblock %}

6
{% block header_content %}
gouarin's avatar
gouarin committed
7
8
9
10
11
12
13
14
15
16
17
<div class="container">
    <a href="{{ SITEURL }}/category/job.html" class="header-btn btn btn-dark mb-2 p-2">
        <div class="row m-0 d-flex align-items-center">
            <div class="circle-job"></div>
            <span class="category text-uppercase pl-2">{{CIRCLES['job']}}</span>
        </div>
    </a>
</div>
<div class="container">
    <h1 class="my-3">Publier une offre d'emploi</h1>
</div>
18
19
{% endblock header_content %}

20
21
{% block content %}

22
23
<div class="container-fluid job_offers">
    <div class="container job_form">
24
25
26
        {{ ' {% if success %} ' }}
        <p>
            Nous avons bien enregistré votre offre d'emploi, elle sera publiée très prochainement.
gouarin's avatar
gouarin committed
27
28
            Lorsque votre offre sera périmée, merci de le signaler à <a
                href="mailto:calcul-contact@services.cnrs.fr">calcul-contact@services.cnrs.fr</a>.
29
30
31
        </p>
        {{ ' {% else %} ' }}

32
33
        <link rel="stylesheet" href="{{ SITEURL }}/css/simplemde.min.css">
        <script src="{{ SITEURL }}/js/simplemde.min.js"></script>
34
35
36
37

        {{ ' {% if internal_error %} ' }}
        <p class="error">
            Une erreur interne est survenue pendant la soumission de votre offre.
gouarin's avatar
gouarin committed
38
39
            Veuillez réessayer plus tard ou contactez-nous à <a
                href="mailto:calcul-contact@services.cnrs.fr">calcul-contact@services.cnrs.fr</a>.
40
41
42
        </p>
        {{ ' {% endif %} ' }}

43
44
        {{ ' {% if flood_error %} ' }}
        <p class="error">
gouarin's avatar
gouarin committed
45
46
47
48
49
            À cause d'un nombre important de soumissions récentes, nous vous prions d'attendre
            {{ '{{ (flood_delay.total_seconds() / 60) | round(0, "ceil") | int }}' }} minute(s) avant de soumettre cette
            offre.
            Si le problème persiste, contactez-nous à <a
                href="mailto:calcul-contact@services.cnrs.fr">calcul-contact@services.cnrs.fr</a>.
50
51
52
        </p>
        {{ ' {% endif %} ' }}

53
54
        {{ ' {% if errors.general %} <p class="error">{{ errors.general }}</p>{% endif %} ' }}

55
        <p><span class="error">Les informations obligatoires sont indiquées par une *.</span></p>
56
57
        <form name="job_offer_form" enctype="multipart/form-data" method="post">
            <p>
58
                Type de l'offre* : <select name="job_type" onchange="update_duration_availability()" required>
gouarin's avatar
gouarin committed
59
                    {{ '
60
                    <option hidden disabled {% if not form.job_type %} selected {% endif %} value>Choisissez</option>
61
62
                {% for key, value in job_type_list.items() %}
                    <option value="{{key}}" {% if key == form.job_type %} selected {% endif %} >{{value}}</option>
gouarin's avatar
gouarin committed
63
64
                    {% endfor %}
                    ' }}
65
66
67
68
                </select>
                <span class="error">{{ '{{errors.job_type}}' }}</span>
            </p>
            <p>
Matthieu Boileau's avatar
Matthieu Boileau committed
69
                Titre* <br>
70
71
72
                <input type="text" name="title" value="{{ '{{form.title}}' }}" autofocus required>
                <span class="error">{{ '{{errors.title}}' }}</span>
            </p>
73
74
75
76
77
            <p>
                Employeur* <br>
                <input type="text" name="employer" value="{{ '{{form.employer}}' }}" required>
                <span class="error">{{ '{{errors.employer}}' }}</span>
            </p>
78
            <p>
Matthieu Boileau's avatar
Matthieu Boileau committed
79
80
81
82
83
84
                Nom du contact* <br>
                <input type="text" name="author" value="{{ '{{form.author}}' }}" required>
                <span class="error">{{ '{{errors.author}}' }}</span>
            </p>
            <p>
                E-mail du contact* <br>
85
                <input type="email" name="email" value="{{ '{{form.email}}' }}" required>
86
                <span class="error">{{ '{{errors.email}}' }}</span>
87
88
89
90
            </p>
            <p>
                Site web <br>
                <input type="url" name="website" value="">
91
                <span class="error"></span>
92
93
94
95
96
            </p>
            <p>
                Lieu <br>
                <input type="text" name="location" value="">
            </p>
97
            <p id="duration_field">
98
99
                Durée <br>
                <input type="text" name="duration" value="">
100
101
102
            </p>
            <p>
                Description* <br>
gouarin's avatar
gouarin committed
103
104
                <textarea name="description" rows="5" cols="40"
                    id="job_offer_description">{{ '{{form.description}}' }}</textarea>
105
                <span class="error">{{ '{{errors.description}}' }}</span>
106
            </p>
107
108
109
110
111
            <p>
                Date d'expiration de l'offre* <br>
                <input type="date" name="expiration" value="{{ '{{form.expiration}}' }}" required>
                <span class="error">{{ '{{errors.expiration}}' }}</span>
            </p>
112
            <p>
113
                Fichier joint :
114
                <input type="file" name="file" accept="{{ '{{file_accept}}' }}">
115
                <span class="error">{{ '{{errors.attachment}}' }}</span>
116
                {{ ' {% if form.has_attachment() %} ' }}
117
                <span class="error">N'oubliez pas de re-déposer votre document.</span>
118
                {{ ' {% endif %} ' }}
119
            </p>
Matthieu Boileau's avatar
Matthieu Boileau committed
120
            <p>
gouarin's avatar
gouarin committed
121
122
123
124
125
                En soumettant ce formulaire, vous acceptez les conditions d'utilisation de vos données telles qu'elles
                sont
                décrites dans les <a
                    href="{{ SITEURL }}/pages/mentions-legales.html#formulaire-de-publication-dune-offre-demploi">
                    mentions légales</a>.
Matthieu Boileau's avatar
Matthieu Boileau committed
126
            </p>
127
128
129
130
            <p>
                <input type="submit" name="submit" value="Soumettre">
            </p>
        </form>
131

132
133
134
135
        <script>
            var simplemde = new SimpleMDE({
                element: document.getElementById("job_offer_description"),
                spellChecker: false,
136
137
                forceSync: true,
                hideIcons: ["image"],
138
            });
139
140

            function update_duration_availability() {
141
142
                var job_type = document.getElementsByName("job_type")[0].value;
                var is_cdi = job_type == 'cdi' || job_type == 'concours';
143
144
                document.getElementsByName("duration")[0].disabled = is_cdi;
                document.getElementById("duration_field").style.opacity = is_cdi ? '0.5' : 'initial';
145
146
147
            }

            update_duration_availability();
148
        </script>
149
150

        {{ ' {% endif %} ' }}
151
152
    </div>
</div>
153

154
155
{% endblock content %}