| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 | 
							- import { formscreen } from "./formscreen";
 
- import { product_give_back_request } from "./product_give_back_request.js";
 
- import { product_reservations_request } from "./product_reservations_request";
 
- import { searcher } from "./searcher.js";
 
- export class product_all_rents extends formscreen {
 
-     #target;
 
-     constructor(target) {
 
-         super();
 
-         this.#target = target;
 
-     }
 
-     get _name() {
 
-         return _("all-rents");
 
-     }
 
-     get _has_submit() {
 
-         return false;
 
-     }
 
-     #create_single(target) {
 
-         const container = document.createElement("div");
 
-         container.classList.add("reservation-info");
 
-         
 
-         if (target.phone_number !== null) {
 
-             const phone_icon = document.createElement("span");
 
-             phone_icon.classList.add("material-icons");
 
-             phone_icon.innerText = "phone";
 
-             const phone_number = document.createElement("span");
 
-             phone_number.classList.add("numbers")
 
-             phone_number.innerText = target.phone_number;
 
-             const phone_number_container = document.createElement("p");
 
-             phone_number_container.appendChild(phone_icon);
 
-             phone_number_container.appendChild(phone_number);
 
-             container.appendChild(phone_number_container);
 
-         }
 
-         if (target.email !== null) {
 
-             const email_icon = document.createElement("span");
 
-             email_icon.classList.add("material-icons");
 
-             email_icon.innerText = "mail";
 
-             const email = document.createElement("span");
 
-             email.innerText = target.email;
 
-             const email_container = document.createElement("p");
 
-             email_container.appendChild(email_icon);
 
-             email_container.appendChild(email);
 
-             container.appendChild(email_container);
 
-         }
 
-         return container;
 
-     }
 
-     #create_single_button(target) {
 
-         const button = document.createElement("button");
 
-         button.classList.add("material-icons");
 
-         button.classList.add("give-back-button");
 
-         button.innerText = "save_alt";
 
-         button.addEventListener("click", async () => {
 
-             try {
 
-                 this._info = _("processing");
 
-                 const request = new product_give_back_request(target);
 
-                 const response = await request.connect();
 
-                 if (!response.result) {
 
-                     throw new Error(_(response.cause));
 
-                 }
 
-                 this._refresh();
 
-                 searcher.reload();
 
-             } catch (error) {
 
-                 this._error = String(error);
 
-             }
 
-         });
 
-         return button;
 
-     }
 
-     _process() {
 
-         return;
 
-     }
 
-     async _build_form() {
 
-         try {
 
-             this._info = _("loading");
 
-             const request = new product_reservations_request(this.#target);
 
-             const response = await request.connect();
 
-             const list = document.createElement("div");
 
-             list.classList.add("reservations-list");
 
-             let empty = true;
 
-             response.collection.forEach(count => {
 
-                 const item = document.createElement("div");
 
-                 item.classList.add("reservation");
 
-                 const left = this.#create_single(count);
 
-                 const right = this.#create_single_button(count);
 
-                 empty = false;
 
-                 item.appendChild(left);
 
-                 item.appendChild(right);
 
-                 list.appendChild(item);
 
-             });
 
-             
 
-             this._append_child(list);
 
-             
 
-             if (empty) {
 
-                 this._success = "not-found-any-reservations";
 
-             } else {
 
-                 this._clear_results();
 
-             }
 
-         } catch (error) {
 
-             this._error = String(error);
 
-         }
 
-     }
 
- }
 
 
  |