<?php
use Twig\Environment;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
use Twig\Extension\CoreExtension;
use Twig\Extension\SandboxExtension;
use Twig\Markup;
use Twig\Sandbox\SecurityError;
use Twig\Sandbox\SecurityNotAllowedTagError;
use Twig\Sandbox\SecurityNotAllowedFilterError;
use Twig\Sandbox\SecurityNotAllowedFunctionError;
use Twig\Source;
use Twig\Template;
use Twig\TemplateWrapper;
/* page/page.html.twig */
class __TwigTemplate_cefa8685a4d5fe9573b964e3f85314bd extends Template
{
private Source $source;
/**
* @var array<string, Template>
*/
private array $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'title' => [$this, 'block_title'],
'meta_date_desc' => [$this, 'block_meta_date_desc'],
'meta' => [$this, 'block_meta'],
'stylesheets' => [$this, 'block_stylesheets'],
'body' => [$this, 'block_body'],
'javascripts' => [$this, 'block_javascripts'],
];
}
protected function doGetParent(array $context): bool|string|Template|TemplateWrapper
{
// line 1
return "base.html.twig";
}
protected function doDisplay(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "page/page.html.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "page/page.html.twig"));
$this->parent = $this->loadTemplate("base.html.twig", "page/page.html.twig", 1);
yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
}
// line 3
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_title(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 3, $this->source); })()), "title", [], "any", false, false, false, 3), "html", null, true);
yield " | WorkDispo ";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 4
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_meta_date_desc(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "meta_date_desc"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "meta_date_desc"));
// line 5
yield "
<script type=\"application/ld+json\">
{
\"@context\" : \"https://schema.org\",
\"@type\" : \"WebSite\",
\"name\" : \"WorkDispo\",
\"url\" : \"https://www.workdispo.com/\",
";
// line 12
if (((isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 12, $this->source); })()) && !Twig\Extension\CoreExtension::testEmpty(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 12, $this->source); })()), "getCreatedAt", [], "method", false, false, false, 12)))) {
// line 13
yield " \"datePublished\": \"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 13, $this->source); })()), "getCreatedAt", [], "method", false, false, false, 13), "c"), "html", null, true);
yield "\",
";
}
// line 15
yield "
";
// line 16
if (((isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 16, $this->source); })()) && !Twig\Extension\CoreExtension::testEmpty(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 16, $this->source); })()), "getUpdatedAt", [], "method", false, false, false, 16)))) {
// line 17
yield " \"dateModified\": \"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 17, $this->source); })()), "getUpdatedAt", [], "method", false, false, false, 17), "c"), "html", null, true);
yield "\"
";
}
// line 19
yield " }
</script>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 22
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_meta(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "meta"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "meta"));
// line 23
yield " <meta charset=\"utf-8\">
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, maximum-scale=3\">
<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\"/>
<script type=\"text/javascript\">(window.NREUM || (NREUM = {})).init = {ajax: {deny_list: [\"bam.nr-data.net\"]}};
(window.NREUM || (NREUM = {})).loader_config = {
licenseKey: \"NRJS-8c6c895b97ea60d5ee0\",
applicationID: \"1333848373\"
};
window.NREUM || (NREUM = {}), __nr_require = function (t, e, n) {
function r(n) {
if (!e[n]) {
var i = e[n] = {exports: {}};
t[n][0].call(i.exports, function (e) {
var i = t[n][1][e];
return r(i || e)
}, i, i.exports)
}
return e[n].exports
}
if (\"function\" == typeof __nr_require) return __nr_require;
for (var i = 0; i < n.length; i++) r(n[i]);
return r
}({
1: [function (t, e, n) {
function r() {
}
function i(t, e, n, r) {
return function () {
return s.recordSupportability(\"API/\" + e + \"/called\"), o(t + e, [u.now()].concat(c(arguments)), n ? null : this, r), n ? void 0 : this
}
}
var o = t(\"handle\"), a = t(9), c = t(10), f = t(\"ee\").get(\"tracer\"), u = t(\"loader\"), s = t(4),
d = NREUM;
\"undefined\" == typeof window.newrelic && (newrelic = d);
var p = [\"setPageViewName\", \"setCustomAttribute\", \"setErrorHandler\", \"finished\", \"addToTrace\", \"inlineHit\", \"addRelease\"],
l = \"api-\", v = l + \"ixn-\";
a(p, function (t, e) {
d[e] = i(l, e, !0, \"api\")
}), d.addPageAction = i(l, \"addPageAction\", !0), d.setCurrentRouteName = i(l, \"routeName\", !0), e.exports = newrelic, d.interaction = function () {
return (new r).get()
};
var m = r.prototype = {
createTracer: function (t, e) {
var n = {}, r = this, i = \"function\" == typeof e;
return o(v + \"tracer\", [u.now(), t, n], r), function () {
if (f.emit((i ? \"\" : \"no-\") + \"fn-start\", [u.now(), r, i], n), i) try {
return e.apply(this, arguments)
} catch (t) {
throw f.emit(\"fn-err\", [arguments, this, t], n), t
} finally {
f.emit(\"fn-end\", [u.now()], n)
}
}
}
};
a(\"actionText,setName,setAttribute,save,ignore,onEnd,getContext,end,get\".split(\",\"), function (t, e) {
m[e] = i(v, e)
}), newrelic.noticeError = function (t, e) {
\"string\" == typeof t && (t = new Error(t)), s.recordSupportability(\"API/noticeError/called\"), o(\"err\", [t, u.now(), !1, e])
}
}, {}], 2: [function (t, e, n) {
function r(t) {
if (NREUM.init) {
for (var e = NREUM.init, n = t.split(\".\"), r = 0; r < n.length - 1; r++) if (e = e[n[r]], \"object\" != typeof e) return;
return e = e[n[n.length - 1]]
}
}
e.exports = {getConfiguration: r}
}, {}], 3: [function (t, e, n) {
var r = !1;
try {
var i = Object.defineProperty({}, \"passive\", {
get: function () {
r = !0
}
});
window.addEventListener(\"testPassive\", null, i), window.removeEventListener(\"testPassive\", null, i)
} catch (o) {
}
e.exports = function (t) {
return r ? {passive: !0, capture: !!t} : !!t
}
}, {}], 4: [function (t, e, n) {
function r(t, e) {
var n = [a, t, {name: t}, e];
return o(\"storeMetric\", n, null, \"api\"), n
}
function i(t, e) {
var n = [c, t, {name: t}, e];
return o(\"storeEventMetrics\", n, null, \"api\"), n
}
var o = t(\"handle\"), a = \"sm\", c = \"cm\";
e.exports = {
constants: {SUPPORTABILITY_METRIC: a, CUSTOM_METRIC: c},
recordSupportability: r,
recordCustom: i
}
}, {}], 5: [function (t, e, n) {
function r() {
return c.exists && performance.now ? Math.round(performance.now()) : (o = Math.max((new Date).getTime(), o)) - a
}
function i() {
return o
}
var o = (new Date).getTime(), a = o, c = t(11);
e.exports = r, e.exports.offset = a, e.exports.getLastTimestamp = i
}, {}], 6: [function (t, e, n) {
function r(t, e) {
var n = t.getEntries();
n.forEach(function (t) {
\"first-paint\" === t.name ? l(\"timing\", [\"fp\", Math.floor(t.startTime)]) : \"first-contentful-paint\" === t.name && l(\"timing\", [\"fcp\", Math.floor(t.startTime)])
})
}
function i(t, e) {
var n = t.getEntries();
if (n.length > 0) {
var r = n[n.length - 1];
if (u && u < r.startTime) return;
var i = [r], o = a({});
o && i.push(o), l(\"lcp\", i)
}
}
function o(t) {
t.getEntries().forEach(function (t) {
t.hadRecentInput || l(\"cls\", [t])
})
}
function a(t) {
var e = navigator.connection || navigator.mozConnection || navigator.webkitConnection;
if (e) return e.type && (t[\"net-type\"] = e.type), e.effectiveType && (t[\"net-etype\"] = e.effectiveType), e.rtt && (t[\"net-rtt\"] = e.rtt), e.downlink && (t[\"net-dlink\"] = e.downlink), t
}
function c(t) {
if (t instanceof y && !w) {
var e = Math.round(t.timeStamp), n = {type: t.type};
a(n), e <= v.now() ? n.fid = v.now() - e : e > v.offset && e <= Date.now() ? (e -= v.offset, n.fid = v.now() - e) : e = v.now(), w = !0, l(\"timing\", [\"fi\", e, n])
}
}
function f(t) {
\"hidden\" === t && (u = v.now(), l(\"pageHide\", [u]))
}
if (!(\"init\" in NREUM && \"page_view_timing\" in NREUM.init && \"enabled\" in NREUM.init.page_view_timing && NREUM.init.page_view_timing.enabled === !1)) {
var u, s, d, p, l = t(\"handle\"), v = t(\"loader\"), m = t(8), g = t(3), y = NREUM.o.EV;
if (\"PerformanceObserver\" in window && \"function\" == typeof window.PerformanceObserver) {
s = new PerformanceObserver(r);
try {
s.observe({entryTypes: [\"paint\"]})
} catch (h) {
}
d = new PerformanceObserver(i);
try {
d.observe({entryTypes: [\"largest-contentful-paint\"]})
} catch (h) {
}
p = new PerformanceObserver(o);
try {
p.observe({type: \"layout-shift\", buffered: !0})
} catch (h) {
}
}
if (\"addEventListener\" in document) {
var w = !1, b = [\"click\", \"keydown\", \"mousedown\", \"pointerdown\", \"touchstart\"];
b.forEach(function (t) {
document.addEventListener(t, c, g(!1))
})
}
m(f)
}
}, {}], 7: [function (t, e, n) {
function r(t, e) {
if (!i) return !1;
if (t !== i) return !1;
if (!o) return !1;
for (var n = o.split(\".\"), r = e.split(\".\"), a = 0; a < r.length; a++) if (r[a] !== n[a]) return !1;
return !0
}
var i = null, o = null, a = /Version\\/(\\S+)\\s+Safari/;
if (navigator.userAgent) {
var c = navigator.userAgent, f = c.match(a);
f && c.indexOf(\"Chrome\") === -1 && c.indexOf(\"Chromium\") === -1 && (i = \"Safari\", o = f[1])
}
e.exports = {agent: i, version: o, match: r}
}, {}], 8: [function (t, e, n) {
function r(t) {
function e() {
t(c && document[c] ? document[c] : document[o] ? \"hidden\" : \"visible\")
}
\"addEventListener\" in document && a && document.addEventListener(a, e, i(!1))
}
var i = t(3);
e.exports = r;
var o, a, c;
\"undefined\" != typeof document.hidden ? (o = \"hidden\", a = \"visibilitychange\", c = \"visibilityState\") : \"undefined\" != typeof document.msHidden ? (o = \"msHidden\", a = \"msvisibilitychange\") : \"undefined\" != typeof document.webkitHidden && (o = \"webkitHidden\", a = \"webkitvisibilitychange\", c = \"webkitVisibilityState\")
}, {}], 9: [function (t, e, n) {
function r(t, e) {
var n = [], r = \"\", o = 0;
for (r in t) i.call(t, r) && (n[o] = e(r, t[r]), o += 1);
return n
}
var i = Object.prototype.hasOwnProperty;
e.exports = r
}, {}], 10: [function (t, e, n) {
function r(t, e, n) {
e || (e = 0), \"undefined\" == typeof n && (n = t ? t.length : 0);
for (var r = -1, i = n - e || 0, o = Array(i < 0 ? 0 : i); ++r < i;) o[r] = t[e + r];
return o
}
e.exports = r
}, {}], 11: [function (t, e, n) {
e.exports = {exists: \"undefined\" != typeof window.performance && window.performance.timing && \"undefined\" != typeof window.performance.timing.navigationStart}
}, {}], ee: [function (t, e, n) {
function r() {
}
function i(t) {
function e(t) {
return t && t instanceof r ? t : t ? u(t, f, a) : a()
}
function n(n, r, i, o, a) {
if (a !== !1 && (a = !0), !l.aborted || o) {
t && a && t(n, r, i);
for (var c = e(i), f = m(n), u = f.length, s = 0; s < u; s++) f[s].apply(c, r);
var p = d[w[n]];
return p && p.push([b, n, r, c]), c
}
}
function o(t, e) {
h[t] = m(t).concat(e)
}
function v(t, e) {
var n = h[t];
if (n) for (var r = 0; r < n.length; r++) n[r] === e && n.splice(r, 1)
}
function m(t) {
return h[t] || []
}
function g(t) {
return p[t] = p[t] || i(n)
}
function y(t, e) {
l.aborted || s(t, function (t, n) {
e = e || \"feature\", w[n] = e, e in d || (d[e] = [])
})
}
var h = {}, w = {}, b = {
on: o,
addEventListener: o,
removeEventListener: v,
emit: n,
get: g,
listeners: m,
context: e,
buffer: y,
abort: c,
aborted: !1
};
return b
}
function o(t) {
return u(t, f, a)
}
function a() {
return new r
}
function c() {
(d.api || d.feature) && (l.aborted = !0, d = l.backlog = {})
}
var f = \"nr@context\", u = t(\"gos\"), s = t(9), d = {}, p = {}, l = e.exports = i();
e.exports.getOrSetContext = o, l.backlog = d
}, {}], gos: [function (t, e, n) {
function r(t, e, n) {
if (i.call(t, e)) return t[e];
var r = n();
if (Object.defineProperty && Object.keys) try {
return Object.defineProperty(t, e, {value: r, writable: !0, enumerable: !1}), r
} catch (o) {
}
return t[e] = r, r
}
var i = Object.prototype.hasOwnProperty;
e.exports = r
}, {}], handle: [function (t, e, n) {
function r(t, e, n, r) {
i.buffer([t], r), i.emit(t, e, n)
}
var i = t(\"ee\").get(\"handle\");
e.exports = r, r.ee = i
}, {}], id: [function (t, e, n) {
function r(t) {
var e = typeof t;
return !t || \"object\" !== e && \"function\" !== e ? -1 : t === window ? 0 : a(t, o, function () {
return i++
})
}
var i = 1, o = \"nr@id\", a = t(\"gos\");
e.exports = r
}, {}], loader: [function (t, e, n) {
function r() {
if (!M++) {
var t = T.info = NREUM.info, e = m.getElementsByTagName(\"script\")[0];
if (setTimeout(u.abort, 3e4), !(t && t.licenseKey && t.applicationID && e)) return u.abort();
f(x, function (e, n) {
t[e] || (t[e] = n)
});
var n = a();
c(\"mark\", [\"onload\", n + T.offset], null, \"api\"), c(\"timing\", [\"load\", n]);
var r = m.createElement(\"script\");
0 === t.agent.indexOf(\"http://\") || 0 === t.agent.indexOf(\"https://\") ? r.src = t.agent : r.src = l + \"://\" + t.agent, e.parentNode.insertBefore(r, e)
}
}
function i() {
\"complete\" === m.readyState && o()
}
function o() {
c(\"mark\", [\"domContent\", a() + T.offset], null, \"api\")
}
var a = t(5), c = t(\"handle\"), f = t(9), u = t(\"ee\"), s = t(7), d = t(2), p = t(3),
l = d.getConfiguration(\"ssl\") === !1 ? \"http\" : \"https\", v = window, m = v.document,
g = \"addEventListener\", y = \"attachEvent\", h = v.XMLHttpRequest, w = h && h.prototype, b = !1;
NREUM.o = {
ST: setTimeout,
SI: v.setImmediate,
CT: clearTimeout,
XHR: h,
REQ: v.Request,
EV: v.Event,
PR: v.Promise,
MO: v.MutationObserver
};
var E = \"\" + location, x = {
beacon: \"bam.nr-data.net\",
errorBeacon: \"bam.nr-data.net\",
agent: \"js-agent.newrelic.com/nr-1216.min.js\"
}, O = h && w && w[g] && !/CriOS/.test(navigator.userAgent), T = e.exports = {
offset: a.getLastTimestamp(),
now: a,
origin: E,
features: {},
xhrWrappable: O,
userAgent: s,
disabled: b
};
if (!b) {
t(1), t(6), m[g] ? (m[g](\"DOMContentLoaded\", o, p(!1)), v[g](\"load\", r, p(!1))) : (m[y](\"onreadystatechange\", i), v[y](\"onload\", r)), c(\"mark\", [\"firstbyte\", a.getLastTimestamp()], null, \"api\");
var M = 0
}
}, {}], \"wrap-function\": [function (t, e, n) {
function r(t, e) {
function n(e, n, r, f, u) {
function nrWrapper() {
var o, a, s, p;
try {
a = this, o = d(arguments), s = \"function\" == typeof r ? r(o, a) : r || {}
} catch (l) {
i([l, \"\", [o, a, f], s], t)
}
c(n + \"start\", [o, a, f], s, u);
try {
return p = e.apply(a, o)
} catch (v) {
throw c(n + \"err\", [o, a, v], s, u), v
} finally {
c(n + \"end\", [o, a, p], s, u)
}
}
return a(e) ? e : (n || (n = \"\"), nrWrapper[p] = e, o(e, nrWrapper, t), nrWrapper)
}
function r(t, e, r, i, o) {
r || (r = \"\");
var c, f, u, s = \"-\" === r.charAt(0);
for (u = 0; u < e.length; u++) f = e[u], c = t[f], a(c) || (t[f] = n(c, s ? f + r : r, i, f, o))
}
function c(n, r, o, a) {
if (!v || e) {
var c = v;
v = !0;
try {
t.emit(n, r, o, e, a)
} catch (f) {
i([f, n, r, o], t)
}
v = c
}
}
return t || (t = s), n.inPlace = r, n.flag = p, n
}
function i(t, e) {
e || (e = s);
try {
e.emit(\"internal-error\", t)
} catch (n) {
}
}
function o(t, e, n) {
if (Object.defineProperty && Object.keys) try {
var r = Object.keys(t);
return r.forEach(function (n) {
Object.defineProperty(e, n, {
get: function () {
return t[n]
}, set: function (e) {
return t[n] = e, e
}
})
}), e
} catch (o) {
i([o], n)
}
for (var a in t) l.call(t, a) && (e[a] = t[a]);
return e
}
function a(t) {
return !(t && t instanceof Function && t.apply && !t[p])
}
function c(t, e) {
var n = e(t);
return n[p] = t, o(t, n, s), n
}
function f(t, e, n) {
var r = t[e];
t[e] = c(r, n)
}
function u() {
for (var t = arguments.length, e = new Array(t), n = 0; n < t; ++n) e[n] = arguments[n];
return e
}
var s = t(\"ee\"), d = t(10), p = \"nr@original\", l = Object.prototype.hasOwnProperty, v = !1;
e.exports = r, e.exports.wrapFunction = c, e.exports.wrapInPlace = f, e.exports.argsToArray = u
}, {}]
}, {}, [\"loader\"]);</script>
<meta property=\"og:type\" content=\"WorkDispo\"/>
<meta property=\"og:image\"
content=\"";
// line 502
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl(((CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 502, $this->source); })()), "publicationImage", [], "any", false, false, false, 502)) ? (("uploads/img/" . CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 502, $this->source); })()), "publicationImage", [], "any", false, false, false, 502), "path", [], "any", false, false, false, 502))) : ("images/blog-04.jpg"))), "html", null, true);
yield "\">
<meta name=\"description\" content=\"";
// line 503
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 503, $this->source); })()), "description", [], "any", false, false, false, 503), "html", null, true);
yield "\">
<meta name=\"keywords\" content=\"";
// line 504
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 504, $this->source); })()), "keywodrs", [], "any", false, false, false, 504), "html", null, true);
yield "\">
<meta property=\"og:title\" content=\"";
// line 505
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 505, $this->source); })()), "title", [], "any", false, false, false, 505), "html", null, true);
yield "\"/>
";
// line 507
if (CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 507, $this->source); })()), "updatedAt", [], "any", false, false, false, 507)) {
// line 508
yield " <meta name=\"revised\" content=\"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 508, $this->source); })()), "updatedAt", [], "any", false, false, false, 508), "d/m/Y"), "html", null, true);
yield "\"/>
";
} else {
// line 510
yield " <meta name=\"revised\" content=\"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 510, $this->source); })()), "createdAt", [], "any", false, false, false, 510), "d/m/Y"), "html", null, true);
yield "\"/>
";
}
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 513
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_stylesheets(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheets"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheets"));
// line 514
yield " <style>
.blog-post-content h1 {
color: black !important;
}
.mobile-device {
display: none;
}
.large-device {
display: block;
}
.ez-toc-link {
position: relative;
padding-left: 24px; /* Adjust based on the width of the icon */
text-decoration: none; /* Remove underline */
color: blue; /* Default color */
}
.ez-toc-link .icon {
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
display: none; /* Hide icon by default */
fill: #2a41e8;
}
.ez-toc-link.active .icon,
.ez-toc-link.visited .icon {
display: block; /* Show icon when active or visited */
}
.ez-toc-link.active {
color: blue; /* Color when active */
}
.ez-toc-link.active a {
color: #2a41e8;
}
.ez-toc-link.visited {
color: gray; /* Color when visited */
}
.sidebar-sticky {
overflow-y: hidden;
}
.toc-title {
color: #000000;
font-size: 1.8rem;
font-weight: 700;
text-align: center;
margin-bottom: 1.5rem;
}
.ez-toc-container-direction {
display: flex;
flex-direction: column;
height: 100%;
}
.toc-content {
overflow: hidden; /* Cache la scrollbar horizontale */
}
.ez-toc-list {
max-height: 200px; /* Définissez la hauteur maximale de la liste défilante selon votre besoin */
overflow-y: auto; /* Permet le défilement vertical */
padding-right: 15px; /* Pour compenser la disparition de la scrollbar */
scrollbar-width: none; /* Cacher la scrollbar pour Firefox */
}
#sidebar-container::-webkit-scrollbar {
/*display: none; !* Cacher la scrollbar pour les navigateurs Webkit *!*/
}
.sidebar-sticky {
border: 3px solid #f1f1f1;
border-radius: 10px;
padding: 20px 0 10px 0;
margin-bottom: 8px;
position: sticky;
top: 14%;
}
#sidebar-container {
max-height: 230px !important;
}
.toc-container {
overflow-y: scroll;
}
.ez-toc-list::-webkit-scrollbar {
display: none;
}
.ez-toc-list li {
list-style: none;
position: relative;
padding-left: 25px;
margin-bottom: 10px;
}
.ez-toc-page-1 a.ez-toc-link {
color: gray;
text-decoration: none; /* Enlève la décoration du texte (soulignement) */
font-size: medium;
}
.ez-toc-page-1 a.ez-toc-link.active {
color: #2a41e8;
}
div.clicked-link a {
color: grey;
opacity: 0.8;
}
/*.ez-toc-list li:before {*/
/* content: \"\\f00c\"; !* Code Unicode pour l'icône de coche de Font Awesome *!*/
/* font-family: \"Font Awesome 5 Free\"; !* Police de Font Awesome *!*/
/* font-weight: 900; !* Pour la version solide de l'icône *!*/
/* color: green; !* Couleur de l'icône, vous pouvez la changer selon vos besoins *!*/
/* position: absolute;*/
/* left: 0;*/
/* top: 0;*/
/*}*/
.widget-content {
position: relative;
}
.breadcrumb-container {
font-size: 11px;
color: white;
position: absolute;
top: 0px; /* Ajustez la valeur selon votre besoin */
left: 10px; /* Ajustez la valeur selon votre besoin */
z-index: 100; /* Assurez-vous que cette valeur est plus élevée que celle de l'image */
}
.breadcrumb {
/*background-color: white;*/
padding: 10px 16px;
list-style: none;
display: flex;
align-items: center;
border-radius: 5px; /* Ajoutez des bordures arrondies si nécessaire */
}
.breadcrumb-item a {
color: white; /* Couleur du texte du lien */
text-decoration: none; /* Supprime le soulignement du lien */
cursor: pointer; /* Assure que le curseur devient une main */
}
.breadcrumb-item a:hover {
text-decoration: none; /* Soulignement au survol */
}
.breadcrumb-item.active {
color: white; /* Couleur du texte pour l'élément actif */
font-size: 12px;
text-decoration: underline;
text-decoration-color: blue; /* Couleur du soulignement */
text-decoration-thickness: 2px; /* Épaisseur du soulignement */
text-underline-offset: 4px; /* Espace entre le texte et le soulignement */
}
.breadcrumb-item.active a {
text-decoration: none; /* Supprime le soulignement pour l'élément actif */
cursor: default; /* Coursur de texte pour l'élément actif */
}
.blog-post-content ol {
margin: 0 0 0 20px !important;
}
.blog-post-content h2 {
font-weight: bold;
scroll-margin-top: 80px; /* Pour que le scroll auto s'arrête juste au début du h2 */
}
.blog-post-content h3 {
color: black !important;
font-size: 20px !important;
font-weight: bold;
display: inline-block; /* Assure que l'élément h3 ne prend que la largeur nécessaire */
text-decoration: underline; /* Soulignement du texte */
text-decoration-color: #2a41e8; /* Couleur du soulignement */
text-underline-position: under;
}
.closeButtonContainer {
display: flex;
justify-content: flex-end;
}
.scroll-block {
position: fixed;
bottom: 0; /* Initially hidden below the screen */
left: 5%;
width: 90%;
background-color: #333;
color: #fff;
padding: 12px 20px 41px 20px;
transition: bottom 0.3s ease; /* Smooth transition for hiding */
transform: translateY(100%); /* Le bloc est déplacé vers le bas de l'écran */
display: none;
}
.visible {
transform: translateY(0);
}
.hidden {
transform: translateY(100%);
}
.hidden_btn {
transform: translateY(100%) !important;
}
@media only screen and (max-width: 500px) {
#wrapper {
width: -webkit-fill-available;
}
.sidebar-sticky {
position: static !important;
margin-bottom: 1rem;
}
.ez-toc-list li {
list-style-type: none !important; /* Remove bullets from the list */
padding-left: 9px !important; /* Remove padding from the list */
}
.mobile-device {
display: block;
}
.large-device {
display: none;
}
.scroll-block {
display: block;
border-radius: 20px;
background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(https://www.abcportage.fr/wp-content/themes/abcportage/assets/build/img/img_cta_right_small.jpg);
background-size: cover;
color: white;
z-index: 200 !important;
flex-direction: column;
margin-bottom: -12px;
}
}
.btn-mission-spec {
border-radius: 50px !important;
padding: 12px 24px !important;
font-size: 20px !important;
font-weight: 500 !important;
background-clip: padding-box;
background-color: rgb(33 99 139) !important;
}
.btn-mission-spec-flottant {
border-radius: 50px !important;
padding: 10px 24px !important;
font-size: 20px !important;
font-weight: 500 !important;
background-clip: padding-box;
background-color: #2a41e8 !important;
}
#breadcrumbs {
transform: translateY(-190%);
right: 1.2% !important;
}
#breadcrumbs ul {
display: flex;
}
.btn-mission-spec:hover {
background-color: #2a41e8 !important; /* Utilisation de RGBA avec une opacité de 1 (complètement opaque) */
}
.spec-breadcrumbs {
bottom: -5rem !important;
top: auto !important;
}
.end-list-crumbs::before {
display: none !important;
}
.blog-post-content ul {
list-style-type: none; /* Supprimer les puces par défaut */
}
.blog-post-content ul li::before {
content: \"\\2022\"; /* Code Unicode pour un point (•) */
color: #2a41e8; /* Couleur bleue pour les puces */
display: inline-block;
width: 1em; /* Espacement entre la puce et le texte */
margin-left: -1em; /* Pour aligner la puce avec le texte */
}
.blog-post-content ol {
list-style-type: decimal; /* Style de numéro par défaut pour les listes ordonnées */
}
/* Styles pour les listes ordonnées */
.blog-post-content ol {
list-style-type: none; /* Supprimer les numéros par défaut */
margin: 0; /* Supprimer les marges */
padding: 0; /* Supprimer les paddings */
}
.blog-post-content ol::marker {
color: #2a41e8; /* Couleur bleue pour les numéros */
}
.blog-post-content ol > li {
counter-increment: my-counter;
}
.blog-post-content ol > li::before {
content: counter(my-counter) \".\"; /* Utiliser le compteur pour les listes ordonnées avec un point */
color: #2a41e8; /* Couleur bleue pour les numéros */
font-weight: bold; /* Pour rendre les numéros en gras */
margin-right: 0.5em; /* Espacement entre le numéro et le texte */
}
.blog-post-content ol > li > *:first-child {
display: contents; /* Appliquer display: contents; à la première balise enfant de chaque li */
}
.blog-post-content h1,
.blog-post-content h2,
.blog-post-content h3 {
color: #2a41e8;
}
.widget-content.active:before, .widget-content:hover:before {
opacity: 0.8 !important;
}
@media (max-width: 980px) {
.spec {
flex-basis: 100% !important;
max-width: 100% !important;
}
.spec:last-child {
margin-top: 16px !important; /* Ajoute une marge supérieure de 16px uniquement au dernier élément spécifique */
}
.spec-breadcrumbs {
bottom: auto !important;
top: 50% !important;
}
.article-right-flottant {
max-width: 100% !important;
margin: 0 !important;
padding: 1rem 2rem !important;
}
.blog-post.single-post.spec {
margin: 3rem 0rem !important;
}
#breadcrumbs {
transform: translateY(-20%) translateX(-26px);
}
.blog-post.single-post .blog-post-thumbnail {
width: 100%;
height: 250px;
}
}
@media screen and (max-width: 500px) {
.blog-post-content h1 {
font-size: 46px !important;
}
.blog-post-content {
padding: 32px;
}
.blog-post-content ul {
padding-inline-start: 20px;
}
.blog-post, .single-page-header .header-image {
box-shadow: none !important;
}
#breadcrumbs {
font-size: 12px !important;
}
.blog-post.single-post.spec {
margin: 0 !important;
}
.blog-post-content {
padding: 20px 2rem !important;
}
}
</style>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 948
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_body(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "body"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "body"));
// line 949
yield " <div class=\"container\">
<div class=\"row\">
<div class=\"col-md-12 margin-bottom-16 margin-top-16\" style=\"padding: 0 32px;\">
<div class=\"widget-content active text-center\" style=\"border-radius: 20px;position:relative\">
<img src=";
// line 954
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("uploads/img/6287a440d1176.jpg"), "html", null, true);
yield " alt=\"\">
<div class=\"overlay\"></div>
<nav aria-label=\"breadcrumb\" class=\"breadcrumb-container\">
<ol class=\"breadcrumb\">
<li class=\"breadcrumb-item\"><a href=\"";
// line 958
yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("homepage");
yield "\">Accueil</a></li>
>
<li class=\"breadcrumb-item active\" aria-current=\"page\">";
// line 960
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 960, $this->source); })()), "breadcrumbs", [], "any", false, false, false, 960), "html", null, true);
yield "</li>
</ol>
</nav>
<div class=\"widget-text\">
<p style=\"font-size: 30px; line-height: 45px; color: white; font-weight: 600;\">Offres d'emploi et missions freelance sans commission en France</p>
<a href=\"";
// line 965
yield (((( !$this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_ADMIN") && $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_FREELANCE")) && (CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 965, $this->source); })()), "user", [], "any", false, false, false, 965), "uniqueProfile", [], "any", false, false, false, 965), "id", [], "any", false, false, false, 965) == null))) ? ("#complete-cv-dialog") : ($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("offre_search")));
yield "\">
<span class=\"btn-mission-spec\">Voir les offres</span>
</a>
</div>
</div>
</div>
";
// line 972
yield " ";
// line 973
yield " ";
// line 974
yield " ";
// line 975
yield " ";
// line 976
yield " ";
// line 977
yield " ";
// line 978
yield " ";
// line 979
yield " ";
// line 980
yield " ";
// line 981
yield " ";
// line 982
yield "
</div>
<div class=\"row d-flex flex-wrap margin-bottom-16\">
<div class=\"blog-post single-post spec\"
style=\"border-radius: 20px; flex: 2; margin: 0 1rem; -webkit-box-flex: 2;max-width: calc(66.666% - 2rem);\">
<!-- Blog Post Content -->
<div class=\"blog-post-content\">
<h1 class=\"margin-bottom-10\"
style=\"line-height: 1.2;font-size: 50px\">";
// line 992
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 992, $this->source); })()), "bigtitle", [], "any", false, false, false, 992), "html", null, true);
yield "</h1>
<div class=\"blog-post-info-list margin-bottom-20\">
<span class=\"meta-date blog-post-info \"
style=\"width: fit-content;font-size: 12px;padding: 1px 5px;\"><svg
style=\"margin-right: 5px;vertical-align: sub;opacity: 0.3\" width=\"16\"
height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path
d=\"M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192H400V448c0 8.8-7.2 16-16 16H64c-8.8 0-16-7.2-16-16V192z\"/></svg> <span> ";
// line 1000
$context["trans_month_hash"] = ["January" => "Janvier", "February" => "Février", "March" => "Mars", "April" => "Avril", "May" => "Mai", "June" => "Juin", "July" => "Juillet", "August" => "Août", "September" => "Septembre", "October" => "Octobre", "November" => "Novembre", "December" => "Décembre"];
// line 1013
if ((Twig\Extension\CoreExtension::testEmpty(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1013, $this->source); })()), "getUpdatedAt", [], "method", false, false, false, 1013)) || (CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1013, $this->source); })()), "getCreatedAt", [], "method", false, false, false, 1013) == CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1013, $this->source); })()), "getUpdatedAt", [], "method", false, false, false, 1013)))) {
yield "Publiée le ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1013, $this->source); })()), "getCreatedAt", [], "method", false, false, false, 1013), "d"), "html", null, true);
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["trans_month_hash"]) || array_key_exists("trans_month_hash", $context) ? $context["trans_month_hash"] : (function () { throw new RuntimeError('Variable "trans_month_hash" does not exist.', 1013, $this->source); })()), $this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1013, $this->source); })()), "getCreatedAt", [], "method", false, false, false, 1013), "F"), [], "array", false, false, false, 1013), "html", null, true);
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1013, $this->source); })()), "getCreatedAt", [], "method", false, false, false, 1013), "Y"), "html", null, true);
} else {
yield "Mis à jour le ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1013, $this->source); })()), "getUpdatedAt", [], "method", false, false, false, 1013), "d"), "html", null, true);
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["trans_month_hash"]) || array_key_exists("trans_month_hash", $context) ? $context["trans_month_hash"] : (function () { throw new RuntimeError('Variable "trans_month_hash" does not exist.', 1013, $this->source); })()), $this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1013, $this->source); })()), "getUpdatedAt", [], "method", false, false, false, 1013), "F"), [], "array", false, false, false, 1013), "html", null, true);
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Twig\Extension\CoreExtension']->formatDate(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1013, $this->source); })()), "getUpdatedAt", [], "method", false, false, false, 1013), "Y"), "html", null, true);
}
yield "</span></span>
<span class=\"meta-views blog-post-info \"
style=\"width: fit-content;font-size: 12px;padding: 1px 5px;\"><svg
style=\"margin-right: 5px;vertical-align: sub;opacity: 0.3\" width=\"16\"
height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path
d=\"M288 32c-80.8 0-145.5 36.8-192.6 80.6C48.6 156 17.3 208 2.5 243.7c-3.3 7.9-3.3 16.7 0 24.6C17.3 304 48.6 356 95.4 399.4C142.5 443.2 207.2 480 288 480s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C433.5 68.8 368.8 32 288 32zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64c-7.1 0-13.9-1.2-20.3-3.3c-5.5-1.8-11.9 1.6-11.7 7.4c.3 6.9 1.3 13.8 3.2 20.7c13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3z\"/></svg><span>";
// line 1019
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1019, $this->source); })()), "view", [], "any", false, false, false, 1019), "html", null, true);
yield " vues</span></span>
<span class=\"meta-rtime blog-post-info \"
style=\"width: fit-content;font-size: 12px;padding: 1px 5px;\"><svg
style=\"margin-right: 5px;vertical-align: sub;opacity: 0.3\" width=\"16\"
height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path
d=\"M464 256A208 208 0 1 1 48 256a208 208 0 1 1 416 0zM0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z\"/></svg><span>";
// line 1025
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1025, $this->source); })()), "rtTime", [], "any", false, false, false, 1025), "html", null, true);
yield "min</span></span>
</div>
<div class=\"sidebar-sticky mobile-device\" style=\"height: 260px;\">
<div id=\"sidebar-container\" class=\"sidebar-content toc-wrapper\">
<div class=\"toc-title-container\">
<p class=\"toc-title\">
Sommaire
</p>
</div>
<div id=\"toc-container\" class=\"toc-content\">
<div id=\"ez-toc-container\"
class=\"ez-toc-v2_0_37 counter-flat ez-toc-counter ez-toc-grey ez-toc-container-direction\">
<div class=\"ez-toc-title-container\">
<span class=\"ez-toc-title-toggle\"><a
class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\"
style=\"display: none;\"><span
style=\"display: flex;align-items: center;width: 35px;height: 30px;justify-content: center;\"><svg
style=\"fill: #999;color:#999\"
xmlns=\"http://www.w3.org/2000/svg\"
class=\"list-377408\" width=\"20px\" height=\"20px\"
viewBox=\"0 0 24 24\"
fill=\"none\"><path
d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\"
fill=\"currentColor\"></path></svg><svg
style=\"fill: #999;color:#999\"
class=\"arrow-unsorted-368013\"
xmlns=\"http://www.w3.org/2000/svg\" width=\"10px\"
height=\"10px\"
viewBox=\"0 0 24 24\" version=\"1.2\"
baseProfile=\"tiny\"><path
d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"></path></svg></span></a></span>
</div>
<nav>
";
// line 1058
$context["h2_titles"] = $this->extensions['App\Twig\AppExtension']->extractH2(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1058, $this->source); })()), "content", [], "any", false, false, false, 1058));
// line 1059
yield "
<ul class=\"ez-toc-list ez-toc-list-level-1\"
style=\"margin-bottom: 0 !important; padding-left: 0 !important;\">
";
// line 1062
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["h2_titles"]) || array_key_exists("h2_titles", $context) ? $context["h2_titles"] : (function () { throw new RuntimeError('Variable "h2_titles" does not exist.', 1062, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["title"]) {
// line 1063
yield " ";
$context["anchor"] = $this->extensions['App\Twig\AppExtension']->slugify($context["title"]);
// line 1064
yield " <li class=\"ez-toc-page-1\">
<a onclick=\"applyStyle(this)\" class=\"ez-toc-link\"
href=\"#";
// line 1067
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["anchor"]) || array_key_exists("anchor", $context) ? $context["anchor"] : (function () { throw new RuntimeError('Variable "anchor" does not exist.', 1067, $this->source); })()), "html", null, true);
yield "\"
title=\"";
// line 1068
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["title"], "html", null, true);
yield "\">
<svg class=\"icon\" style=\"fill: #2a41e8 ;margin-right: 5px\"
width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg> ";
// line 1076
if ((Twig\Extension\CoreExtension::length($this->env->getCharset(), $context["title"]) > 30)) {
// line 1077
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::slice($this->env->getCharset(), $context["title"], 0, 30), "html", null, true);
yield "...
";
} else {
// line 1079
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["title"], "html", null, true);
yield "
";
}
// line 1080
yield "</a>
</li>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_key'], $context['title'], $context['_parent']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 1083
yield " </ul>
</nav>
</div>
</div>
<div class=\"toc-footer\">
<div class=\"social-section\">
<a href=\"https://www.linkedin.com/sharing/share-offsite/?url=https://reassurez-moi.fr/guide/banque\"
target=\"_blank\">
<i class=\"fa-brands fa-linkedin-in\" aria-hidden=\"true\"></i>
</a>
<a href=\"https://twitter.com/share?url=https://reassurez-moi.fr/guide/banque\"
target=\"_blank\">
<i class=\"fa-brands fa-twitter\" aria-hidden=\"true\"></i>
</a>
</div>
</div>
</div>
<div id=\"fix-sidebar-content\" class=\"mt-2\"></div>
<div id=\"sidebar-advertblock-container\" class=\"mt-2\"></div>
</div>
<!-- Post Thumbnail -->
<div class=\"blog-post-thumbnail\">
<div class=\"blog-post-thumbnail-inner\">
<img
src=\"";
// line 1108
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl(((CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1108, $this->source); })()), "publicationImage", [], "any", false, false, false, 1108)) ? (("uploads/img/" . CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1108, $this->source); })()), "publicationImage", [], "any", false, false, false, 1108), "path", [], "any", false, false, false, 1108))) : ("images/blog-04.jpg"))), "html", null, true);
yield "\"
alt=\"";
// line 1109
yield ((CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1109, $this->source); })()), "publicationImage", [], "any", false, false, false, 1109)) ? ($this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1109, $this->source); })()), "publicationImage", [], "any", false, false, false, 1109), "name", [], "any", false, false, false, 1109), "html", null, true)) : (""));
yield "\">
</div>
</div>
<!-- Post Content -->
";
// line 1114
$context["publication_content_with_anchors"] = $this->extensions['App\Twig\AppExtension']->addH2Anchors(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1114, $this->source); })()), "content", [], "any", false, false, false, 1114));
// line 1115
yield "
<!-- Blog Post Content -->
";
// line 1118
yield Twig\Extension\CoreExtension::replace(Twig\Extension\CoreExtension::replace((isset($context["publication_content_with_anchors"]) || array_key_exists("publication_content_with_anchors", $context) ? $context["publication_content_with_anchors"] : (function () { throw new RuntimeError('Variable "publication_content_with_anchors" does not exist.', 1118, $this->source); })()), ["<li><p>" => "<li>", "</p></li>" => "</li>"]), ["https://www.freelance-dispo.fr" => "https://www.workdispo.com"]);
// line 1120
yield "
";
// line 1123
yield "
<!-- Share Buttons -->
";
// line 1125
yield from $this->loadTemplate("common/social_share.html.twig", "page/page.html.twig", 1125)->unwrap()->yield($context);
// line 1126
yield "
</div>
</div>
<div class=\"article-right-flottant\"
style=\"border-radius: 20px; flex: 1; margin: 0; -webkit-box-flex: 1;max-width: calc(33.333% - 2rem);padding: 0;position: relative;\">
<div class=\"margin-bottom-4\">
<script src=\"https://platform.linkedin.com/in.js\"
type=\"text/javascript\"> lang: fr_FR</script>
<script type=\"IN/FollowCompany\" data-id=\"35595945\"
data-counter=\"right\"></script>
</div>
<div class=\"sidebar-sticky large-device\" style=\"height: 260px;\">
<div id=\"sidebar-container\" class=\"sidebar-content toc-wrapper\">
<div class=\"toc-title-container\">
<p class=\"toc-title\">
Sommaire
</p>
</div>
<div id=\"toc-container\" class=\"toc-content\">
<div id=\"ez-toc-container\"
class=\"ez-toc-v2_0_37 counter-flat ez-toc-counter ez-toc-grey ez-toc-container-direction\">
<div class=\"ez-toc-title-container\">
<span class=\"ez-toc-title-toggle\"><a
class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\"
style=\"display: none;\"><span
style=\"display: flex;align-items: center;width: 35px;height: 30px;justify-content: center;\"><svg
style=\"fill: #999;color:#999\"
xmlns=\"http://www.w3.org/2000/svg\"
class=\"list-377408\" width=\"20px\" height=\"20px\"
viewBox=\"0 0 24 24\"
fill=\"none\"><path
d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\"
fill=\"currentColor\"></path></svg><svg
style=\"fill: #999;color:#999\"
class=\"arrow-unsorted-368013\"
xmlns=\"http://www.w3.org/2000/svg\" width=\"10px\"
height=\"10px\"
viewBox=\"0 0 24 24\" version=\"1.2\"
baseProfile=\"tiny\"><path
d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"></path></svg></span></a></span>
</div>
<nav>
";
// line 1169
$context["h2_titles"] = $this->extensions['App\Twig\AppExtension']->extractH2(CoreExtension::getAttribute($this->env, $this->source, (isset($context["publication"]) || array_key_exists("publication", $context) ? $context["publication"] : (function () { throw new RuntimeError('Variable "publication" does not exist.', 1169, $this->source); })()), "content", [], "any", false, false, false, 1169));
// line 1170
yield "
<ul class=\"ez-toc-list ez-toc-list-level-1\"
style=\"margin-bottom: 0 !important; padding-left: 0 !important;\">
";
// line 1173
$context['_parent'] = $context;
$context['_seq'] = CoreExtension::ensureTraversable((isset($context["h2_titles"]) || array_key_exists("h2_titles", $context) ? $context["h2_titles"] : (function () { throw new RuntimeError('Variable "h2_titles" does not exist.', 1173, $this->source); })()));
foreach ($context['_seq'] as $context["_key"] => $context["title"]) {
// line 1174
yield " ";
$context["anchor"] = $this->extensions['App\Twig\AppExtension']->slugify($context["title"]);
// line 1175
yield " <li class=\"ez-toc-page-1\">
<a onclick=\"applyStyle(this)\" class=\"ez-toc-link\"
href=\"#";
// line 1178
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((isset($context["anchor"]) || array_key_exists("anchor", $context) ? $context["anchor"] : (function () { throw new RuntimeError('Variable "anchor" does not exist.', 1178, $this->source); })()), "html", null, true);
yield "\"
title=\"";
// line 1179
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["title"], "html", null, true);
yield "\">
<svg class=\"icon\" style=\"fill: #2a41e8 ;margin-right: 5px\"
width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg> ";
// line 1187
if ((Twig\Extension\CoreExtension::length($this->env->getCharset(), $context["title"]) > 30)) {
// line 1188
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(Twig\Extension\CoreExtension::slice($this->env->getCharset(), $context["title"], 0, 30), "html", null, true);
yield "...
";
} else {
// line 1190
yield " ";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["title"], "html", null, true);
yield "
";
}
// line 1191
yield "</a>
</li>
";
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_key'], $context['title'], $context['_parent']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 1194
yield " </ul>
</nav>
</div>
</div>
<div class=\"toc-footer\">
<div class=\"social-section\">
<a href=\"https://www.linkedin.com/sharing/share-offsite/?url=https://reassurez-moi.fr/guide/banque\"
target=\"_blank\">
<i class=\"fa-brands fa-linkedin-in\" aria-hidden=\"true\"></i>
</a>
<a href=\"https://twitter.com/share?url=https://reassurez-moi.fr/guide/banque\"
target=\"_blank\">
<i class=\"fa-brands fa-twitter\" aria-hidden=\"true\"></i>
</a>
</div>
</div>
</div>
<div id=\"fix-sidebar-content\" class=\"mt-2\"></div>
<div id=\"sidebar-advertblock-container\" class=\"mt-2\"></div>
</div>
<div class=\"blog-post single-post sticky-bottom\"
style=\"margin-bottom: 0;display: none; flex-direction: column; padding: 12px; border-radius: 20px; position: sticky; top: 53%; background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(https://www.abcportage.fr/wp-content/themes/abcportage/assets/build/img/img_cta_right_small.jpg); background-size: cover; color: white;\">
";
// line 1217
yield " <h3 style=\"text-align: center;margin: 1rem;color:white;font-size:23px;\">Missions et emplois
disponibles</h3>
<div class=\"d-flex align-items-center\" style=\"padding-left: 24px;margin: 5px 0;\">
<svg style=\"fill: #2a41e8 ;margin-right: 5px\" width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg>
</span>
<span>Emplois et missions freelance</span>
</div>
<div class=\"d-flex align-items-center\" style=\"padding-left: 24px;margin: 5px 0;\">
<svg style=\"fill: #2a41e8 ;margin-right: 5px\" width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg>
</span>
<span>Emplois et missions avec du télétravail</span>
</div>
<div class=\"d-flex align-items-center\" style=\"padding-left: 24px;margin: 5px 0;\">
<svg style=\"fill: #2a41e8 ;margin-right: 5px\" width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg>
</span>
<span>Des offres sur toute la France</span>
</div>
<span style=\"margin: 1rem auto\"><a
href=\"";
// line 1253
yield (((( !$this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_ADMIN") && $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_FREELANCE")) && (CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 1253, $this->source); })()), "user", [], "any", false, false, false, 1253), "uniqueProfile", [], "any", false, false, false, 1253), "id", [], "any", false, false, false, 1253) == null))) ? ("#complete-cv-dialog") : ($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("offre_search")));
yield "\"><span
class=\"btn-mission-spec-flottant\"
style=\"color: #FFFFFF\">Voir les offres</span></a></span>
</div>
</div>
</div>
<!-- Scroll detection block -->
<div id=\"scrollBlock\" class=\"scroll-block hidden\"
";
// line 1266
yield " >
<div style=\"text-align:center;\">
<div class=\"closeButtonContainer\">
<button onclick=\"closeScrollBlock()\" id=\"closeButton\">×</button>
</div>
<p style=\"color:white;font-size:20px;font-weight:700;margin-bottom: 32px;\">Mission WorkDisponibles</p>
<span style=\"margin: 2rem auto\">
<a
href=\"";
// line 1274
yield (((( !$this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_ADMIN") && $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_FREELANCE")) && (CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, // line 1275
(isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 1275, $this->source); })()), "user", [], "any", false, false, false, 1275), "uniqueProfile", [], "any", false, false, false, 1275), "id", [], "any", false, false, false, 1275) == null))) ? ("#complete-cv-dialog") : ($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("mission_search_default")));
yield "\"
>
<span class=\"btn-mission-spec-flottant\" style=\"color: #FFFFFF\">Voir les missions</span>
</a>
</span>
</div>
</div>
</div>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 1285
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_javascripts(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
// line 1286
yield " <script>
document.addEventListener(\"DOMContentLoaded\", function () {
// JavaScript to handle scroll event
window.addEventListener('scroll', function () {
// Get the scroll position
var scrollPosition = window.scrollY;
// Define the threshold to show the block
var threshold = 300; // Adjust as needed
// Get the scroll block element
var scrollBlock = document.getElementById('scrollBlock');
// Show or hide the block based on scroll position
if (scrollPosition > threshold) {
scrollBlock.classList.remove('hidden');
scrollBlock.classList.add('visible');
} else {
scrollBlock.classList.remove('visible');
scrollBlock.classList.add('hidden');
}
});
});
// Fonction pour fermer le bloc de détection du défilement
function closeScrollBlock() {
console.log(\"Fermeture du bloc de détection du défilement\");
var scrollBlock = document.getElementById('scrollBlock');
scrollBlock.classList.remove('visible');
scrollBlock.classList.add('hidden_btn');
}
document.addEventListener('scroll', function () {
const container = document.querySelector('.article-right-flottant');
const stickyBottom = document.querySelector('.sticky-bottom');
const containerRect = container.getBoundingClientRect();
const windowHeight = window.innerHeight;
const contentHeight = containerRect.height;
// Assuming scrollPosition is the current vertical scroll position
const scrollPosition = window.scrollY;
// Fixed threshold of 250 pixels
const fixedThreshold = 5;
// Calculate how close we are to the bottom of the content
const distanceToBottom = contentHeight - (scrollPosition + windowHeight);
console.log(Math.abs(distanceToBottom))
if (distanceToBottom < 0) {
if (Math.abs(distanceToBottom) >= 357 || window.scrollY <= 199) {
stickyBottom.style.display = 'none';
} else {
stickyBottom.style.display = 'flex';
}
} else {
// Check if we are within 250 pixels from the bottom
if (distanceToBottom <= fixedThreshold || window.scrollY <= 199) {
stickyBottom.style.display = 'none';
} else {
stickyBottom.style.display = 'flex';
}
}
});
function applyStyle(element) {
// Supprimer la classe 'active' de tous les liens
const links = document.querySelectorAll('.large-device .ez-toc-link');
links.forEach(link => link.classList.remove('active'));
if (window.innerWidth <= 500) {
const links_mobile = document.querySelectorAll('.mobile-device .ez-toc-link');
links_mobile.forEach(link => link.classList.remove('active'));
}
// Ajouter la classe 'active' au lien cliqué
element.classList.add('active');
// Appliquez le style à l'élément <a> lorsque le lien est cliqué
// element.style.color = 'grey';
// element.style.opacity = '0.8';
element.classList.add('clicked-link');
}
// Sélectionnez tous les liens de votre sommaire
const links = document.querySelectorAll('.large-device .ez-toc-link');
const headings = Array.from(links).map(link => {
const id = link.getAttribute('href').substring(1);
return document.getElementById(id);
});
let currentActiveSection = null;
let isScrollingToLink = false;
function scrollToElement(element, container) {
if (!isElementInViewport(element, container) && !isScrollingToLink) {
isScrollingToLink = true;
document.body.style.overflow = 'hidden';
element.scrollIntoView({ behavior: 'smooth', block: 'start' });
setTimeout(() => {
document.body.style.overflow = '';
isScrollingToLink = false;
}, 500);
}
}
function isElementInViewport(element, container) {
var elementRect = element.getBoundingClientRect();
var containerRect = container.getBoundingClientRect();
return (
elementRect.top >= containerRect.top &&
elementRect.left >= containerRect.left &&
elementRect.bottom <= containerRect.bottom &&
elementRect.right <= containerRect.right
);
}
function updateActiveLink() {
let indexToActivate = -1;
// Parcours du bas vers le haut
for (let i = headings.length - 1; i >= 0; i--) {
const heading = headings[i];
if (heading) {
const rect = heading.getBoundingClientRect();
if (rect.top <= 0) { // 0px du haut de la fenêtre
indexToActivate = i;
break;
}
}
}
links.forEach(link => link.classList.remove('active'));
if (indexToActivate !== -1) {
links[indexToActivate].classList.add('active');
// Scroll le menu pour garder le lien actif visible
const activeLink = links[indexToActivate];
const tocList = activeLink.closest('.ez-toc-list');
if (tocList && activeLink) {
const linkRect = activeLink.getBoundingClientRect();
const listRect = tocList.getBoundingClientRect();
if (linkRect.top < listRect.top || linkRect.bottom > listRect.bottom) {
tocList.scrollTop += linkRect.top - listRect.top - listRect.height / 2 + linkRect.height / 2;
}
}
}
}
window.addEventListener('scroll', updateActiveLink);
document.addEventListener('DOMContentLoaded', () => {
const links = document.querySelectorAll('.large-device .ez-toc-link');
if (links.length > 0) {
links[0].classList.add('active');
}
if (window.innerWidth <= 500) {
const links_mobile = document.querySelectorAll('.mobile-device .ez-toc-link');
if (links_mobile.length > 0) {
links_mobile[0].classList.add('active');
}
}
});
// window.addEventListener('scroll', () => {
// const stickyBottom = document.querySelector('.sticky-bottom');
// // console.log(window.scrollY); // ou window.pageYOffset
//
// });
</script>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
/**
* @codeCoverageIgnore
*/
public function getTemplateName(): string
{
return "page/page.html.twig";
}
/**
* @codeCoverageIgnore
*/
public function isTraitable(): bool
{
return false;
}
/**
* @codeCoverageIgnore
*/
public function getDebugInfo(): array
{
return array ( 1636 => 1286, 1623 => 1285, 1602 => 1275, 1601 => 1274, 1591 => 1266, 1576 => 1253, 1538 => 1217, 1514 => 1194, 1506 => 1191, 1500 => 1190, 1494 => 1188, 1492 => 1187, 1481 => 1179, 1477 => 1178, 1472 => 1175, 1469 => 1174, 1465 => 1173, 1460 => 1170, 1458 => 1169, 1413 => 1126, 1411 => 1125, 1407 => 1123, 1403 => 1120, 1401 => 1118, 1396 => 1115, 1394 => 1114, 1386 => 1109, 1382 => 1108, 1355 => 1083, 1347 => 1080, 1341 => 1079, 1335 => 1077, 1333 => 1076, 1322 => 1068, 1318 => 1067, 1313 => 1064, 1310 => 1063, 1306 => 1062, 1301 => 1059, 1299 => 1058, 1263 => 1025, 1254 => 1019, 1231 => 1013, 1229 => 1000, 1218 => 992, 1206 => 982, 1204 => 981, 1202 => 980, 1200 => 979, 1198 => 978, 1196 => 977, 1194 => 976, 1192 => 975, 1190 => 974, 1188 => 973, 1186 => 972, 1177 => 965, 1169 => 960, 1164 => 958, 1157 => 954, 1150 => 949, 1137 => 948, 694 => 514, 681 => 513, 666 => 510, 660 => 508, 658 => 507, 653 => 505, 649 => 504, 645 => 503, 641 => 502, 160 => 23, 147 => 22, 134 => 19, 128 => 17, 126 => 16, 123 => 15, 117 => 13, 115 => 12, 106 => 5, 93 => 4, 68 => 3, 45 => 1,);
}
public function getSourceContext(): Source
{
return new Source("{% extends 'base.html.twig' %}
{% block title %} {{ publication.title }} | WorkDispo {% endblock %}
{% block meta_date_desc %}
<script type=\"application/ld+json\">
{
\"@context\" : \"https://schema.org\",
\"@type\" : \"WebSite\",
\"name\" : \"WorkDispo\",
\"url\" : \"https://www.workdispo.com/\",
{% if publication and publication.getCreatedAt() is not empty %}
\"datePublished\": \"{{ publication.getCreatedAt()|date('c') }}\",
{% endif %}
{% if publication and publication.getUpdatedAt() is not empty %}
\"dateModified\": \"{{ publication.getUpdatedAt()|date('c') }}\"
{% endif %}
}
</script>
{% endblock %}
{% block meta %}
<meta charset=\"utf-8\">
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, maximum-scale=3\">
<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\"/>
<script type=\"text/javascript\">(window.NREUM || (NREUM = {})).init = {ajax: {deny_list: [\"bam.nr-data.net\"]}};
(window.NREUM || (NREUM = {})).loader_config = {
licenseKey: \"NRJS-8c6c895b97ea60d5ee0\",
applicationID: \"1333848373\"
};
window.NREUM || (NREUM = {}), __nr_require = function (t, e, n) {
function r(n) {
if (!e[n]) {
var i = e[n] = {exports: {}};
t[n][0].call(i.exports, function (e) {
var i = t[n][1][e];
return r(i || e)
}, i, i.exports)
}
return e[n].exports
}
if (\"function\" == typeof __nr_require) return __nr_require;
for (var i = 0; i < n.length; i++) r(n[i]);
return r
}({
1: [function (t, e, n) {
function r() {
}
function i(t, e, n, r) {
return function () {
return s.recordSupportability(\"API/\" + e + \"/called\"), o(t + e, [u.now()].concat(c(arguments)), n ? null : this, r), n ? void 0 : this
}
}
var o = t(\"handle\"), a = t(9), c = t(10), f = t(\"ee\").get(\"tracer\"), u = t(\"loader\"), s = t(4),
d = NREUM;
\"undefined\" == typeof window.newrelic && (newrelic = d);
var p = [\"setPageViewName\", \"setCustomAttribute\", \"setErrorHandler\", \"finished\", \"addToTrace\", \"inlineHit\", \"addRelease\"],
l = \"api-\", v = l + \"ixn-\";
a(p, function (t, e) {
d[e] = i(l, e, !0, \"api\")
}), d.addPageAction = i(l, \"addPageAction\", !0), d.setCurrentRouteName = i(l, \"routeName\", !0), e.exports = newrelic, d.interaction = function () {
return (new r).get()
};
var m = r.prototype = {
createTracer: function (t, e) {
var n = {}, r = this, i = \"function\" == typeof e;
return o(v + \"tracer\", [u.now(), t, n], r), function () {
if (f.emit((i ? \"\" : \"no-\") + \"fn-start\", [u.now(), r, i], n), i) try {
return e.apply(this, arguments)
} catch (t) {
throw f.emit(\"fn-err\", [arguments, this, t], n), t
} finally {
f.emit(\"fn-end\", [u.now()], n)
}
}
}
};
a(\"actionText,setName,setAttribute,save,ignore,onEnd,getContext,end,get\".split(\",\"), function (t, e) {
m[e] = i(v, e)
}), newrelic.noticeError = function (t, e) {
\"string\" == typeof t && (t = new Error(t)), s.recordSupportability(\"API/noticeError/called\"), o(\"err\", [t, u.now(), !1, e])
}
}, {}], 2: [function (t, e, n) {
function r(t) {
if (NREUM.init) {
for (var e = NREUM.init, n = t.split(\".\"), r = 0; r < n.length - 1; r++) if (e = e[n[r]], \"object\" != typeof e) return;
return e = e[n[n.length - 1]]
}
}
e.exports = {getConfiguration: r}
}, {}], 3: [function (t, e, n) {
var r = !1;
try {
var i = Object.defineProperty({}, \"passive\", {
get: function () {
r = !0
}
});
window.addEventListener(\"testPassive\", null, i), window.removeEventListener(\"testPassive\", null, i)
} catch (o) {
}
e.exports = function (t) {
return r ? {passive: !0, capture: !!t} : !!t
}
}, {}], 4: [function (t, e, n) {
function r(t, e) {
var n = [a, t, {name: t}, e];
return o(\"storeMetric\", n, null, \"api\"), n
}
function i(t, e) {
var n = [c, t, {name: t}, e];
return o(\"storeEventMetrics\", n, null, \"api\"), n
}
var o = t(\"handle\"), a = \"sm\", c = \"cm\";
e.exports = {
constants: {SUPPORTABILITY_METRIC: a, CUSTOM_METRIC: c},
recordSupportability: r,
recordCustom: i
}
}, {}], 5: [function (t, e, n) {
function r() {
return c.exists && performance.now ? Math.round(performance.now()) : (o = Math.max((new Date).getTime(), o)) - a
}
function i() {
return o
}
var o = (new Date).getTime(), a = o, c = t(11);
e.exports = r, e.exports.offset = a, e.exports.getLastTimestamp = i
}, {}], 6: [function (t, e, n) {
function r(t, e) {
var n = t.getEntries();
n.forEach(function (t) {
\"first-paint\" === t.name ? l(\"timing\", [\"fp\", Math.floor(t.startTime)]) : \"first-contentful-paint\" === t.name && l(\"timing\", [\"fcp\", Math.floor(t.startTime)])
})
}
function i(t, e) {
var n = t.getEntries();
if (n.length > 0) {
var r = n[n.length - 1];
if (u && u < r.startTime) return;
var i = [r], o = a({});
o && i.push(o), l(\"lcp\", i)
}
}
function o(t) {
t.getEntries().forEach(function (t) {
t.hadRecentInput || l(\"cls\", [t])
})
}
function a(t) {
var e = navigator.connection || navigator.mozConnection || navigator.webkitConnection;
if (e) return e.type && (t[\"net-type\"] = e.type), e.effectiveType && (t[\"net-etype\"] = e.effectiveType), e.rtt && (t[\"net-rtt\"] = e.rtt), e.downlink && (t[\"net-dlink\"] = e.downlink), t
}
function c(t) {
if (t instanceof y && !w) {
var e = Math.round(t.timeStamp), n = {type: t.type};
a(n), e <= v.now() ? n.fid = v.now() - e : e > v.offset && e <= Date.now() ? (e -= v.offset, n.fid = v.now() - e) : e = v.now(), w = !0, l(\"timing\", [\"fi\", e, n])
}
}
function f(t) {
\"hidden\" === t && (u = v.now(), l(\"pageHide\", [u]))
}
if (!(\"init\" in NREUM && \"page_view_timing\" in NREUM.init && \"enabled\" in NREUM.init.page_view_timing && NREUM.init.page_view_timing.enabled === !1)) {
var u, s, d, p, l = t(\"handle\"), v = t(\"loader\"), m = t(8), g = t(3), y = NREUM.o.EV;
if (\"PerformanceObserver\" in window && \"function\" == typeof window.PerformanceObserver) {
s = new PerformanceObserver(r);
try {
s.observe({entryTypes: [\"paint\"]})
} catch (h) {
}
d = new PerformanceObserver(i);
try {
d.observe({entryTypes: [\"largest-contentful-paint\"]})
} catch (h) {
}
p = new PerformanceObserver(o);
try {
p.observe({type: \"layout-shift\", buffered: !0})
} catch (h) {
}
}
if (\"addEventListener\" in document) {
var w = !1, b = [\"click\", \"keydown\", \"mousedown\", \"pointerdown\", \"touchstart\"];
b.forEach(function (t) {
document.addEventListener(t, c, g(!1))
})
}
m(f)
}
}, {}], 7: [function (t, e, n) {
function r(t, e) {
if (!i) return !1;
if (t !== i) return !1;
if (!o) return !1;
for (var n = o.split(\".\"), r = e.split(\".\"), a = 0; a < r.length; a++) if (r[a] !== n[a]) return !1;
return !0
}
var i = null, o = null, a = /Version\\/(\\S+)\\s+Safari/;
if (navigator.userAgent) {
var c = navigator.userAgent, f = c.match(a);
f && c.indexOf(\"Chrome\") === -1 && c.indexOf(\"Chromium\") === -1 && (i = \"Safari\", o = f[1])
}
e.exports = {agent: i, version: o, match: r}
}, {}], 8: [function (t, e, n) {
function r(t) {
function e() {
t(c && document[c] ? document[c] : document[o] ? \"hidden\" : \"visible\")
}
\"addEventListener\" in document && a && document.addEventListener(a, e, i(!1))
}
var i = t(3);
e.exports = r;
var o, a, c;
\"undefined\" != typeof document.hidden ? (o = \"hidden\", a = \"visibilitychange\", c = \"visibilityState\") : \"undefined\" != typeof document.msHidden ? (o = \"msHidden\", a = \"msvisibilitychange\") : \"undefined\" != typeof document.webkitHidden && (o = \"webkitHidden\", a = \"webkitvisibilitychange\", c = \"webkitVisibilityState\")
}, {}], 9: [function (t, e, n) {
function r(t, e) {
var n = [], r = \"\", o = 0;
for (r in t) i.call(t, r) && (n[o] = e(r, t[r]), o += 1);
return n
}
var i = Object.prototype.hasOwnProperty;
e.exports = r
}, {}], 10: [function (t, e, n) {
function r(t, e, n) {
e || (e = 0), \"undefined\" == typeof n && (n = t ? t.length : 0);
for (var r = -1, i = n - e || 0, o = Array(i < 0 ? 0 : i); ++r < i;) o[r] = t[e + r];
return o
}
e.exports = r
}, {}], 11: [function (t, e, n) {
e.exports = {exists: \"undefined\" != typeof window.performance && window.performance.timing && \"undefined\" != typeof window.performance.timing.navigationStart}
}, {}], ee: [function (t, e, n) {
function r() {
}
function i(t) {
function e(t) {
return t && t instanceof r ? t : t ? u(t, f, a) : a()
}
function n(n, r, i, o, a) {
if (a !== !1 && (a = !0), !l.aborted || o) {
t && a && t(n, r, i);
for (var c = e(i), f = m(n), u = f.length, s = 0; s < u; s++) f[s].apply(c, r);
var p = d[w[n]];
return p && p.push([b, n, r, c]), c
}
}
function o(t, e) {
h[t] = m(t).concat(e)
}
function v(t, e) {
var n = h[t];
if (n) for (var r = 0; r < n.length; r++) n[r] === e && n.splice(r, 1)
}
function m(t) {
return h[t] || []
}
function g(t) {
return p[t] = p[t] || i(n)
}
function y(t, e) {
l.aborted || s(t, function (t, n) {
e = e || \"feature\", w[n] = e, e in d || (d[e] = [])
})
}
var h = {}, w = {}, b = {
on: o,
addEventListener: o,
removeEventListener: v,
emit: n,
get: g,
listeners: m,
context: e,
buffer: y,
abort: c,
aborted: !1
};
return b
}
function o(t) {
return u(t, f, a)
}
function a() {
return new r
}
function c() {
(d.api || d.feature) && (l.aborted = !0, d = l.backlog = {})
}
var f = \"nr@context\", u = t(\"gos\"), s = t(9), d = {}, p = {}, l = e.exports = i();
e.exports.getOrSetContext = o, l.backlog = d
}, {}], gos: [function (t, e, n) {
function r(t, e, n) {
if (i.call(t, e)) return t[e];
var r = n();
if (Object.defineProperty && Object.keys) try {
return Object.defineProperty(t, e, {value: r, writable: !0, enumerable: !1}), r
} catch (o) {
}
return t[e] = r, r
}
var i = Object.prototype.hasOwnProperty;
e.exports = r
}, {}], handle: [function (t, e, n) {
function r(t, e, n, r) {
i.buffer([t], r), i.emit(t, e, n)
}
var i = t(\"ee\").get(\"handle\");
e.exports = r, r.ee = i
}, {}], id: [function (t, e, n) {
function r(t) {
var e = typeof t;
return !t || \"object\" !== e && \"function\" !== e ? -1 : t === window ? 0 : a(t, o, function () {
return i++
})
}
var i = 1, o = \"nr@id\", a = t(\"gos\");
e.exports = r
}, {}], loader: [function (t, e, n) {
function r() {
if (!M++) {
var t = T.info = NREUM.info, e = m.getElementsByTagName(\"script\")[0];
if (setTimeout(u.abort, 3e4), !(t && t.licenseKey && t.applicationID && e)) return u.abort();
f(x, function (e, n) {
t[e] || (t[e] = n)
});
var n = a();
c(\"mark\", [\"onload\", n + T.offset], null, \"api\"), c(\"timing\", [\"load\", n]);
var r = m.createElement(\"script\");
0 === t.agent.indexOf(\"http://\") || 0 === t.agent.indexOf(\"https://\") ? r.src = t.agent : r.src = l + \"://\" + t.agent, e.parentNode.insertBefore(r, e)
}
}
function i() {
\"complete\" === m.readyState && o()
}
function o() {
c(\"mark\", [\"domContent\", a() + T.offset], null, \"api\")
}
var a = t(5), c = t(\"handle\"), f = t(9), u = t(\"ee\"), s = t(7), d = t(2), p = t(3),
l = d.getConfiguration(\"ssl\") === !1 ? \"http\" : \"https\", v = window, m = v.document,
g = \"addEventListener\", y = \"attachEvent\", h = v.XMLHttpRequest, w = h && h.prototype, b = !1;
NREUM.o = {
ST: setTimeout,
SI: v.setImmediate,
CT: clearTimeout,
XHR: h,
REQ: v.Request,
EV: v.Event,
PR: v.Promise,
MO: v.MutationObserver
};
var E = \"\" + location, x = {
beacon: \"bam.nr-data.net\",
errorBeacon: \"bam.nr-data.net\",
agent: \"js-agent.newrelic.com/nr-1216.min.js\"
}, O = h && w && w[g] && !/CriOS/.test(navigator.userAgent), T = e.exports = {
offset: a.getLastTimestamp(),
now: a,
origin: E,
features: {},
xhrWrappable: O,
userAgent: s,
disabled: b
};
if (!b) {
t(1), t(6), m[g] ? (m[g](\"DOMContentLoaded\", o, p(!1)), v[g](\"load\", r, p(!1))) : (m[y](\"onreadystatechange\", i), v[y](\"onload\", r)), c(\"mark\", [\"firstbyte\", a.getLastTimestamp()], null, \"api\");
var M = 0
}
}, {}], \"wrap-function\": [function (t, e, n) {
function r(t, e) {
function n(e, n, r, f, u) {
function nrWrapper() {
var o, a, s, p;
try {
a = this, o = d(arguments), s = \"function\" == typeof r ? r(o, a) : r || {}
} catch (l) {
i([l, \"\", [o, a, f], s], t)
}
c(n + \"start\", [o, a, f], s, u);
try {
return p = e.apply(a, o)
} catch (v) {
throw c(n + \"err\", [o, a, v], s, u), v
} finally {
c(n + \"end\", [o, a, p], s, u)
}
}
return a(e) ? e : (n || (n = \"\"), nrWrapper[p] = e, o(e, nrWrapper, t), nrWrapper)
}
function r(t, e, r, i, o) {
r || (r = \"\");
var c, f, u, s = \"-\" === r.charAt(0);
for (u = 0; u < e.length; u++) f = e[u], c = t[f], a(c) || (t[f] = n(c, s ? f + r : r, i, f, o))
}
function c(n, r, o, a) {
if (!v || e) {
var c = v;
v = !0;
try {
t.emit(n, r, o, e, a)
} catch (f) {
i([f, n, r, o], t)
}
v = c
}
}
return t || (t = s), n.inPlace = r, n.flag = p, n
}
function i(t, e) {
e || (e = s);
try {
e.emit(\"internal-error\", t)
} catch (n) {
}
}
function o(t, e, n) {
if (Object.defineProperty && Object.keys) try {
var r = Object.keys(t);
return r.forEach(function (n) {
Object.defineProperty(e, n, {
get: function () {
return t[n]
}, set: function (e) {
return t[n] = e, e
}
})
}), e
} catch (o) {
i([o], n)
}
for (var a in t) l.call(t, a) && (e[a] = t[a]);
return e
}
function a(t) {
return !(t && t instanceof Function && t.apply && !t[p])
}
function c(t, e) {
var n = e(t);
return n[p] = t, o(t, n, s), n
}
function f(t, e, n) {
var r = t[e];
t[e] = c(r, n)
}
function u() {
for (var t = arguments.length, e = new Array(t), n = 0; n < t; ++n) e[n] = arguments[n];
return e
}
var s = t(\"ee\"), d = t(10), p = \"nr@original\", l = Object.prototype.hasOwnProperty, v = !1;
e.exports = r, e.exports.wrapFunction = c, e.exports.wrapInPlace = f, e.exports.argsToArray = u
}, {}]
}, {}, [\"loader\"]);</script>
<meta property=\"og:type\" content=\"WorkDispo\"/>
<meta property=\"og:image\"
content=\"{{ asset( publication.publicationImage ? 'uploads/img/'~publication.publicationImage.path : 'images/blog-04.jpg') }}\">
<meta name=\"description\" content=\"{{ publication.description }}\">
<meta name=\"keywords\" content=\"{{ publication.keywodrs }}\">
<meta property=\"og:title\" content=\"{{ publication.title }}\"/>
{% if publication.updatedAt %}
<meta name=\"revised\" content=\"{{ publication.updatedAt|date('d/m/Y') }}\"/>
{% else %}
<meta name=\"revised\" content=\"{{ publication.createdAt|date('d/m/Y') }}\"/>
{% endif %}
{% endblock %}
{% block stylesheets %}
<style>
.blog-post-content h1 {
color: black !important;
}
.mobile-device {
display: none;
}
.large-device {
display: block;
}
.ez-toc-link {
position: relative;
padding-left: 24px; /* Adjust based on the width of the icon */
text-decoration: none; /* Remove underline */
color: blue; /* Default color */
}
.ez-toc-link .icon {
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
display: none; /* Hide icon by default */
fill: #2a41e8;
}
.ez-toc-link.active .icon,
.ez-toc-link.visited .icon {
display: block; /* Show icon when active or visited */
}
.ez-toc-link.active {
color: blue; /* Color when active */
}
.ez-toc-link.active a {
color: #2a41e8;
}
.ez-toc-link.visited {
color: gray; /* Color when visited */
}
.sidebar-sticky {
overflow-y: hidden;
}
.toc-title {
color: #000000;
font-size: 1.8rem;
font-weight: 700;
text-align: center;
margin-bottom: 1.5rem;
}
.ez-toc-container-direction {
display: flex;
flex-direction: column;
height: 100%;
}
.toc-content {
overflow: hidden; /* Cache la scrollbar horizontale */
}
.ez-toc-list {
max-height: 200px; /* Définissez la hauteur maximale de la liste défilante selon votre besoin */
overflow-y: auto; /* Permet le défilement vertical */
padding-right: 15px; /* Pour compenser la disparition de la scrollbar */
scrollbar-width: none; /* Cacher la scrollbar pour Firefox */
}
#sidebar-container::-webkit-scrollbar {
/*display: none; !* Cacher la scrollbar pour les navigateurs Webkit *!*/
}
.sidebar-sticky {
border: 3px solid #f1f1f1;
border-radius: 10px;
padding: 20px 0 10px 0;
margin-bottom: 8px;
position: sticky;
top: 14%;
}
#sidebar-container {
max-height: 230px !important;
}
.toc-container {
overflow-y: scroll;
}
.ez-toc-list::-webkit-scrollbar {
display: none;
}
.ez-toc-list li {
list-style: none;
position: relative;
padding-left: 25px;
margin-bottom: 10px;
}
.ez-toc-page-1 a.ez-toc-link {
color: gray;
text-decoration: none; /* Enlève la décoration du texte (soulignement) */
font-size: medium;
}
.ez-toc-page-1 a.ez-toc-link.active {
color: #2a41e8;
}
div.clicked-link a {
color: grey;
opacity: 0.8;
}
/*.ez-toc-list li:before {*/
/* content: \"\\f00c\"; !* Code Unicode pour l'icône de coche de Font Awesome *!*/
/* font-family: \"Font Awesome 5 Free\"; !* Police de Font Awesome *!*/
/* font-weight: 900; !* Pour la version solide de l'icône *!*/
/* color: green; !* Couleur de l'icône, vous pouvez la changer selon vos besoins *!*/
/* position: absolute;*/
/* left: 0;*/
/* top: 0;*/
/*}*/
.widget-content {
position: relative;
}
.breadcrumb-container {
font-size: 11px;
color: white;
position: absolute;
top: 0px; /* Ajustez la valeur selon votre besoin */
left: 10px; /* Ajustez la valeur selon votre besoin */
z-index: 100; /* Assurez-vous que cette valeur est plus élevée que celle de l'image */
}
.breadcrumb {
/*background-color: white;*/
padding: 10px 16px;
list-style: none;
display: flex;
align-items: center;
border-radius: 5px; /* Ajoutez des bordures arrondies si nécessaire */
}
.breadcrumb-item a {
color: white; /* Couleur du texte du lien */
text-decoration: none; /* Supprime le soulignement du lien */
cursor: pointer; /* Assure que le curseur devient une main */
}
.breadcrumb-item a:hover {
text-decoration: none; /* Soulignement au survol */
}
.breadcrumb-item.active {
color: white; /* Couleur du texte pour l'élément actif */
font-size: 12px;
text-decoration: underline;
text-decoration-color: blue; /* Couleur du soulignement */
text-decoration-thickness: 2px; /* Épaisseur du soulignement */
text-underline-offset: 4px; /* Espace entre le texte et le soulignement */
}
.breadcrumb-item.active a {
text-decoration: none; /* Supprime le soulignement pour l'élément actif */
cursor: default; /* Coursur de texte pour l'élément actif */
}
.blog-post-content ol {
margin: 0 0 0 20px !important;
}
.blog-post-content h2 {
font-weight: bold;
scroll-margin-top: 80px; /* Pour que le scroll auto s'arrête juste au début du h2 */
}
.blog-post-content h3 {
color: black !important;
font-size: 20px !important;
font-weight: bold;
display: inline-block; /* Assure que l'élément h3 ne prend que la largeur nécessaire */
text-decoration: underline; /* Soulignement du texte */
text-decoration-color: #2a41e8; /* Couleur du soulignement */
text-underline-position: under;
}
.closeButtonContainer {
display: flex;
justify-content: flex-end;
}
.scroll-block {
position: fixed;
bottom: 0; /* Initially hidden below the screen */
left: 5%;
width: 90%;
background-color: #333;
color: #fff;
padding: 12px 20px 41px 20px;
transition: bottom 0.3s ease; /* Smooth transition for hiding */
transform: translateY(100%); /* Le bloc est déplacé vers le bas de l'écran */
display: none;
}
.visible {
transform: translateY(0);
}
.hidden {
transform: translateY(100%);
}
.hidden_btn {
transform: translateY(100%) !important;
}
@media only screen and (max-width: 500px) {
#wrapper {
width: -webkit-fill-available;
}
.sidebar-sticky {
position: static !important;
margin-bottom: 1rem;
}
.ez-toc-list li {
list-style-type: none !important; /* Remove bullets from the list */
padding-left: 9px !important; /* Remove padding from the list */
}
.mobile-device {
display: block;
}
.large-device {
display: none;
}
.scroll-block {
display: block;
border-radius: 20px;
background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(https://www.abcportage.fr/wp-content/themes/abcportage/assets/build/img/img_cta_right_small.jpg);
background-size: cover;
color: white;
z-index: 200 !important;
flex-direction: column;
margin-bottom: -12px;
}
}
.btn-mission-spec {
border-radius: 50px !important;
padding: 12px 24px !important;
font-size: 20px !important;
font-weight: 500 !important;
background-clip: padding-box;
background-color: rgb(33 99 139) !important;
}
.btn-mission-spec-flottant {
border-radius: 50px !important;
padding: 10px 24px !important;
font-size: 20px !important;
font-weight: 500 !important;
background-clip: padding-box;
background-color: #2a41e8 !important;
}
#breadcrumbs {
transform: translateY(-190%);
right: 1.2% !important;
}
#breadcrumbs ul {
display: flex;
}
.btn-mission-spec:hover {
background-color: #2a41e8 !important; /* Utilisation de RGBA avec une opacité de 1 (complètement opaque) */
}
.spec-breadcrumbs {
bottom: -5rem !important;
top: auto !important;
}
.end-list-crumbs::before {
display: none !important;
}
.blog-post-content ul {
list-style-type: none; /* Supprimer les puces par défaut */
}
.blog-post-content ul li::before {
content: \"\\2022\"; /* Code Unicode pour un point (•) */
color: #2a41e8; /* Couleur bleue pour les puces */
display: inline-block;
width: 1em; /* Espacement entre la puce et le texte */
margin-left: -1em; /* Pour aligner la puce avec le texte */
}
.blog-post-content ol {
list-style-type: decimal; /* Style de numéro par défaut pour les listes ordonnées */
}
/* Styles pour les listes ordonnées */
.blog-post-content ol {
list-style-type: none; /* Supprimer les numéros par défaut */
margin: 0; /* Supprimer les marges */
padding: 0; /* Supprimer les paddings */
}
.blog-post-content ol::marker {
color: #2a41e8; /* Couleur bleue pour les numéros */
}
.blog-post-content ol > li {
counter-increment: my-counter;
}
.blog-post-content ol > li::before {
content: counter(my-counter) \".\"; /* Utiliser le compteur pour les listes ordonnées avec un point */
color: #2a41e8; /* Couleur bleue pour les numéros */
font-weight: bold; /* Pour rendre les numéros en gras */
margin-right: 0.5em; /* Espacement entre le numéro et le texte */
}
.blog-post-content ol > li > *:first-child {
display: contents; /* Appliquer display: contents; à la première balise enfant de chaque li */
}
.blog-post-content h1,
.blog-post-content h2,
.blog-post-content h3 {
color: #2a41e8;
}
.widget-content.active:before, .widget-content:hover:before {
opacity: 0.8 !important;
}
@media (max-width: 980px) {
.spec {
flex-basis: 100% !important;
max-width: 100% !important;
}
.spec:last-child {
margin-top: 16px !important; /* Ajoute une marge supérieure de 16px uniquement au dernier élément spécifique */
}
.spec-breadcrumbs {
bottom: auto !important;
top: 50% !important;
}
.article-right-flottant {
max-width: 100% !important;
margin: 0 !important;
padding: 1rem 2rem !important;
}
.blog-post.single-post.spec {
margin: 3rem 0rem !important;
}
#breadcrumbs {
transform: translateY(-20%) translateX(-26px);
}
.blog-post.single-post .blog-post-thumbnail {
width: 100%;
height: 250px;
}
}
@media screen and (max-width: 500px) {
.blog-post-content h1 {
font-size: 46px !important;
}
.blog-post-content {
padding: 32px;
}
.blog-post-content ul {
padding-inline-start: 20px;
}
.blog-post, .single-page-header .header-image {
box-shadow: none !important;
}
#breadcrumbs {
font-size: 12px !important;
}
.blog-post.single-post.spec {
margin: 0 !important;
}
.blog-post-content {
padding: 20px 2rem !important;
}
}
</style>
{% endblock %}
{% block body %}
<div class=\"container\">
<div class=\"row\">
<div class=\"col-md-12 margin-bottom-16 margin-top-16\" style=\"padding: 0 32px;\">
<div class=\"widget-content active text-center\" style=\"border-radius: 20px;position:relative\">
<img src={{ asset('uploads/img/6287a440d1176.jpg') }} alt=\"\">
<div class=\"overlay\"></div>
<nav aria-label=\"breadcrumb\" class=\"breadcrumb-container\">
<ol class=\"breadcrumb\">
<li class=\"breadcrumb-item\"><a href=\"{{ path('homepage') }}\">Accueil</a></li>
>
<li class=\"breadcrumb-item active\" aria-current=\"page\">{{ publication.breadcrumbs }}</li>
</ol>
</nav>
<div class=\"widget-text\">
<p style=\"font-size: 30px; line-height: 45px; color: white; font-weight: 600;\">Offres d'emploi et missions freelance sans commission en France</p>
<a href=\"{{ not is_granted('ROLE_ADMIN') and is_granted('ROLE_FREELANCE') and app.user.uniqueProfile.id == null ? '#complete-cv-dialog' : path('offre_search') }}\">
<span class=\"btn-mission-spec\">Voir les offres</span>
</a>
</div>
</div>
</div>
{# <div class=\"col-md-12\"> #}
{# <nav id=\"breadcrumbs\" class=\"dark spec-breadcrumbs\" #}
{# style=\"top: 0;right: 16px;bottom: -5rem;\"> #}
{# <ul> #}
{# <li><a href=\"/\">Accueil</a></li> #}
{# {% if publication.breadcrumbs %} #}
{# <li>{{ publication.breadcrumbs }}</li> #}
{# {% endif %} #}
{# </ul> #}
{# </nav> #}
{# </div> #}
</div>
<div class=\"row d-flex flex-wrap margin-bottom-16\">
<div class=\"blog-post single-post spec\"
style=\"border-radius: 20px; flex: 2; margin: 0 1rem; -webkit-box-flex: 2;max-width: calc(66.666% - 2rem);\">
<!-- Blog Post Content -->
<div class=\"blog-post-content\">
<h1 class=\"margin-bottom-10\"
style=\"line-height: 1.2;font-size: 50px\">{{ publication.bigtitle }}</h1>
<div class=\"blog-post-info-list margin-bottom-20\">
<span class=\"meta-date blog-post-info \"
style=\"width: fit-content;font-size: 12px;padding: 1px 5px;\"><svg
style=\"margin-right: 5px;vertical-align: sub;opacity: 0.3\" width=\"16\"
height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path
d=\"M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192H400V448c0 8.8-7.2 16-16 16H64c-8.8 0-16-7.2-16-16V192z\"/></svg> <span> {% set trans_month_hash = {
\"January\": \"Janvier\",
\"February\": \"Février\",
\"March\": \"Mars\",
\"April\": \"Avril\",
\"May\": \"Mai\",
\"June\": \"Juin\",
\"July\": \"Juillet\",
\"August\": \"Août\",
\"September\": \"Septembre\",
\"October\": \"Octobre\",
\"November\": \"Novembre\",
\"December\": \"Décembre\"
} %}{% if publication.getUpdatedAt() is empty or publication.getCreatedAt() == publication.getUpdatedAt() %}Publiée le {{ publication.getCreatedAt()|date(\"d\") }} {{ trans_month_hash[publication.getCreatedAt()|date(\"F\")] }} {{ publication.getCreatedAt()|date(\"Y\") }}{% else %}Mis à jour le {{ publication.getUpdatedAt()|date(\"d\") }} {{ trans_month_hash[publication.getUpdatedAt()|date(\"F\")] }} {{ publication.getUpdatedAt()|date(\"Y\") }}{% endif %}</span></span>
<span class=\"meta-views blog-post-info \"
style=\"width: fit-content;font-size: 12px;padding: 1px 5px;\"><svg
style=\"margin-right: 5px;vertical-align: sub;opacity: 0.3\" width=\"16\"
height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path
d=\"M288 32c-80.8 0-145.5 36.8-192.6 80.6C48.6 156 17.3 208 2.5 243.7c-3.3 7.9-3.3 16.7 0 24.6C17.3 304 48.6 356 95.4 399.4C142.5 443.2 207.2 480 288 480s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C433.5 68.8 368.8 32 288 32zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64c-7.1 0-13.9-1.2-20.3-3.3c-5.5-1.8-11.9 1.6-11.7 7.4c.3 6.9 1.3 13.8 3.2 20.7c13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3z\"/></svg><span>{{ publication.view }} vues</span></span>
<span class=\"meta-rtime blog-post-info \"
style=\"width: fit-content;font-size: 12px;padding: 1px 5px;\"><svg
style=\"margin-right: 5px;vertical-align: sub;opacity: 0.3\" width=\"16\"
height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path
d=\"M464 256A208 208 0 1 1 48 256a208 208 0 1 1 416 0zM0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z\"/></svg><span>{{ publication.rtTime }}min</span></span>
</div>
<div class=\"sidebar-sticky mobile-device\" style=\"height: 260px;\">
<div id=\"sidebar-container\" class=\"sidebar-content toc-wrapper\">
<div class=\"toc-title-container\">
<p class=\"toc-title\">
Sommaire
</p>
</div>
<div id=\"toc-container\" class=\"toc-content\">
<div id=\"ez-toc-container\"
class=\"ez-toc-v2_0_37 counter-flat ez-toc-counter ez-toc-grey ez-toc-container-direction\">
<div class=\"ez-toc-title-container\">
<span class=\"ez-toc-title-toggle\"><a
class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\"
style=\"display: none;\"><span
style=\"display: flex;align-items: center;width: 35px;height: 30px;justify-content: center;\"><svg
style=\"fill: #999;color:#999\"
xmlns=\"http://www.w3.org/2000/svg\"
class=\"list-377408\" width=\"20px\" height=\"20px\"
viewBox=\"0 0 24 24\"
fill=\"none\"><path
d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\"
fill=\"currentColor\"></path></svg><svg
style=\"fill: #999;color:#999\"
class=\"arrow-unsorted-368013\"
xmlns=\"http://www.w3.org/2000/svg\" width=\"10px\"
height=\"10px\"
viewBox=\"0 0 24 24\" version=\"1.2\"
baseProfile=\"tiny\"><path
d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"></path></svg></span></a></span>
</div>
<nav>
{% set h2_titles = publication.content|extract_h2 %}
<ul class=\"ez-toc-list ez-toc-list-level-1\"
style=\"margin-bottom: 0 !important; padding-left: 0 !important;\">
{% for title in h2_titles %}
{% set anchor = title|slugify %}
<li class=\"ez-toc-page-1\">
<a onclick=\"applyStyle(this)\" class=\"ez-toc-link\"
href=\"#{{ anchor }}\"
title=\"{{ title }}\">
<svg class=\"icon\" style=\"fill: #2a41e8 ;margin-right: 5px\"
width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg> {% if title|length > 30 %}
{{ title|slice(0, 30) }}...
{% else %}
{{ title }}
{% endif %}</a>
</li>
{% endfor %}
</ul>
</nav>
</div>
</div>
<div class=\"toc-footer\">
<div class=\"social-section\">
<a href=\"https://www.linkedin.com/sharing/share-offsite/?url=https://reassurez-moi.fr/guide/banque\"
target=\"_blank\">
<i class=\"fa-brands fa-linkedin-in\" aria-hidden=\"true\"></i>
</a>
<a href=\"https://twitter.com/share?url=https://reassurez-moi.fr/guide/banque\"
target=\"_blank\">
<i class=\"fa-brands fa-twitter\" aria-hidden=\"true\"></i>
</a>
</div>
</div>
</div>
<div id=\"fix-sidebar-content\" class=\"mt-2\"></div>
<div id=\"sidebar-advertblock-container\" class=\"mt-2\"></div>
</div>
<!-- Post Thumbnail -->
<div class=\"blog-post-thumbnail\">
<div class=\"blog-post-thumbnail-inner\">
<img
src=\"{{ asset( publication.publicationImage ? 'uploads/img/'~publication.publicationImage.path : 'images/blog-04.jpg') }}\"
alt=\"{{ publication.publicationImage ? publication.publicationImage.name : '' }}\">
</div>
</div>
<!-- Post Content -->
{% set publication_content_with_anchors =publication.content|add_h2_anchors %}
<!-- Blog Post Content -->
{{ publication_content_with_anchors | replace({'<li><p>': '<li>', '</p></li>': '</li>'})
| replace({'https://www.freelance-dispo.fr': 'https://www.workdispo.com'})
| raw }}
{# {{ publication.content | replace({'<li><p>': '<li>', '</p></li>': '</li>'}) | raw }} #}
<!-- Share Buttons -->
{% include 'common/social_share.html.twig' %}
</div>
</div>
<div class=\"article-right-flottant\"
style=\"border-radius: 20px; flex: 1; margin: 0; -webkit-box-flex: 1;max-width: calc(33.333% - 2rem);padding: 0;position: relative;\">
<div class=\"margin-bottom-4\">
<script src=\"https://platform.linkedin.com/in.js\"
type=\"text/javascript\"> lang: fr_FR</script>
<script type=\"IN/FollowCompany\" data-id=\"35595945\"
data-counter=\"right\"></script>
</div>
<div class=\"sidebar-sticky large-device\" style=\"height: 260px;\">
<div id=\"sidebar-container\" class=\"sidebar-content toc-wrapper\">
<div class=\"toc-title-container\">
<p class=\"toc-title\">
Sommaire
</p>
</div>
<div id=\"toc-container\" class=\"toc-content\">
<div id=\"ez-toc-container\"
class=\"ez-toc-v2_0_37 counter-flat ez-toc-counter ez-toc-grey ez-toc-container-direction\">
<div class=\"ez-toc-title-container\">
<span class=\"ez-toc-title-toggle\"><a
class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\"
style=\"display: none;\"><span
style=\"display: flex;align-items: center;width: 35px;height: 30px;justify-content: center;\"><svg
style=\"fill: #999;color:#999\"
xmlns=\"http://www.w3.org/2000/svg\"
class=\"list-377408\" width=\"20px\" height=\"20px\"
viewBox=\"0 0 24 24\"
fill=\"none\"><path
d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\"
fill=\"currentColor\"></path></svg><svg
style=\"fill: #999;color:#999\"
class=\"arrow-unsorted-368013\"
xmlns=\"http://www.w3.org/2000/svg\" width=\"10px\"
height=\"10px\"
viewBox=\"0 0 24 24\" version=\"1.2\"
baseProfile=\"tiny\"><path
d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"></path></svg></span></a></span>
</div>
<nav>
{% set h2_titles = publication.content|extract_h2 %}
<ul class=\"ez-toc-list ez-toc-list-level-1\"
style=\"margin-bottom: 0 !important; padding-left: 0 !important;\">
{% for title in h2_titles %}
{% set anchor = title|slugify %}
<li class=\"ez-toc-page-1\">
<a onclick=\"applyStyle(this)\" class=\"ez-toc-link\"
href=\"#{{ anchor }}\"
title=\"{{ title }}\">
<svg class=\"icon\" style=\"fill: #2a41e8 ;margin-right: 5px\"
width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg> {% if title|length > 30 %}
{{ title|slice(0, 30) }}...
{% else %}
{{ title }}
{% endif %}</a>
</li>
{% endfor %}
</ul>
</nav>
</div>
</div>
<div class=\"toc-footer\">
<div class=\"social-section\">
<a href=\"https://www.linkedin.com/sharing/share-offsite/?url=https://reassurez-moi.fr/guide/banque\"
target=\"_blank\">
<i class=\"fa-brands fa-linkedin-in\" aria-hidden=\"true\"></i>
</a>
<a href=\"https://twitter.com/share?url=https://reassurez-moi.fr/guide/banque\"
target=\"_blank\">
<i class=\"fa-brands fa-twitter\" aria-hidden=\"true\"></i>
</a>
</div>
</div>
</div>
<div id=\"fix-sidebar-content\" class=\"mt-2\"></div>
<div id=\"sidebar-advertblock-container\" class=\"mt-2\"></div>
</div>
<div class=\"blog-post single-post sticky-bottom\"
style=\"margin-bottom: 0;display: none; flex-direction: column; padding: 12px; border-radius: 20px; position: sticky; top: 53%; background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(https://www.abcportage.fr/wp-content/themes/abcportage/assets/build/img/img_cta_right_small.jpg); background-size: cover; color: white;\">
{# <div class=\"blog-post single-post\" style=\";display: flex;flex-direction: column;padding: 12px;border-radius: 20px;position: sticky;top: 50%;background-image: url('{{ absolute_url(asset('images/anthony-riera-kylWNDQFd5A-unsplash.jpg')) }}');background-size:cover;color:white;\"> #}
<h3 style=\"text-align: center;margin: 1rem;color:white;font-size:23px;\">Missions et emplois
disponibles</h3>
<div class=\"d-flex align-items-center\" style=\"padding-left: 24px;margin: 5px 0;\">
<svg style=\"fill: #2a41e8 ;margin-right: 5px\" width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg>
</span>
<span>Emplois et missions freelance</span>
</div>
<div class=\"d-flex align-items-center\" style=\"padding-left: 24px;margin: 5px 0;\">
<svg style=\"fill: #2a41e8 ;margin-right: 5px\" width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg>
</span>
<span>Emplois et missions avec du télétravail</span>
</div>
<div class=\"d-flex align-items-center\" style=\"padding-left: 24px;margin: 5px 0;\">
<svg style=\"fill: #2a41e8 ;margin-right: 5px\" width=\"16\" height=\"16\"
xmlns=\"http://www.w3.org/2000/svg\"
viewBox=\"0 0 448 512\">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path
d=\"M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z\"/>
</svg>
</span>
<span>Des offres sur toute la France</span>
</div>
<span style=\"margin: 1rem auto\"><a
href=\"{{ not is_granted('ROLE_ADMIN') and is_granted('ROLE_FREELANCE') and app.user.uniqueProfile.id == null ? '#complete-cv-dialog' : path('offre_search') }}\"><span
class=\"btn-mission-spec-flottant\"
style=\"color: #FFFFFF\">Voir les offres</span></a></span>
</div>
</div>
</div>
<!-- Scroll detection block -->
<div id=\"scrollBlock\" class=\"scroll-block hidden\"
{# style=\"padding: 12px;display: flex;flex-direction: column;margin-bottom: -12px;\" #}
>
<div style=\"text-align:center;\">
<div class=\"closeButtonContainer\">
<button onclick=\"closeScrollBlock()\" id=\"closeButton\">×</button>
</div>
<p style=\"color:white;font-size:20px;font-weight:700;margin-bottom: 32px;\">Mission WorkDisponibles</p>
<span style=\"margin: 2rem auto\">
<a
href=\"{{ not is_granted('ROLE_ADMIN') and is_granted('ROLE_FREELANCE')
and app.user.uniqueProfile.id == null ? '#complete-cv-dialog' : path('mission_search_default') }}\"
>
<span class=\"btn-mission-spec-flottant\" style=\"color: #FFFFFF\">Voir les missions</span>
</a>
</span>
</div>
</div>
</div>
{% endblock %}
{% block javascripts %}
<script>
document.addEventListener(\"DOMContentLoaded\", function () {
// JavaScript to handle scroll event
window.addEventListener('scroll', function () {
// Get the scroll position
var scrollPosition = window.scrollY;
// Define the threshold to show the block
var threshold = 300; // Adjust as needed
// Get the scroll block element
var scrollBlock = document.getElementById('scrollBlock');
// Show or hide the block based on scroll position
if (scrollPosition > threshold) {
scrollBlock.classList.remove('hidden');
scrollBlock.classList.add('visible');
} else {
scrollBlock.classList.remove('visible');
scrollBlock.classList.add('hidden');
}
});
});
// Fonction pour fermer le bloc de détection du défilement
function closeScrollBlock() {
console.log(\"Fermeture du bloc de détection du défilement\");
var scrollBlock = document.getElementById('scrollBlock');
scrollBlock.classList.remove('visible');
scrollBlock.classList.add('hidden_btn');
}
document.addEventListener('scroll', function () {
const container = document.querySelector('.article-right-flottant');
const stickyBottom = document.querySelector('.sticky-bottom');
const containerRect = container.getBoundingClientRect();
const windowHeight = window.innerHeight;
const contentHeight = containerRect.height;
// Assuming scrollPosition is the current vertical scroll position
const scrollPosition = window.scrollY;
// Fixed threshold of 250 pixels
const fixedThreshold = 5;
// Calculate how close we are to the bottom of the content
const distanceToBottom = contentHeight - (scrollPosition + windowHeight);
console.log(Math.abs(distanceToBottom))
if (distanceToBottom < 0) {
if (Math.abs(distanceToBottom) >= 357 || window.scrollY <= 199) {
stickyBottom.style.display = 'none';
} else {
stickyBottom.style.display = 'flex';
}
} else {
// Check if we are within 250 pixels from the bottom
if (distanceToBottom <= fixedThreshold || window.scrollY <= 199) {
stickyBottom.style.display = 'none';
} else {
stickyBottom.style.display = 'flex';
}
}
});
function applyStyle(element) {
// Supprimer la classe 'active' de tous les liens
const links = document.querySelectorAll('.large-device .ez-toc-link');
links.forEach(link => link.classList.remove('active'));
if (window.innerWidth <= 500) {
const links_mobile = document.querySelectorAll('.mobile-device .ez-toc-link');
links_mobile.forEach(link => link.classList.remove('active'));
}
// Ajouter la classe 'active' au lien cliqué
element.classList.add('active');
// Appliquez le style à l'élément <a> lorsque le lien est cliqué
// element.style.color = 'grey';
// element.style.opacity = '0.8';
element.classList.add('clicked-link');
}
// Sélectionnez tous les liens de votre sommaire
const links = document.querySelectorAll('.large-device .ez-toc-link');
const headings = Array.from(links).map(link => {
const id = link.getAttribute('href').substring(1);
return document.getElementById(id);
});
let currentActiveSection = null;
let isScrollingToLink = false;
function scrollToElement(element, container) {
if (!isElementInViewport(element, container) && !isScrollingToLink) {
isScrollingToLink = true;
document.body.style.overflow = 'hidden';
element.scrollIntoView({ behavior: 'smooth', block: 'start' });
setTimeout(() => {
document.body.style.overflow = '';
isScrollingToLink = false;
}, 500);
}
}
function isElementInViewport(element, container) {
var elementRect = element.getBoundingClientRect();
var containerRect = container.getBoundingClientRect();
return (
elementRect.top >= containerRect.top &&
elementRect.left >= containerRect.left &&
elementRect.bottom <= containerRect.bottom &&
elementRect.right <= containerRect.right
);
}
function updateActiveLink() {
let indexToActivate = -1;
// Parcours du bas vers le haut
for (let i = headings.length - 1; i >= 0; i--) {
const heading = headings[i];
if (heading) {
const rect = heading.getBoundingClientRect();
if (rect.top <= 0) { // 0px du haut de la fenêtre
indexToActivate = i;
break;
}
}
}
links.forEach(link => link.classList.remove('active'));
if (indexToActivate !== -1) {
links[indexToActivate].classList.add('active');
// Scroll le menu pour garder le lien actif visible
const activeLink = links[indexToActivate];
const tocList = activeLink.closest('.ez-toc-list');
if (tocList && activeLink) {
const linkRect = activeLink.getBoundingClientRect();
const listRect = tocList.getBoundingClientRect();
if (linkRect.top < listRect.top || linkRect.bottom > listRect.bottom) {
tocList.scrollTop += linkRect.top - listRect.top - listRect.height / 2 + linkRect.height / 2;
}
}
}
}
window.addEventListener('scroll', updateActiveLink);
document.addEventListener('DOMContentLoaded', () => {
const links = document.querySelectorAll('.large-device .ez-toc-link');
if (links.length > 0) {
links[0].classList.add('active');
}
if (window.innerWidth <= 500) {
const links_mobile = document.querySelectorAll('.mobile-device .ez-toc-link');
if (links_mobile.length > 0) {
links_mobile[0].classList.add('active');
}
}
});
// window.addEventListener('scroll', () => {
// const stickyBottom = document.querySelector('.sticky-bottom');
// // console.log(window.scrollY); // ou window.pageYOffset
//
// });
</script>
{% endblock %}
", "page/page.html.twig", "/home/u430011172/domains/workdispo.com/public_html/testafaire/templates/page/page.html.twig");
}
}