Communiqués de presse - L'actualité de Ooredoo

Bienvenue chez Ooredoo Algérie ! Nous sommes ravis de vous compter parmi nous. Je suis un Agent Virtuel Ooredoo Chat, comment puis-je vous aider ?

Ooredoo Chat

1

Chatbot

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon

BORN FOR

icon
Une erreur s'est produite lors du traitement du modèle.
The following has evaluated to null or missing:
==> request.cookies  [in template "20097#20123#77441" at line 47, column 8]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #list request.cookies?filter(c -> c.n...  [in template "20097#20123#77441" at line 47, column 1]
----
1<#if entries?has_content> 
2	<#assign sectionParam = getterUtil.getString(request.getParameter("section"))?trim> 
3	<#if currentURL?contains('/business') || currentURL?contains('/entreprises') || sectionParam?contains('business')> 
4		<#assign curSection = "business|entreprises" /> 
5		<script> 
6		(function() { 
7			const cookieName = "guest-section"; 
8			const sessionValue = "entreprises"; 
9 
10			document.cookie = cookieName + "=" + encodeURIComponent(sessionValue) + "; path=/"; 
11		})(); 
12		</script> 
13	<#elseif currentURL?contains('/about-us') || currentURL?contains('/tout-sur-ooredoo')>		 
14		<#assign curSection = "about-us|tout-sur-ooredoo" />	 
15		<script> 
16		(function() { 
17			const cookieName = "guest-section"; 
18			const sessionValue = "entreprises"; 
19 
20			document.cookie = cookieName + "=" + encodeURIComponent(sessionValue) + "; path=/"; 
21		})(); 
22		</script> 
23	<#else> 
24			<#assign curSection = "personal|particuliers " /> 
25		<#if currentURL?contains('/particuliers')>		 
26						 
27						<script> 
28						(function() { 
29					const cookieName = "guest-section"; 
30					const sessionValue = "particuliers"; 
31 
32					document.cookie = cookieName + "=" + encodeURIComponent(sessionValue) + "; path=/"; 
33				})(); 
34				</script> 
35		   </#if> 
36		 
37	</#if> 
38		 
39		<#assign navOrder={}/> 
40		<#assign mainNav='en_US'/> 
41		<#assign mainNavLocal='fr'/> 
42		 
43		<#assign navListEn=['Personal','Business','About Us']/> 
44		<#assign navListFr=['Particuliers','Entreprises','Tout sur Ooredoo']/> 
45		<#assign navListAr=['Personal','Business','About']/> 
46		 
47<#list request.cookies?filter(c -> c.name == "guest-section") as cookie> 
48				 The QSI_History value is: ${getterUtil.getString(cookie.value)?trim} 
49    </#list> 
50		 
51		 
52		<#assign localeString = locale?string /> 
53		<#if localeString == 'en_US'> 
54			<#assign mainNav = navListEn /> 
55			<#elseif localeString == 'ar_SA'> 
56				<#assign mainNav = navListEn /> 
57				<#assign mainNavLocal='ar'/> 
58				<#elseif localeString == 'fr_FR'> 
59					<#assign mainNav = navListFr /> 
60					<#else> 
61						<!-- Set a default value if none of the conditions match --> 
62						<#assign mainNav = navListEn /> 
63		</#if> 
64		 
65		<#list entries as curEntry> 
66			<#assign navOrder+={curEntry.getTitle(locale),curEntry}/> 
67			    
68			   
69			  
70			</#list> 
71 
72	<#if curSection=="about-us|tout-sur-ooredoo"> 
73		<#if localeString == 'ar_SA'> 
74			<style> 
75				.navbar-nav{ 
76						padding-inline: 0px !important; 
77
78				.text-base-1280{ 
79				 font-size: 14px !important; 
80
81			</style> 
82		<#else> 
83			<style> 
84				ol, ul { 
85						padding-inline: 32px; 
86
87				.text-base-1280{ 
88				 font-size: 14px !important; 
89
90				.nav-padding-right { 
91				padding-right: 32px; 
92				font-size: 14px !important; 
93				font-weight: 400 !important; 
94
95			</style> 
96 
97		</#if> 
98	<#else> 
99		<style> 
100			.nav-padding-right { 
101				padding-right: 32px; 
102				font-size: 16px !important; 
103				font-weight: 400 !important; 
104
105			.rtl .nav-padding-right { 
106					padding-right: 0px; 
107					padding-left: 32px; 
108
109			</style> 
110  </#if>	 
111	<div class="nav-wrap shadow megaMenu bg-white"> 
112		<div class="mx-auto hidden max-w-7xl xl:block"> 
113	        <!-- first row --> 
114	        <div class="flex"> 
115	            <a href="/personal"> 
116								<#if curSection=="business|entreprises"> 
117	                <img src="/documents/d/guest/20170203_ooredoo-business-logo" alt="about Logo" class="mt-[14px] pb-3 h-16"> 
118									<#else> 
119										<img src="/documents/d/guest/logo" alt="about Logo" class="mt-[14px] pb-3 h-12"> 
120									</#if> 
121	            </a> 
122				<div class="flex h-14 items-start gap-x-1 overflow-y-hidden text-[14px] ltr:ml-24 rtl:mr-24"> 
123	           <#if mainNav?has_content> 
124					<#list mainNav as navList>   
125						 
126					     <#assign curEntry=navOrder[navList]/> 
127						          <a class="flex h-full items-end rounded-b-xl  
128													${((curSection?lower_case)?contains((curEntry.getTitle(locale)?replace(' ','-'))?lower_case))?then('bg-brand-red-4 text-white','hover:bg-brand-red-6')} 
129													px-5 pb-2.5" data-senna-off="true" href="/${mainNavLocal}/${(curEntry.getTitle('en_US')?lower_case)?replace(' ','-')}"> 
130			                    <span>			                    	  
131														<@liferay.language key="${curEntry.getTitle(locale)?replace(' ','')}" /> 
132			                	</span> 
133			                </a> 
134							  
135							  
136							  
137							     
138	               </#list> 
139							 </#if> 
140	             </div> 
141	            <div class="flex items-center justify-end gap-x-10 ltr:ml-auto rtl:mr-auto"> 
142								<a href="/personal/noudjoum" class="flex items-center gap-x-2.5"> 
143	                    <img src="/documents/d/guest/frame-1707479612" alt="User Icon"> 
144	                    <p class="flex flex-col items-start leading-tight"> 
145	                        <span><@liferay.language key="noudjoum-icon"/> </span> 
146	                    </p> 
147	                </a> 
148	                <a href="https://my.ooredoo.dz/" class="flex items-center gap-x-2.5"> 
149	                    <img src="/documents/d/guest/persons" alt="User Icon"> 
150	                    <p class="flex flex-col items-start leading-tight"> 
151	                        <span><@liferay.language key="my-ooredoo"/> </span> 
152	                    </p> 
153	                </a> 
154	                <a href="https://estorm.ooredoo.dz/" class="flex items-center gap-x-2.5"> 
155	                    <img src="/documents/d/guest/e-strom" alt="E Strom Icon"> 
156	                    <p><@liferay.language key="e-strom"/></p> 
157	                </a> 
158	                <a href="https://appstorm.ooredoo.dz/" class="flex items-center gap-x-2.5"> 
159	                    <img src="/documents/d/guest/partners" alt="People Icon"> 
160	                    <p><@liferay.language key="partners"/></p> 
161	                </a> 
162	            </div> 
163	        </div> 
164	    </div> 
165	    <div class="mx-auto hidden max-w-7xl xl:block desktop-tab"> 
166       		<nav class="navbar navbar-expand-lg pb-xl-0 pt-4 relative flex items-center w-full justify-between px-0" data-te-navbar-ref=""> 
167		        <div class="!visible flex-grow basis-[100%] d-flex align-items-center lg:!flex lg:basis-auto MegaNavSection" id="navbarSupportedContentX" data-te-collapse-item=""> 
168		        	<#list entries as curEntry> 
169		        		<#if (curSection?lower_case)?contains((curEntry.getTitle(locale)?lower_case)?replace(' ','-'))> 
170				        	<#assign  
171		                            assetRenderer = curEntry.getAssetRenderer() 
172		                            journalArticle = assetRenderer.getAssetObject() 
173		                     /> 
174		                    <@liferay_journal["journal-article"] 
175		                            articleId=journalArticle.getArticleId() 
176		                            ddmTemplateKey=journalArticle.getDDMTemplateKey() 
177		                            groupId=journalArticle.getGroupId() 
178		                    /> 
179		                </#if> 
180	                </#list>    
181	            </div> 
182	            <div class="flex-wrap flex pb-2 mb-1"> 
183                    <div class="relative flex w-80 justify-end ltr:ml-auto rtl:mr-auto ooredoo-search-bar"> 
184                        <@liferay.search_bar /> 
185                    </div> 
186                    <div class="grid grid-flow-col gap-1 justify-center items-center  ltr:ml-10 rtl:mr-10 ltr:translate-x-1  rtl:-translate-x-1 border-none"> 
187                        <!--<@liferay_portlet["runtime"] portletName="com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet" />--> 
188											<div class="d-flex gap-3 ooredoo-lang-selector">	 
189												<img id="displayedImage" src='<@liferay.language key="language-flag"/>' class="w-[24px] h-[24px] rounded-[50%] " >  
190													<select 
191         
192        id="languageIdWeb" 
193        name="languageId" class="border-0 py-1 text-gray-700 pr-4" aria-labelledby="languageDropdownMobile" 
194        fdprocessedid="0tfnyf"> 
195			<#if localeString == 'ar_SA'> 
196			   <option  value="fr_FR" lang="fr-FR" class="block px-4 py-2">FR </option> 
197				 <option selected="" value="ar_SA" lang="ar-SA" class="block px-4 py-2">AR </option> 
198			<#elseif localeString == 'fr_FR'> 
199				 <option selected="" value="fr_FR" lang="fr-FR" class="block px-4 py-2">FR </option> 
200				 <option value="ar_SA" lang="ar-SA" class="block px-4 py-2">AR </option> 
201		  </#if> 
202         
203    </select> 
204</div> 
205                    </div> 
206                </div> 
207    		</nav> 
208		</div> 
209 
210 
211		<!--tablet--> 
212	    <div class="hidden px-5 py-4 md:block xl:hidden"> 
213	        <!-- first row --> 
214	        <div class="flex items-center justify-between"> 
215	            <a href="/personal"> 
216	                <img src="/documents/d/guest/logo" alt="Business Logo" class="w-[auto] h-12 pb-3"> 
217	            </a> 
218	            <div class="flex items-center gap-x-[14px]"> 
219	                <div class="relative flex h-9 w-72 justify-end ltr:ml-auto rtl:mr-auto"> 
220	                    <@liferay.search_bar /> 
221	                </div> 
222	                <div class="flex items-center gap-x-[14px]"> 
223	                    <button id="navigationTabletDropdown" data-dropdown-toggle="navigation-section-teblet-dropdown" class="nav-mob-dropdown inline-flex items-center rounded-full bg-brand-red-4 text-center text-white" type="button"> 
224	                        <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 13C14.396 13 16.575 13.694 18.178 14.671C18.978 15.161 19.662 15.736 20.156 16.361C20.642 16.977 21 17.713 21 18.5C21 19.345 20.589 20.011 19.997 20.486C19.437 20.936 18.698 21.234 17.913 21.442C16.335 21.859 14.229 22 12 22C9.771 22 7.665 21.86 6.087 21.442C5.302 21.234 4.563 20.936 4.003 20.486C3.41 20.01 3 19.345 3 18.5C3 17.713 3.358 16.977 3.844 16.361C4.338 15.736 5.021 15.161 5.822 14.671C7.425 13.694 9.605 13 12 13ZM12 2C13.3261 2 14.5979 2.52678 15.5355 3.46447C16.4732 4.40215 17 5.67392 17 7C17 8.32608 16.4732 9.59785 15.5355 10.5355C14.5979 11.4732 13.3261 12 12 12C10.6739 12 9.40215 11.4732 8.46447 10.5355C7.52678 9.59785 7 8.32608 7 7C7 5.67392 7.52678 4.40215 8.46447 3.46447C9.40215 2.52678 10.6739 2 12 2Z" fill="white"/> 
225	                        </svg> 
226	                    </button> 
227	                    <div id="navigation-section-teblet-dropdown" class="z-10 hidden w-35 rounded-xl bg-white shadow" data-popper-reference-hidden="false" data-popper-escaped="" data-popper-placement="bottom" style="position: absolute; inset: 0px auto auto 0px; margin: 0px; transform: translate3d(0px, 10.4px, 0px);"> 
228	                        <ul class="custom-list py-1 text-sm text-black/80" aria-labelledby="navigationDropdown"> 
229														<li class="border-b border-gray-300"> 
230																<img src="/documents/d/guest/frame-1707479612" alt="Noudjoum Icon" class="list-icon"> 
231																<a href="/personal/noudjoum" class="block  py-2"> 
232 
233																		<@liferay.language key="noudjoum-icon" /> 
234																</a> 
235														</li> 
236														<li class="border-b border-gray-300"> 
237																<img src="/documents/d/guest/persons" alt="My Ooredoo Icon" class="list-icon"> 
238																<a href="https://my.ooredoo.dz/" class="block  py-2"> 
239 
240																		<@liferay.language key="my-ooredoo" /> 
241																</a> 
242														</li> 
243														<li class="border-b border-gray-300"> 
244																<img src="/documents/d/guest/e-strom" alt="eStorm Icon" class="list-icon"> 
245																<a href="https://estorm.ooredoo.dz/" class="block py-2"> 
246 
247																		<@liferay.language key="e-strom" /> 
248																</a> 
249														</li> 
250														<li class=""> 
251																<img src="/documents/d/guest/partners" alt="Partners Icon" class="list-icon"> 
252																<a href="https://appstorm.ooredoo.dz/" class="block py-2">             
253																		<@liferay.language key="partners" /> 
254																</a> 
255														</li> 
256												</ul> 
257	                    </div> 
258	                </div> 
259	                 
260								 
261								 
262								 
263								 
264								 
265								 
266		<div class="portlet-boundary portlet-boundary_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_  portlet-static portlet-static-end portlet-decorate portlet-language " 
267    id="p_p_id_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_"><span 
268        id="p_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet"></span> 
269    <section class="portlet" 
270        id="portlet_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet"> 
271        <div class="portlet-content"> 
272            <div class=" portlet-content-container"> 
273                <div class="portlet-body"> 
274                    <form class="form  " 
275                        data-fm-namespace="" 
276                        id="_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_fm0_1726697931825" 
277                        method="post" 
278                        name="_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_fm0_1726697931825"> 
279                        <div class="d-flex gap-3 ooredoo-lang-selector"> 
280                            <select 
281                                onchange="_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_changeLanguage()" 
282                                id="languageIdTab" 
283                                name="languageId" class="border-0 py-1 text-gray-700 pr-4" 
284                                aria-labelledby="languageDropdownMobile"> 
285															 
286                                <#if localeString == 'ar_SA'> 
287											 <option  value="fr_FR" lang="fr-FR" class="block px-4 py-2">FR </option> 
288											 <option selected="" value="ar_SA" lang="ar-SA" class="block px-4 py-2">AR </option> 
289										<#elseif localeString == 'fr_FR'> 
290											 <option selected="" value="fr_FR" lang="fr-FR" class="block px-4 py-2">FR </option> 
291											 <option value="ar_SA" lang="ar-SA" class="block px-4 py-2">AR </option> 
292										</#if> 
293                            </select> 
294                        </div> 
295                    </form> 
296 
297                    <style> 
298                        .portlet-boundary_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_ .portlet-content { 
299                            padding: 0; 
300
301 
302                        .portlet-boundary_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_ .portlet { 
303                            margin: 0; 
304
305 
306                        .ooredoo-lang-selector .pr-4 { 
307                            padding-right: 2rem !important; 
308
309 
310                        .ooredoo-lang-selector .pb-1 { 
311                            padding-bottom: 0.25rem !important; 
312
313 
314                        .ooredoo-lang-selector .pt-1 { 
315                            padding-top: 0.25rem !important; 
316
317                    </style> 
318                </div> 
319            </div> 
320        </div> 
321    </section> 
322</div> 
323								 
324								 
325								 
326								 
327								 
328								 
329								 
330								 
331								 
332								 
333	            </div> 
334	        </div> 
335	        <!-- second row --> 
336	        <div class="mt-4 flex items-center justify-between"> 
337	            <button id="tablet-menu-trigger-btn"> 
338	                <img src="/documents/d/guest/fluent_navigation-16-filled" alt="Menu Icon"> 
339	            </button> 
340	            <div class="h-9 text-base"> 
341	            	<#if mainNav?has_content> 
342					<#list mainNav as navList>     
343					     <#assign curEntry=navOrder[navList]/> 
344						          <a class="h-full rounded-full no-underline text-inherit  ${((curSection?lower_case)?contains((curEntry.getTitle(locale)?replace(' ','-'))?lower_case))?then('bg-brand-red-4 text-white tablet-menu-active-btn','')} text-sm" data-senna-off="true" href="/${mainNavLocal}/${(curEntry.getTitle('en_US')?lower_case)?replace(' ','-')}"> 
345			                    <span class="inline-block section-text-tab"> 
346														<@liferay.language key="${curEntry.getTitle(locale)?replace(' ','')}" /> 
347			                	</span> 
348			                </a> 
349						 
350						 
351						 
352						 
353	               </#list> 
354							 </#if> 
355	            </div> 
356	        </div> 
357	    </div> 
358 
359	    <!--mobile--> 
360	    <div class="px-4 py-4 md:hidden"> 
361	        <!-- first row --> 
362	        <div class="flex items-center justify-between"> 
363	            <a href="/personal"> 
364	                <img src="/documents/d/guest/logo" alt="Business Logo" class="w-[120px]"> 
365	            </a> 
366	            <div class="d-flex justify-end align-items-xl-center gap-x-2"> 
367	                <div class="relative flex h-9 w-50 w-xl-72 justify-end ltr:ml-auto rtl:mr-auto"> 
368	                    <button id="mobile-nav-search" class="nav-mob-dropdown inline-flex items-center rounded-full bg-brand-red-4 text-center text-white" type="button"> 
369	                        <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18.031 16.617L22.314 20.899L20.899 22.314L16.617 18.031C15.0237 19.3082 13.042 20.0029 11 20C6.032 20 2 15.968 2 11C2 6.032 6.032 2 11 2C15.968 2 20 6.032 20 11C20.0029 13.042 19.3082 15.0237 18.031 16.617ZM16.025 15.875C17.2941 14.5699 18.0029 12.8204 18 11C18 7.132 14.867 4 11 4C7.132 4 4 7.132 4 11C4 14.867 7.132 18 11 18C12.8204 18.0029 14.5699 17.2941 15.875 16.025L16.025 15.875Z" fill="white"/></svg> 
370	                    </button> 
371	                    <@liferay.search_bar /> 
372	                </div> 
373	                <div class="flex items-center gap-x-[14px]"> 
374	                    <button id="navigationDropdown" data-dropdown-toggle="navigation-section-dropdown" class="nav-mob-dropdown inline-flex items-center rounded-full bg-brand-red-4 text-center text-white" type="button"> 
375	                        <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 13C14.396 13 16.575 13.694 18.178 14.671C18.978 15.161 19.662 15.736 20.156 16.361C20.642 16.977 21 17.713 21 18.5C21 19.345 20.589 20.011 19.997 20.486C19.437 20.936 18.698 21.234 17.913 21.442C16.335 21.859 14.229 22 12 22C9.771 22 7.665 21.86 6.087 21.442C5.302 21.234 4.563 20.936 4.003 20.486C3.41 20.01 3 19.345 3 18.5C3 17.713 3.358 16.977 3.844 16.361C4.338 15.736 5.021 15.161 5.822 14.671C7.425 13.694 9.605 13 12 13ZM12 2C13.3261 2 14.5979 2.52678 15.5355 3.46447C16.4732 4.40215 17 5.67392 17 7C17 8.32608 16.4732 9.59785 15.5355 10.5355C14.5979 11.4732 13.3261 12 12 12C10.6739 12 9.40215 11.4732 8.46447 10.5355C7.52678 9.59785 7 8.32608 7 7C7 5.67392 7.52678 4.40215 8.46447 3.46447C9.40215 2.52678 10.6739 2 12 2Z" fill="white"/> 
376	                        </svg> 
377	                    </button> 
378	                    <div id="navigation-section-dropdown" class="z-10 hidden w-35 rounded-xl bg-white shadow" data-popper-reference-hidden="false" data-popper-escaped="" data-popper-placement="bottom" style="position: absolute; inset: 0px auto auto 0px; margin: 0px; transform: translate3d(0px, 10.4px, 0px);"> 
379	                        <ul class="custom-list py-1 text-sm text-black/80" aria-labelledby="navigationDropdown"> 
380														<li class="border-b border-gray-300"> 
381																<img src="/documents/d/guest/frame-1707479612" alt="Noudjoum Icon" class="list-icon"> 
382																<a href="/personal/noudjoum" class="block  py-2"> 
383 
384																		<@liferay.language key="noudjoum-icon" /> 
385																</a> 
386														</li> 
387														<li class="border-b border-gray-300"> 
388																<img src="/documents/d/guest/persons" alt="My Ooredoo Icon" class="list-icon"> 
389																<a href="https://my.ooredoo.dz/" class="block  py-2"> 
390 
391																		<@liferay.language key="my-ooredoo" /> 
392																</a> 
393														</li> 
394														<li class="border-b border-gray-300"> 
395																<img src="/documents/d/guest/e-strom" alt="eStorm Icon" class="list-icon"> 
396																<a href="https://estorm.ooredoo.dz/" class="block py-2"> 
397 
398																		<@liferay.language key="e-strom" /> 
399																</a> 
400														</li> 
401														<li class=""> 
402																<img src="/documents/d/guest/partners" alt="Partners Icon" class="list-icon"> 
403																<a href="https://appstorm.ooredoo.dz/" class="block  py-2">             
404																		<@liferay.language key="partners" /> 
405																</a> 
406														</li> 
407												</ul> 
408	                    </div> 
409	                </div> 
410	                 
411								 
412								 
413								 
414								 
415								 
416								 
417								 
418								<div class="portlet-boundary portlet-boundary_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_  portlet-static portlet-static-end portlet-decorate portlet-language " id="p_p_id_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_"><span id="p_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet"></span> 
419            <section class="portlet" id="portlet_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet"> 
420             <div class="portlet-content"> 
421              <div class=" portlet-content-container"> 
422               <div class="portlet-body"> 
423                <form action="/fr/c/portal/update_language?p_l_id=24&amp;redirect=%2Ffr%2Fentreprises" class="form  " data-fm-namespace="" id="_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_fm0_1700720685586" method="post" name="_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_fm0_1700720685586"><input class="field form-control" id="formDate" name="formDate" type="hidden" value="1700720685587"> 
424                 <div class="d-flex gap-3 ooredoo-lang-selector"> 
425									 <img id="displayedImage" src='<@liferay.language key="language-flag"/>' class="w-[24px] h-[24px] rounded-[50%] " alt="uk">  
426									 <select id="languageIdMobile" name="languageId" class="border-0 py-1 text-gray-700 pr-4 bg-brand-red-4" aria-labelledby="languageDropdownMobile">  
427									  
428										 <#if localeString == 'ar_SA'> 
429											 <option  value="fr_FR" lang="fr-FR" class="block px-4 py-2">FR </option> 
430											 <option selected="" value="ar_SA" lang="ar-SA" class="block px-4 py-2">AR </option> 
431										<#elseif localeString == 'fr_FR'> 
432											 <option selected="" value="fr_FR" lang="fr-FR" class="block px-4 py-2">FR </option> 
433											 <option value="ar_SA" lang="ar-SA" class="block px-4 py-2">AR </option> 
434										</#if> 
435									 </select> 
436                 </div> 
437                </form> 
438                <script> 
439 
440</script> 
441                <style> 
442	.portlet-boundary_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_ .portlet-content{ 
443		padding:0; 
444
445	.portlet-boundary_com_liferay_site_navigation_language_web_portlet_SiteNavigationLanguagePortlet_ .portlet{ 
446		margin:0; 
447
448	.ooredoo-lang-selector .pr-4{ 
449    padding-right: 2rem !important; 
450
451.ooredoo-lang-selector .pb-1 { 
452    padding-bottom: 0.25rem !important; 
453
454.ooredoo-lang-selector .pt-1{ 
455    padding-top: 0.25rem !important; 
456
457.nav-mob-search .d-xl-none{ 
458	    display: block !important; 
459
460	.nav-mob-search .d-xl-block{ 
461	    display: none !important; 
462
463.portlet-boundary_com_liferay_portal_search_web_search_bar_portlet_SearchBarPortlet_ .search-bar-input { 
464 
465    width: 250px !important; 
466}									 
467</style> 
468               </div> 
469              </div> 
470             </div> 
471            </section> 
472           </div> 
473								 
474								 
475								 
476								 
477								 
478								 
479	            </div> 
480	        </div> 
481	        <!-- second row --> 
482	        <div class="mt-4 flex items-center justify-between"> 
483	            <button id="mobile-menu-trigger-btn"> 
484	                <img src="/documents/d/guest/fluent_navigation-16-filled" alt="Menu Icon"> 
485	            </button> 
486	            <div class="flex items-center gap-x-[14px]"> 
487								<#list entries as curEntry> 
488	            		<#if (curSection?lower_case)?contains((curEntry.getTitle(locale)?lower_case)?replace(' ','-'))> 
489			                <button id="navigationDropdown" data-dropdown-toggle="navigation-dropdown" class="inline-flex items-center rounded-full bg-brand-red-4 px-4 py-2 text-center text-white justify-center section-btn" type="button"> 
490			                    <@liferay.language key="${curEntry.getTitle(locale)?replace(' ','')}" /> 
491			                    <svg class="ml-2 h-4 w-4" aria-hidden="true" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> 
492			                        <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path> 
493			                    </svg> 
494			                </button> 
495			            </#if> 
496		            </#list> 
497	            	<#list entries as curEntry> 
498	            		 
499			            <#if curEntry?index==0> 
500			                <div id="navigation-dropdown" class="z-10 hidden w-44 rounded-xl bg-white shadow" data-popper-reference-hidden="" data-popper-escaped="" data-popper-placement="bottom" style="position: absolute; inset: -1rem auto auto 0px; margin: 0px; transform: translate3d(0px, 10.4px, 0px);"> 
501			                	<ul class="custom-list custom-list-mobile py-1 text-sm text-black/80" aria-labelledby="navigationDropdown" > 
502			                		<#assign mobSectionDropDown = true /> 
503			            </#if> 
504                        <li> 
505                            <a href="/${mainNavLocal}/${curEntry.getTitle('en_US')?lower_case?replace(' ', '-')}" class="block px-4 py-2"><@liferay.language key="${curEntry.getTitle(locale)?replace(' ','')}" /></a> 
506                        </li> 
507		            </#list> 
508            	<#if mobSectionDropDown==true> 
509            		</ul> 
510	                </div> 
511            	</#if> 
512	            </div> 
513	        </div> 
514	    </div> 
515	</div> 
516	<div id="colorChangeButton" style="display: none"></div> 
517</#if> 
518<#if entries?has_content> 
519	<#list entries as curEntry> 
520		<#if (curSection?lower_case)?contains((curEntry.getTitle(locale)?lower_case)?replace(' ','-'))> 
521        	<#assign  
522                    assetRenderer = curEntry.getAssetRenderer() 
523                    journalArticle = assetRenderer.getAssetObject() 
524             /> 
525            <@liferay_journal["journal-article"] 
526                    articleId=journalArticle.getArticleId() 
527                    ddmTemplateKey="192008" 
528                    groupId=journalArticle.getGroupId() 
529            /> 
530			      <#break> 
531				 </#if> 
532	</#list> 
533	<#list entries as curEntry> 
534		<#if (curSection?lower_case)?contains((curEntry.getTitle(locale)?lower_case)?replace(' ','-'))> 
535			       <#assign  
536                    assetRenderer = curEntry.getAssetRenderer() 
537                    journalArticle = assetRenderer.getAssetObject() 
538             /> 
539            <@liferay_journal["journal-article"] 
540                    articleId=journalArticle.getArticleId() 
541                    ddmTemplateKey="192949" 
542                    groupId=journalArticle.getGroupId() 
543            /> 
544			<#break> 
545        </#if> 
546	</#list> 
547</#if> 
548 
549<style> 
550	.guest-site	.min-vh-100{ 
551	    min-height: 0 !important; 
552
553.MegaNavSection .journal-content-article { 
554		flex-grow: 1; 
555		display: flex; 
556		align-items: center; 
557		justify-content: start; 
558
559	.ooredoo-search-bar .portlet{ 
560	margin-bottom:0; 
561
562.nav-menu-link a { 
563                position: relative; 
564                color: inherit; 
565                text-decoration: none; 
566                transition: color 0.3s ease; 
567
568 
569            .nav-menu-link a::before { 
570                content: ""; 
571                position: absolute; 
572                left: 0; 
573                right: 0; 
574                bottom: -3px; /* Adjust this for space between text and line */ 
575                height: 2px; /* Adjust this for line thickness */ 
576                background-color: red; 
577                transform: scaleX(0); 
578                transform-origin: center; 
579                transition: transform 0.3s ease; 
580
581 
582            .nav-menu-link a:hover::before, 
583            .navbar-nav.active .nav-menu-link a::before { 
584                transform: scaleX(1); 
585
586 
587            .navbar-nav.active .nav-menu-link a { 
588                color: red; 
589
590.active-underline { 
591    transform: scaleX(0); 
592
593 
594.navbar-nav.active .nav-menu-link a .active-underline { 
595    transform: scaleX(1); 
596
597	 
598.underline-red { 
599  text-decoration: underline #d6001c; 
600	text-decoration-thickness: 2px; 
601
602	 
603.tablet-menu-active-btn { 
604	padding-bottom: 0.5rem; 
605    	padding-top: 0.5rem; 
606
607.rtl .rotate-180 { 
608    transform: rotate(90deg); 
609
610	.nav-mob-search .d-xl-none{ 
611	    display: block !important; 
612
613	.nav-mob-search .d-xl-block{ 
614	    display: none !important; 
615
616	.portlet-boundary_com_liferay_portal_search_web_search_bar_portlet_SearchBarPortlet_ .search-bar-input{ 
617   padding-right: 6rem !important; 
618   padding-left: 1rem !important;   
619
620	.portlet-boundary_com_liferay_portal_search_web_search_bar_portlet_SearchBarPortlet_ .search-bar-input { 
621 
622    width: 250px !important; 
623
624.nav-wrap { 
625    background: #ffffff; 
626    position: fixed; 
627    top: 0; 
628    left: 0; 
629    width: 100%; 
630    z-index: 100; 
631
632.custom-list li { 
633    list-style: none; 
634    display: flex; 
635    align-items: center; 
636	  padding-left: 10px; 
637    padding-right: 10px; 
638
639.custom-list { 
640	  padding-left: 0rem; 
641    padding-right: 0rem; 
642
643.custom-list-mobile { 
644	  color: #D6001C; 
645
646 
647.custom-list .list-icon { 
648    width: 20px; 
649    height: 20px; 
650    margin-right: 10px; 
651
652.section-btn { 
653    width: 11rem; 
654
655	.section-text-tab{ 
656		text-align: center; 
657		width: 8.5rem; 
658
659	 
660/* Remove focus outline on select elements */ 
661#languageIdMobile:focus, 
662#languageIdTab:focus { 
663    outline: none; 
664    -webkit-box-shadow: none; 
665    -moz-box-shadow: none; 
666    box-shadow: none; 
667	  background-color: #B20017 !important; 
668
669 
670/* Remove focus outline on button elements */ 
671#navigationDropdown:focus, 
672#navigationTabletDropdown:focus { 
673    outline: none; 
674    -webkit-box-shadow: none; 
675    -moz-box-shadow: none; 
676    box-shadow: none; 
677
678 
679/* Optionally, for a smoother tap/click experience */ 
680#languageIdMobile, 
681#navigationDropdown, 
682#languageIdTab, 
683#navigationTabletDropdown { 
684    -webkit-tap-highlight-color: transparent; 
685
686 
687 
688</style> 
689 
690		 
691<script> 
692	// Check if the current URL contains '/web/guest' 
693if (window.location.pathname.includes('/web/guest')) { 
694    // Remove '/web/guest' from the URL 
695    const newPath = window.location.pathname.replace('/web/guest', ''); 
696    // Update the URL without reloading the page 
697  //  window.history.replaceState(null, '', newPath); 
698
699 
700    $(document).ready(function () { 
701        $("#mobile-nav-search").click(function (e) { 
702            $(this).addClass("d-none"); 
703            jQuery('.search-bar-nav').removeClass('d-none'); 
704        }); 
705    }); 
706</script> 
707<script> 
708 
709 
710$(document).ready(function () { 
711	 
712					var selectWeb = document.querySelector('#languageIdWeb'); 
713	var selectMobile = document.querySelector('#languageIdMobile'); 
714	var selectTab= document.querySelector('#languageIdTab'); 
715	console.log('change', selectWeb); 
716selectWeb.addEventListener('change', function() { 
717	console.log('change 1', this.value); 
718  if (this.value == "fr_FR") { 
719				if (!window.location.pathname.startsWith('/fr/')) { 
720      // Get the current path without the leading slash 
721      let currentPath = window.location.pathname.substring(1); 
722					console.log('currentPath 1', currentPath); 
723			currentPath = currentPath.replace('ar/', ''); 
724					console.log('currentPath 2', currentPath); 
725      const newPath = '/fr/'+currentPath; 
726      const newUrl = window.location.origin +''+ newPath; 
727      window.location.replace(newUrl); 
728
729  } else if (this.value == "ar_SA"){ 
730    		if (!window.location.pathname.startsWith('/ar/')) { 
731      // Get the current path without the leading slash 
732      let currentPath = window.location.pathname.substring(1); 
733					console.log('currentPath 1', currentPath); 
734					currentPath = currentPath.replace('fr/', ''); 
735					console.log('currentPath 2', currentPath); 
736      const newPath = '/ar/'+currentPath; 
737      const newUrl = window.location.origin +''+ newPath; 
738      window.location.replace(newUrl); 
739
740
741}); 
742	 
743	selectTab.addEventListener('change', function() { 
744  if (this.value == "fr_FR") { 
745				if (!window.location.pathname.startsWith('/fr/')) { 
746      // Get the current path without the leading slash 
747      let currentPath = window.location.pathname.substring(1); 
748			currentPath = currentPath.replace('ar/', ''); 
749      const newPath = '/fr/'+currentPath; 
750      const newUrl = window.location.origin +''+ newPath; 
751      window.location.replace(newUrl); 
752
753  } else if (this.value == "ar_SA"){ 
754    		if (!window.location.pathname.startsWith('/ar/')) { 
755      // Get the current path without the leading slash 
756      let currentPath = window.location.pathname.substring(1); 
757					currentPath = currentPath.replace('fr/', ''); 
758      const newPath = '/ar/'+currentPath; 
759      const newUrl = window.location.origin +''+ newPath; 
760      window.location.replace(newUrl); 
761
762
763}); 
764	 
765	selectMobile.addEventListener('change', function() { 
766  if (this.value == "fr_FR") { 
767				if (!window.location.pathname.startsWith('/fr/')) { 
768      // Get the current path without the leading slash 
769      let currentPath = window.location.pathname.substring(1); 
770					console.log('currentPath 1', currentPath); 
771			currentPath = currentPath.replace('ar/', ''); 
772					console.log('currentPath 2', currentPath); 
773      const newPath = '/fr/'+currentPath; 
774      const newUrl = window.location.origin +''+ newPath; 
775      window.location.replace(newUrl); 
776
777  } else if (this.value == "ar_SA"){ 
778    		if (!window.location.pathname.startsWith('/ar/')) { 
779      // Get the current path without the leading slash 
780      let currentPath = window.location.pathname.substring(1); 
781					currentPath = currentPath.replace('fr/', ''); 
782      const newPath = '/ar/'+currentPath; 
783      const newUrl = window.location.origin +''+ newPath; 
784      window.location.replace(newUrl); 
785
786
787}); 
788			 
789			 
790        $("#navDropdownMenuMobile, #navDropdownMenuService").click(function (event) { 
791            event.stopPropagation(); 
792        }); 
793        if (typeof navMenuLinks == 'undefined') { 
794 
795const navMenuLinks = document.querySelectorAll('.nav-menu-link'); 
796 
797 
798 
799// Add an event listener to each `<li>` element 
800navMenuLinks.forEach(navMenuLink => { 
801  // Add the `active` class to the `<li>` element when it or any of its child elements is clicked 
802	 
803  navMenuLink.addEventListener('click', (event) => { 
804    // Get the parent `<li>` element of the clicked element 
805    const parent = event.target.closest('.nav-menu-link'); 
806     
807    // Remove the `active` class from all other `<li>` elements 
808    navMenuLinks.forEach(otherNavMenuLink => { 
809      otherNavMenuLink.classList.remove('active'); 
810    }); 
811 
812    // Add the `active` class to the parent `<li>` element 
813    parent.classList.add('active'); 
814		const mainLink = navMenuLink.querySelector('a'); 
815                if (mainLink) { 
816                    const mainHref = mainLink.getAttribute('href'); 
817                    mainLink.style.textDecoration = 'none'; // Remove default underline 
818                        mainLink.style.position = 'relative'; 
819                        mainLink.style.color = 'inherit'; // Keep the original color 
820                        mainLink.style.transition = 'color 0.3s ease'; 
821 
822                        const underline = document.createElement('span'); 
823                        underline.className = 'active-underline'; 
824                        underline.style.position = 'absolute'; 
825                        underline.style.bottom = '-3px'; 
826                        underline.style.left = '0'; 
827                        underline.style.right = '0'; 
828                        underline.style.height = '2px'; 
829                        underline.style.backgroundColor = 'red'; 
830                        underline.style.transform = 'scaleX(1)'; 
831                        underline.style.transformOrigin = 'center'; 
832                        underline.style.transition = 'transform 0.3s ease'; 
833                        mainLink.appendChild(underline); 
834
835  }); 
836}); 
837
838    }); 
839</script> 
840<#if curSection=="business|entreprises"> 
841	   <div  class="business-padding"></div> 
842	<#else> 
843		<div class="personal-padding"></div> 
844</#if> 
845<style> 
846	.business-padding	{ 
847	margin-top: 7.5rem; 
848
849	.personal-padding	{ 
850	margin-top: 7.5rem; 
851
852			@media (max-width: 550px) { 
853        .business-padding	{ 
854	margin-top: 8.5rem; 
855
856	.personal-padding	{ 
857	margin-top: 7.5rem; 
858
859
860	@media (max-width: 450px) { 
861        .business-padding	{ 
862	margin-top: 7.5rem; 
863
864	.personal-padding	{ 
865	margin-top: 7.5rem; 
866
867
868 
869</style> 
870<script> 
871var lazyloadImages; 
872if ("IntersectionObserver" in window) { 
873    lazyloadImages = document.querySelectorAll(".lazy"); 
874    var imageObserver = new IntersectionObserver(function (entries, observer) { 
875        entries.forEach(function (entry) { 
876 
877            if (entry.isIntersecting) { 
878                var image = entry.target; 
879                if (image.src == undefined || image.src == null || image.src == "") { 
880                    image.src = image.dataset.src; 
881                    image.classList.remove("lazy"); 
882
883                imageObserver.unobserve(image); 
884
885        }); 
886    }); 
887 
888    lazyloadImages.forEach(function (image) { 
889        imageObserver.observe(image); 
890    }); 
891 
892} else { 
893 
894    var lazyloadThrottleTimeout; 
895    lazyloadImages = document.querySelectorAll(".lazy"); 
896 
897    function lazyload() { 
898        if (lazyloadThrottleTimeout) { 
899            clearTimeout(lazyloadThrottleTimeout); 
900
901 
902        lazyloadThrottleTimeout = setTimeout(function () { 
903            var scrollTop = window.pageYOffset; 
904            lazyloadImages.forEach(function (img) { 
905                if (img.offsetTop < (window.innerHeight + scrollTop)) { 
906                    if (img.src == undefined || img.src == null || img.src == "") { 
907                        img.src = img.dataset.src; 
908                        img.classList.remove('lazy'); 
909
910
911            }); 
912 
913            if (lazyloadImages.length == 0) { 
914                document.removeEventListener("scroll", lazyload); 
915                window.removeEventListener("resize", lazyload); 
916                window.removeEventListener("orientationChange", lazyload); 
917
918        }, 20); 
919
920 
921    document.addEventListener("scroll", lazyload); 
922    window.addEventListener("resize", lazyload); 
923    window.addEventListener("orientationChange", lazyload); 
924 
925}	 
926</script> 
  • Choose And Control In All Serenity

    PRESS

    Stay Connected

    Man Image
  • Choose And Control In All Serenity

    BUSINESS

    Choose And Control In All Serenity

    Man Image
  • Choose And Control In All Serenity

    BUSINESS

    Choose And Control In All Serenity

    Man Image
to
Mockup
Mockup
Mockup

Avec l’application My Ooredoo,
gérez votre ligne en un seul clic
et en toute simplicité

OBTENEZ LA DERNIÈRE

APPLICATION OOREDOO