Merge remote-tracking branch 'origin/main'
This commit is contained in:
commit
8af81d699c
@ -1,12 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
apt-get update
|
|
||||||
apt-get install -y libgl1
|
sudo apt-get update && sudo apt-get install libgl1 libglib2.0-dev libzbar0 cmake build-essential xmlsec1 libxmlsec1-dev pkg-config libxml2-dev libxmlsec1-dev libxmlsec1-openssl libssl-dev -y
|
||||||
apt-get install -y libglib2.0-dev
|
|
||||||
apt-get install -y libzbar0
|
|
||||||
apt-get install -y cmake build-essential xmlsec1 libxmlsec1-dev
|
|
||||||
apt-get install -y pkg-config libxml2-dev libxmlsec1-dev libxmlsec1-openssl
|
|
||||||
apt-get install -y libssl-dev
|
|
||||||
pip install --upgrade pip
|
pip install --upgrade pip
|
||||||
pip install -r requirements_dev.txt
|
pip install -r requirements_dev.txt
|
||||||
./apply_initial_migrations.sh
|
./apply_initial_migrations.sh
|
||||||
|
|||||||
@ -483,7 +483,7 @@ class VendorForm(forms.ModelForm):
|
|||||||
:type Meta: Type[VendorForm.Meta]
|
:type Meta: Type[VendorForm.Meta]
|
||||||
"""
|
"""
|
||||||
phone_number = forms.CharField(label=_("Phone Number"),min_length=10,max_length=10,validators=[RegexValidator(regex='^05[0-9]{8}$')], required=True)
|
phone_number = forms.CharField(label=_("Phone Number"),min_length=10,max_length=10,validators=[RegexValidator(regex='^05[0-9]{8}$')], required=True)
|
||||||
contact_person = forms.CharField(label=_("Phone Number"),min_length=10,max_length=10,validators=[RegexValidator(regex='^05[0-9]{8}$')], required=True)
|
contact_person = forms.CharField(label=_("Contact Person"),min_length=10,max_length=10,validators=[RegexValidator(regex='^05[0-9]{8}$')], required=True)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Vendor
|
model = Vendor
|
||||||
|
|||||||
@ -472,7 +472,12 @@ class Car(models.Model):
|
|||||||
color = self.colors.exterior.name if self.colors else ""
|
color = self.colors.exterior.name if self.colors else ""
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
hash_object.update(f"{self.id_car_make.name}{self.id_car_model.name}{self.year}{self.id_car_serie.name}{self.id_car_trim.name}{color}".encode('utf-8'))
|
make = self.id_car_make.name if self.id_car_make else ""
|
||||||
|
model = self.id_car_model.name if self.id_car_model else ""
|
||||||
|
year = self.year if self.year else 0
|
||||||
|
serie = self.id_car_serie.name if self.id_car_serie else ""
|
||||||
|
trim = self.id_car_trim.name if self.id_car_trim else ""
|
||||||
|
hash_object.update(f"{make}{model}{year}{serie}{trim}{color}".encode('utf-8'))
|
||||||
return hash_object.hexdigest()
|
return hash_object.hexdigest()
|
||||||
|
|
||||||
def mark_as_sold(self,request):
|
def mark_as_sold(self,request):
|
||||||
@ -865,6 +870,8 @@ class Dealer(models.Model, LocalizedNameMixin):
|
|||||||
print(e)
|
print(e)
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
def get_vendors(self):
|
||||||
|
return VendorModel.objects.filter(entity_model=self.entity)
|
||||||
@property
|
@property
|
||||||
def is_staff_exceed_quota_limit(self):
|
def is_staff_exceed_quota_limit(self):
|
||||||
quota = self.user_quota
|
quota = self.user_quota
|
||||||
|
|||||||
@ -1318,6 +1318,12 @@ class CarUpdateView(
|
|||||||
def get_success_url(self):
|
def get_success_url(self):
|
||||||
return reverse("car_detail", kwargs={"pk": self.object.pk})
|
return reverse("car_detail", kwargs={"pk": self.object.pk})
|
||||||
|
|
||||||
|
def get_form(self, form_class=None):
|
||||||
|
form = super().get_form(form_class)
|
||||||
|
dealer = get_user_type(self.request)
|
||||||
|
print(dealer.get_vendors())
|
||||||
|
form.fields["vendor"].queryset = dealer.get_vendors()
|
||||||
|
return form
|
||||||
|
|
||||||
class CarDeleteView(
|
class CarDeleteView(
|
||||||
LoginRequiredMixin, PermissionRequiredMixin, SuccessMessageMixin, DeleteView
|
LoginRequiredMixin, PermissionRequiredMixin, SuccessMessageMixin, DeleteView
|
||||||
|
|||||||
@ -164,7 +164,7 @@
|
|||||||
<div class="btn-reveal-trigger position-static">
|
<div class="btn-reveal-trigger position-static">
|
||||||
<button class="btn btn-sm dropdown-toggle dropdown-caret-none transition-none btn-reveal fs-10" type="button" data-bs-toggle="dropdown" data-boundary="window" aria-haspopup="true" aria-expanded="false" data-bs-reference="parent"><span class="fas fa-ellipsis-h fs-10"></span></button>
|
<button class="btn btn-sm dropdown-toggle dropdown-caret-none transition-none btn-reveal fs-10" type="button" data-bs-toggle="dropdown" data-boundary="window" aria-haspopup="true" aria-expanded="false" data-bs-reference="parent"><span class="fas fa-ellipsis-h fs-10"></span></button>
|
||||||
<div class="dropdown-menu dropdown-menu-end py-2">
|
<div class="dropdown-menu dropdown-menu-end py-2">
|
||||||
<a class="dropdown-item" href="#!">{{ _("View") }}</a>
|
<a class="dropdown-item" href="{% url 'car_detail' car.pk %}">{{ _("View") }}</a>
|
||||||
<a class="dropdown-item" href="#!">{{ _("Export") }}</a>
|
<a class="dropdown-item" href="#!">{{ _("Export") }}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user