goodfood-sa.com
Open in
urlscan Pro
2606:4700:3034::ac43:cd32
Public Scan
URL:
https://goodfood-sa.com/
Submission: On November 08 via api from BE — Scanned from DE
Submission: On November 08 via api from BE — Scanned from DE
Form analysis
1 forms found in the DOM<form autocomplete="off">
<div class="custom-field-form" :class="{ arabic }" v-if="custom_fields.length > 0">
<div :id="field.pk" ref="custom_field_elements" v-if="field.enabled && hasEnabledOptions(field)" class="custom-field" :class="[field.type, field.ui_elem]" v-for="(field, index) in custom_fields">
<div class="flex-row flex-between">
<div class="custom-field-title flex" :tabindex="index"> { field[titleField] } <span class="required mlx-1" v-if="field.required"> { arabic ? '(مطلوب)' : '(required)' } </span>
<span class="required mlx-1" v-if="field.min_selection_num || field.max_selection_num"> { arabic ? 'اختر: ' : 'Select: '} </span>
<span class="required mlx-1" v-if="field.min_selection_num"> { arabic ? 'الحد الأدنى ' + field.min_selection_num : 'Min '+ field.min_selection_num} </span>
<span class="required mlx-1" v-if="field.max_selection_num && field.min_selection_num"> { arabic ? 'و' : '&'} </span>
<span class="required mlx-1" v-if="field.max_selection_num"> { arabic ? 'الحد الاقصى ' + field.max_selection_num : ' Max '+ field.max_selection_num} </span>
</div>
<span v-if="['text', 'date'].includes(field.type) && Number(field.price) > 0" class="nobreak ltr price">
<span class="custom-field-price-plus-sign price">+</span> { formatMoney(field.price) } </span>
<span v-if="field.flat_price" class="nobreak ltr price">
<span class="custom-field-price-plus-sign price">+</span> { formatMoney(field.flat_price) } <span v-if="field.type === 'single-select'"> { arabic ? 'لأي منها' : 'for any' } </span>
<span v-if="field.type === 'multi-select'"> { arabic ? 'لكل منها' : 'each' } </span>
</span>
</div>
<!-- Text Field -->
<div v-if="field.type == 'text'" class="flex-row flex-between">
<input type="text" class="form-control" v-model.trim="field.value" autocomplete="off" validation-tip-element="" @change="fieldChanged(field, $event)" :maxlength="field.max_characters" :tabindex="index">
</div>
<!-- Date Field -->
<div class="flex-row flex-between" v-if="field.type == 'date' && field.ui_elem == 'date-pick'">
<input type="date" class="form-control" v-model="field.value" validation-tip-element="" @change="fieldChanged(field, $event)" :tabindex="index">
</div>
<!-- Single-select (radio) -->
<div v-for="option in field.options" class="custom-option flex-row flex-between" v-if="field.type == 'single-select' && field.ui_elem == 'radio' && isEnabled(option)">
<input type="radio" :id="option.id + '-' + index" :value="option.id" @click="clickRadioOption(field)" v-model="field.value" @change="fieldChanged(field, $event)" :tabindex="index">
<label :for="option.id + '-' + index" class="my-1 flex justify-content-between w-100">
<div class="flex align-items-center">
<div class="radio mrx-3">
<div class="circle"></div>
</div>
<div>{ option[nameField] }</div>
</div>
<span class="nobreak ltr price" v-if="option.computed_price && field.flat_price === null">
<span class="custom-field-price-plus-sign price">+</span> { formatMoney(option.computed_price) } </span>
</label>
</div>
<!-- Multi-select (checkbox) -->
<div v-for="option in field.options" class="custom-option flex-row flex-between items-center" v-if="field.type == 'multi-select' && field.ui_elem == 'checkbox' && isEnabled(option)">
<input type="checkbox" :id="option.id + '-' + index" :value="option.id" v-model="field.value" :disabled="option.disabled" @change="checkValidSelection(field, $event)" :tabindex="index">
<label :for="option.id + '-' + index" class="my-1 flex justify-content-between w-100">
<div class="flex align-items-center">
<div class="check mrx-3">
<img src="https://d14ty4rvj8rn16.cloudfront.net/static/dashboard/dashboard/svg/check.svg" alt="Check icon">
</div>
<div>{ option[nameField] }</div>
</div>
<span class="nobreak ltr price" v-if="option.computed_price && field.flat_price === null">
<span class="custom-field-price-plus-sign price">+</span> { formatMoney(option.computed_price) } </span>
</label>
</div>
<!-- Single-select (dropdown) -->
<div class="position-relative" v-if="field.type == 'single-select' && field.ui_elem == 'dropdown'">
<div class="position-absolute select-placeholder" v-if="field.value == ''"> { arabic ? 'حدد الخيار' : 'Select Option' } </div>
<select :id="field[titleField]" class="form-control" style="height: 56px; border-radius: 8pt" v-model="field.value" validation-tip-element="" @change="fieldChanged(field, $event)" :tabindex="index">
<option v-if="!field.required" value="" label=""></option>
<option v-for="option in field.options" :value="option.id" :label="getOptionLabel(field, option)" v-if="isEnabled(option)"> { getOptionLabel(field, option) } </option>
</select>
</div>
</div>
</div>
</form>
Text Content
تسجيل دخول جود فود | Good food جود فود متجر يقدم مجموعة متنوعة من وجبات الفطور والغداء بنكهات مميزة وجودة عالية. وجبات وجبات (1) good food وجبات 25.00 SAR الشروط والأحكام | سياسة الخصوصية | سياسة الاسترجاع | اتصل بنا This site is protected by reCAPTCHA and the google Privacy Policy and Terms of Service apply. UNNAMED DIALOG {text} {countdown} {text} { arabic ? "إلغاء" : "Cancel" } { localize(product.name, lang) } { localize(product.description, lang) } { localize(product.custom_label, lang) } { field[titleField] } { arabic ? '(مطلوب)' : '(required)' } { arabic ? 'اختر: ' : 'Select: '} { arabic ? 'الحد الأدنى ' + field.min_selection_num : 'Min '+ field.min_selection_num} { arabic ? 'و' : '&'} { arabic ? 'الحد الاقصى ' + field.max_selection_num : ' Max '+ field.max_selection_num} + { formatMoney(field.price) } + { formatMoney(field.flat_price) } { arabic ? 'لأي منها' : 'for any' } { arabic ? 'لكل منها' : 'each' } { option[nameField] } + { formatMoney(option.computed_price) } { option[nameField] } + { formatMoney(option.computed_price) } { arabic ? 'حدد الخيار' : 'Select Option' } { getOptionLabel(field, option) } { dialogData.title } { dialogData.btnSecondaryText } { dialogData.btnPrimaryText } { localize(item, lang, 'name_en', 'name_ar') } { localize(field, lang, 'valueText_en', 'valueText_ar') } { item.quantity } ×{ item.quantity } { localize(item, lang, 'name_en', 'name_ar') } {promotions.percentage}% {formatMoney(promotions.currency)} { localize(unavailable_message, this.$parent.lang) } { formatMoney(price) } { formatMoney(newPrice) } { formatMoney(price) } { dialogData.title } { dialogData.btnSecondaryText } { dialogData.btnPrimaryText } لم يتم العثور على نتائج. No results found. {props.option.dial_code} { arabic ? props.option.name_ar : props.option.name_en } { getCountryCallingCode(selectedCountry.code) } { arabic ? "إعادة إرسال" : "Resend" } { arabic ? "إعادة إرسال في" : "Resend in" } {resendSeconds} اظهار {item} عرض { page_badge } { startIndex } إلى { endIndex } من { totalElements } { page_badge } { startIndex } - { endIndex } { start_end_index_text } { totalElements } {arabic ? 'لا يوجد طلبات حاليا' : 'There are no orders yet'} {arabic ? 'قيد التنفيذ' : 'In Progress'} {arabic ? 'تم التوصيل' : 'Delivered'} {arabic ? 'قيد الانتظار' : 'Pending'} {arabic ? 'ملغي' : 'Cancelled'} {arabic ? 'عرض التفاصيل' : 'View Details'} {arabic ? 'رقم الطلب' : 'Order'} # { order.number } {formatDate(order.created)} * {purchase.quantity}× {purchase.name[lang]} {purchase.total_items_price} -------------------------------------------------------------------------------- { arabic ? "طريقة الدفع" : "Payment Method" } { arabic ? 'الدفع عند الإستلام' : 'Cash On Delivery' } { arabic ? 'حوالة مصرفية' : 'Bank Transfer' } { arabic ? 'UWallet' : 'UWallet' } { payment_methods_labels['online_payment'][lang] } { arabic ? "طريقة التوصيل" : "Delivery Method" } { arabic ? 'التوصيل' : 'Delivery' } { arabic ? 'الاستلام' : 'Pick up' } { arabic ? 'زيارة المتجر' : 'Store visit' } { arabic ? 'من داخل المتجر' : 'In Store' } -------------------------------------------------------------------------------- {order.delivery_address} {order.buyer_name} {order.buyer_phone} -------------------------------------------------------------------------------- {order.purchases.length} {arabic ? 'مجموع أسعار السلع' : 'Items Subtotal'} {order.items_subtotal} { item.kind_display_name[lang] } - { item.name } { item.amount } {order.currency} {arabic ? 'المجموع' : 'Total'} {order.total} {!arabic ? '1 item' : 'سلعة واحدة'} {!arabic ? '2 items' : 'سلعتان' } {order.purchases.length} {arabic ? 'سلع' : 'items' } {order.purchases.length} سلعة -------------------------------------------------------------------------------- {arabic ? 'المجموع' : 'Total'} {order.total} +{ stackedImages() }