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

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 &amp;&amp; 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 &amp;&amp; field.min_selection_num"> { arabic ? 'و' : '&amp;'} </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) &amp;&amp; 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' &amp;&amp; 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' &amp;&amp; field.ui_elem == 'radio' &amp;&amp; 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 &amp;&amp; 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' &amp;&amp; field.ui_elem == 'checkbox' &amp;&amp; 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 &amp;&amp; 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' &amp;&amp; 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() }