update defunt cover on the defunt list
This commit is contained in:
parent
c1a69f0d73
commit
f4181f2a7d
@ -139,6 +139,7 @@ return [
|
||||
|
||||
//defuntCover
|
||||
['name' => 'page#setDefuntCover', 'url' => '/defunt/setDefuntCover', 'verb' => 'POST'],
|
||||
['name' => 'page#getCoverProducts', 'url' => '/getCoverProducts', 'verb' => 'PROPFIND'],
|
||||
|
||||
//user groups getUserConnectedGroups
|
||||
['name' => 'page#getUserConnectedGroups', 'url' => '/getUserConnectedGroups', 'verb' => 'GET'],
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -2927,6 +2927,7 @@ class PageController extends Controller {
|
||||
* @NoAdminRequired
|
||||
* @NoCSRFRequired
|
||||
* @param int $defuntId
|
||||
* @param int $productId
|
||||
*/
|
||||
|
||||
public function setDefuntCover($defuntId,$productId){
|
||||
@ -2941,7 +2942,6 @@ class PageController extends Controller {
|
||||
/**
|
||||
* @NoAdminRequired
|
||||
* @NoCSRFRequired
|
||||
* @param int $defuntId
|
||||
*/
|
||||
|
||||
public function getUserConnectedGroups(){
|
||||
@ -2966,4 +2966,17 @@ class PageController extends Controller {
|
||||
}
|
||||
catch(\OCP\Files\NotFoundException $e) { }
|
||||
}
|
||||
|
||||
/**
|
||||
* @NoAdminRequired
|
||||
* @NoCSRFRequired
|
||||
*/
|
||||
|
||||
public function getCoverProducts(){
|
||||
try{
|
||||
$coverProducts = $this->myDb->getCoverProducts();
|
||||
return $coverProducts;
|
||||
}
|
||||
catch(\OCP\Files\NotFoundException $e) { }
|
||||
}
|
||||
}
|
||||
|
||||
@ -61,6 +61,9 @@ document.body.addEventListener('click', e => {
|
||||
else if(e.target.className.includes("selectProductsList")){
|
||||
Produit.loadProductListToSelect(e);
|
||||
}
|
||||
else if(e.target.className.includes("selectCoverProductsList")){
|
||||
Produit.loadCoverProductListIntoSelect(e);
|
||||
}
|
||||
else if(e.target.className.includes("loadSelect_listdevis")){
|
||||
Devis.loadDevisList_dnum(e);
|
||||
}else if(e.target.className.includes("loadSelect_listalldevis")){
|
||||
|
||||
@ -50,7 +50,7 @@ export class Defunt {
|
||||
'<div>'+this.numero_devis+'</div>', // numeroDevis
|
||||
'<div>'+this.pompe+'</div>', // pompe
|
||||
'<div>'+this.lieu+'</div>', // lieu
|
||||
'<div>'+this.productCoverDescription+'</div>', // lieu
|
||||
'<div class="selectCoverProductsList" data-id="' + this.id + '" data-current="' + this.productId + '">' +this.productCoverDescription+'</div>', // lieu
|
||||
'<div style="display:inline-block;margin-right:0px;width:80%;"><a href="' + this.baseUrl + '"><button>' + t('gestion', 'Open') + '</button></a></div><div data-modifier="defunt" data-id=' + this.id + ' data-table="defunt" style="display:inline-block;margin-right:0px;" class="deleteItem icon-delete"></div>'
|
||||
];
|
||||
return myrow;
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import { showError } from "@nextcloud/dialogs";
|
||||
import { baseUrl, cur, checkSelectPurJs, LoadDT, showDone } from "../modules/mainFunction.mjs";
|
||||
import { updateDB } from "../modules/ajaxRequest.mjs";
|
||||
import { updateDB, setDefuntCover } from "../modules/ajaxRequest.mjs";
|
||||
|
||||
export class Produit {
|
||||
|
||||
@ -77,7 +77,21 @@ export class Produit {
|
||||
}
|
||||
};
|
||||
oReq.send();
|
||||
}
|
||||
|
||||
static getCoverProductsList(callback){
|
||||
var oReq = new XMLHttpRequest();
|
||||
oReq.open('PROPFIND', baseUrl + '/getCoverProducts', true);
|
||||
oReq.setRequestHeader("Content-Type", "application/json");
|
||||
oReq.onload = function(e){
|
||||
if (this.status == 200) {
|
||||
callback(JSON.parse(this.response));
|
||||
}else{
|
||||
showError(this.response);
|
||||
}
|
||||
};
|
||||
oReq.send();
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
@ -130,4 +144,53 @@ export class Produit {
|
||||
e.target.appendChild(selectElement);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {*} lid
|
||||
*/
|
||||
static loadCoverProductListIntoSelect(e){
|
||||
Produit.getCoverProductsList(response => {
|
||||
|
||||
var selectElement = document.createElement("select");
|
||||
selectElement.dataset.current = e.target.dataset.current;
|
||||
selectElement.dataset.id = e.target.dataset.id;
|
||||
selectElement.dataset.old = e.target.innerHTML;
|
||||
|
||||
selectElement.addEventListener("change", el=>{
|
||||
if(el.target.value != 0){
|
||||
let setDefuntCoverPayload = {
|
||||
defuntId : el.target.parentElement.dataset.id,
|
||||
productId : el.target.value
|
||||
}
|
||||
setDefuntCover(setDefuntCoverPayload);
|
||||
var parentElement = el.target.parentElement
|
||||
parentElement.innerHTML = el.target.options[el.target.selectedIndex].text;
|
||||
parentElement.dataset.current = el.target.value;
|
||||
}else{
|
||||
var parentElement = el.target.parentElement
|
||||
parentElement.innerHTML = el.target.dataset.old
|
||||
}
|
||||
});
|
||||
|
||||
var option = document.createElement("option");
|
||||
option.value = 0;
|
||||
option.text = t('gestion', 'Cancel');
|
||||
selectElement.appendChild(option);
|
||||
|
||||
JSON.parse(response).forEach(myresp => {
|
||||
var txt = document.createElement("textarea");
|
||||
txt.innerHTML = myresp.description;
|
||||
var option = document.createElement("option");
|
||||
option.value = myresp.id;
|
||||
option.text = txt.value;
|
||||
selectElement.appendChild(option);
|
||||
});
|
||||
|
||||
checkSelectPurJs(selectElement);
|
||||
|
||||
e.target.innerHTML = ''
|
||||
e.target.appendChild(selectElement);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user