entity-list-logo
`); return; }else{ let btnUrl = ""; if(authenticationRequired){ if(!themeDisplay.isSignedIn()){ console.log("authentication required-----") btnUrl = '/theqa-login?redirect=/ar/w/get-sailor-s-identity-document-license?p_l_back_url_title=Search' }else{ btnUrl = 'https://esma.mtcit.gov.om/' } }else{ btnUrl = 'https://esma.mtcit.gov.om/' } $('#btn-loader').removeClass('d-none').addClass('d-flex'); $('#btn-container').addClass('d-none'); redirectToSPPortal(false) .then(({ url, serviceType }) => { const startNowBtn = $('#btn-container').find('gup-button'); localStorage.setItem("serviceType",serviceType); startNowBtn.attr('href', url); if (serviceType !== 'EVENT_PROCESSING' && serviceType !== 'FORM_MANAGEMENT') { startNowBtn.on('click', function (e) { e.preventDefault(); window.open(url, '_blank'); }); } }) .catch(error => { console.error("Error in redirectToSPPortal:", error); }); if(startNowImageFlag){ $('#btn-container').find('#arrow-forward').removeClass('d-none') }else{ $('#btn-container').find('#launch').removeClass('d-none'); $('#btn-container').find('p').removeClass('d-none'); } $('#btn-container').removeClass('d-none').addClass('d-flex'); } }else{ redirectToSPPortal(true) .then(({ url, serviceType }) => { $(".sp-start-now-btn").attr("href", url); }) .catch(error => { console.error("Error in redirectToSPPortal:", error); }); $('#start-now-btn').removeClass('d-none').addClass('d-flex'); } $('#btn-loader').addClass('d-none').removeClass('d-flex'); $('#btn-container').removeClass('d-none').addClass('d-flex'); }) .catch((error) => { console.log(error); $('#btn-loader').addClass('d-none').removeClass('d-flex'); }); } async function getCrNumber(){ let crNumber = null; const civilNumber = '20095'; try { const response = await fetch(window.location.origin+`/o/gup-nortal-custom-wrapper-headless/v1.0/getusersasloggedindata` , { headers: { accept: "application/json", "x-csrf-token": Liferay.authToken, }, }); if (!response.ok) { throw new Error("HTTP error! status: "+response.status); } const wrapperData = await response.json(); if (wrapperData.statusCode=="500") { throw new Error("HTTP error! status: "+wrapperData.responseMessage); } const data = typeof wrapperData.responseMessage == "string" ? JSON.parse(wrapperData.responseMessage) : wrapperData.responseMessage; if(data.items.length > 0 ){ //crNumber=data.items[0].cRNumber; if(data.items[0].viewableAs=="business"){ crNumber=data.items[0].cRNumber; } } } catch (error) { console.error('Error fetching data:', error); throw error; } return crNumber; }; async function getServiceId(){ let serviceId = null; try { const response = await fetch("/o/c/servicedetailsmappings/?restrictFields=actions,creator&filter=articleId eq 1050190", { headers: { 'accept': 'application/json' } }) if (!response.ok) { throw new Error("HTTP error! status: "+response.status); } const data = await response.json(); if(data.items.length > 0 ){ serviceId=data.items[0].aGCCode; } } catch (error) { console.error('Error fetching data:', error); throw error; } return serviceId; }; async function getPublicUserData(){ let data = null; const civilNumber = '20095'; try { const response = await fetch(window.location.origin+"/o/c/publicusers/?filter=civilNumber eq '"+civilNumber+"'" , { headers: { accept: "application/json", "x-csrf-token": Liferay.authToken, }, }); if (!response.ok) { throw new Error("HTTP error! status: "+response.status); } const responseData = await response.json(); if(responseData.items.length > 0 ){ data= sanitizeResponse(responseData.items[0]); } } catch (error) { console.error('Error fetching data:', error); throw error; } return data; } async function getServiceType(serviceId){ let serviceType = null; try { const response = await fetch(window.location.origin+"/o/c/onboardedservicedetails/?restrictFields=actions,creator&filter=serviceId eq '"+serviceId+"'" , { headers: { accept: "application/json", "x-csrf-token": Liferay.authToken, }, }); if (!response.ok) { throw new Error("HTTP error! status: "+response.status); } const responseData = await response.json(); if(responseData.items.length > 0 ){ serviceType = responseData.items[0].serviceType; console.log(serviceType); } } catch (error) { console.error('Error fetching data:', error); throw error; } return serviceType; } async function getHeadlessData(authMethod, serviceId, language, callbackUrl) { console.log("POST getHeadlessData"); const bodyData = { authMethod: authMethod, serviceId: serviceId, //serviceType: serviceType, languageId: language, callbackUrl: callbackUrl, //redirectUrl: spRedirectLink source: "GUP" }; const requestOptions = { method: "POST", headers: { "Content-Type": "application/json", "Accept": "application/json", "x-csrf-token": Liferay.authToken }, body: JSON.stringify(bodyData) }; const url = "/o/gup-nortal-custom-wrapper-headless/v1.0/getServiceDetailsRequestParam"; const response = await fetch(url, requestOptions); const json = await response.json(); console.log("API RESPONSE:", json); return json; } async function redirectToSPPortal(isArrowForward){ const authMethod = localStorage.getItem("authMethod"); const serviceId = await getServiceId(); const serviceType = await getServiceType(serviceId); //const serviceData = await getHeadlessData(); console.log("is logged out :: ", !themeDisplay.isSignedIn() && serviceType); if(!themeDisplay.isSignedIn() && serviceType){ let url='/theqa-login?redirect=/ar/w/get-sailor-s-identity-document-license?p_l_back_url_title=Search'; /*if(authMethod=="mpki" || authMethod=="idp"){ url='/pki-login?redirect=/ar/w/get-sailor-s-identity-document-license?p_l_back_url_title=Search'; }else{ url= '/theqa-login?redirect=/ar/w/get-sailor-s-identity-document-license?p_l_back_url_title=Search' }*/ return { url: url, serviceType: serviceType } } let language = themeDisplay.getLanguageId(); language = language.split("_")[0]; //const crNumber = await getCrNumber(); //console.log("crNumber-----", crNumber); let startNowBtnUrl; let spRedirectLink; if(!(isArrowForward)){ spRedirectLink = 'https://esma.mtcit.gov.om/'; }else{ spRedirectLink = $("#start-now-btn").attr("href"); } console.log("spRedirectLink : ",spRedirectLink); if(serviceType=="EVENT_PROCESSING"){ console.log("Calling EP Service"); const queryString = window.location.search; const urlParams = new URLSearchParams(queryString); const categoryParam = urlParams.get('category'); const contentParam = urlParams.get('content'); let relativeUrl=themeDisplay.getLayoutRelativeURL(); if(relativeUrl.startsWith("/")){ relativeUrl = relativeUrl.substring(1); } let callbackUrl = null; if(authMethod=="theqa"){ callbackUrl = themeDisplay.getCDNBaseURL()+'/'+language+'/theqa-login?redirect='+relativeUrl; }else{ callbackUrl = themeDisplay.getCDNBaseURL()+'/'+language+'/pki-login?redirect='+relativeUrl; } if (categoryParam) { callbackUrl += '&category='+categoryParam; } if (contentParam) { callbackUrl += '&content='+contentParam; } let modifiedspRedirectUrl = spRedirectLink.includes("#") ? spRedirectLink.replace("#", "_HASH_") : spRedirectLink; const serviceUrl = new URL(modifiedspRedirectUrl); const serviceData = await getHeadlessData(authMethod, serviceId, language, callbackUrl); console.log("EP Service Data: ", serviceData); if (serviceData.statusCode=="200" && serviceData?.responseMessage) { //startNowBtnUrl = serviceData.responseMessage; console.log("serviceData.responseMessage :: ", serviceData.responseMessage); modifiedUrl = modifiedspRedirectUrl.includes("_HASH_") ? modifiedspRedirectUrl.replace("_HASH_", "#") : modifiedspRedirectUrl; startNowBtnUrl = modifiedUrl.includes("?") ? modifiedUrl + "&" + serviceData.responseMessage : modifiedUrl + "?" +serviceData.responseMessage; } else { console.error("Backend did not return responseMessage"); } }else{ startNowBtnUrl=spRedirectLink; } return { url: startNowBtnUrl, serviceType: serviceType }; } }); //show more steps document.addEventListener("DOMContentLoaded", () => { const timelineItems = document.querySelectorAll(".timeline-item"); const loadMoreContainer = document.querySelector(".load-more-container"); const loadMoreBtn = document.querySelector(".load-more-btn"); const icon = document.querySelector(".load-more-container i"); const toggleVisibility = (showMore) => { timelineItems.forEach((item, index) => { if (index >= 4) { item.classList.toggle("hidden-steps", !showMore); } if (index == 3) { item.classList.toggle("hide-step-line", !showMore); } }); }; toggleVisibility(false); if(loadMoreBtn){ loadMoreBtn.addEventListener("click", () => { const isExpanded = !timelineItems[4].classList.contains("hidden-steps"); toggleVisibility(!isExpanded); loadMoreBtn.textContent = isExpanded ? loadMoreBtn.getAttribute("data-show-all") : loadMoreBtn.getAttribute("data-show-less"); if (isExpanded) { icon.classList.replace("ri-indeterminate-circle-line", "ri-add-circle-line"); } else { icon.classList.replace("ri-add-circle-line", "ri-indeterminate-circle-line"); } }); } }); //hiding steps if empty const firstTimelineItemP = document.querySelector('.service-steps .timeline-item:first-child p'); const serviceSteps = document.querySelector('.service-steps'); if (firstTimelineItemP) { if (firstTimelineItemP.textContent.trim() === '') { serviceSteps.style.display = 'none'; } else { serviceSteps.style.display = 'block'; } } function getEntitiesList() { const entityID = $('.entities.d-flex ').attr('id'); if(entityID != " "){ fetch( window.location.origin+`/o/c/entities/scopes/20117?fields=categoryImage&restrictFields=actions%2Ccreator&filter=categoryId eq `+entityID ,{ headers: { 'accept': 'application/json', "x-csrf-token": Liferay.authToken, } }).then((response) => response.json()) .then((data) => { if(data.items[0].categoryImage.link != undefined){ $('.entities.d-flex img').attr("src",data.items[0].categoryImage.link.href); } }) .catch((error) => { console.log("Error"); }); } } getEntitiesList(); if(!Liferay.ThemeDisplay.isSignedIn()){ $(".service-user-info").addClass("hide"); }else{ $(".service-user-info").removeClass("hide"); } اطلب تنفيذ الاستثمار

اطلب تنفيذ الاستثمار

تمكنك هذه الخدمة من تقديم طلب لتنفيذ حكم، أو محضر صلح، أو أمر قضائي، أو أمر أداء، أو أمر على عريضة، أو حكم أجنبي، أو المحررات والأوراق القضائية. يُقدَّم الطلب من المحكوم لصالحه إلى المحكمة التي أصدرت الحكم أو إلى المحكمة التي يُجرى التنفيذ فيها.

entity-list-logo Supreme Judiciary council