Merge pull request 'adjusted tooltip and added action for publishing method to context' (#3) from master into ccp-features
Reviewed-on: #3
This commit is contained in:
commit
2ef5372445
|
@ -83,6 +83,9 @@ class CCPMethodList extends HTMLElement{
|
||||||
</button>`
|
</button>`
|
||||||
: ``
|
: ``
|
||||||
}
|
}
|
||||||
|
<button data-index="0" name="publish" title="Publish to VRE" class="btn btn-warning ccp-toolbar-button ccp-toolbar-button-small">
|
||||||
|
<svg style="fill:black" viewBox="0 -960 960 960"><path d="M727-80q-47.5 0-80.75-33.346Q613-146.693 613-194.331q0-6.669 1.5-16.312T619-228L316-404q-15 17-37 27.5T234-366q-47.5 0-80.75-33.25T120-480q0-47.5 33.25-80.75T234-594q23 0 44 9t38 26l303-174q-3-7.071-4.5-15.911Q613-757.75 613-766q0-47.5 33.25-80.75T727-880q47.5 0 80.75 33.25T841-766q0 47.5-33.25 80.75T727-652q-23.354 0-44.677-7.5T646-684L343-516q2 8 3.5 18.5t1.5 17.741q0 7.242-1.5 15Q345-457 343-449l303 172q15-14 35-22.5t46-8.5q47.5 0 80.75 33.25T841-194q0 47.5-33.25 80.75T727-80Zm.035-632Q750-712 765.5-727.535q15.5-15.535 15.5-38.5T765.465-804.5q-15.535-15.5-38.5-15.5T688.5-804.465q-15.5 15.535-15.5 38.5t15.535 38.465q15.535 15.5 38.5 15.5Zm-493 286Q257-426 272.5-441.535q15.5-15.535 15.5-38.5T272.465-518.5q-15.535-15.5-38.5-15.5T195.5-518.465q-15.5 15.535-15.5 38.5t15.535 38.465q15.535 15.5 38.5 15.5Zm493 286Q750-140 765.5-155.535q15.5-15.535 15.5-38.5T765.465-232.5q-15.535-15.5-38.5-15.5T688.5-232.465q-15.5 15.535-15.5 38.5t15.535 38.465q15.535 15.5 38.5 15.5ZM727-766ZM234-480Zm493 286Z"/></svg>
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<p class="m-0 p-0 small" name="description"></p>
|
<p class="m-0 p-0 small" name="description"></p>
|
||||||
|
@ -300,7 +303,7 @@ class CCPMethodList extends HTMLElement{
|
||||||
toArchive(id){
|
toArchive(id){
|
||||||
this.#boot.secureFetch(`${this.#serviceurl}/methods/${id}/archive`, { method: "POST" })
|
this.#boot.secureFetch(`${this.#serviceurl}/methods/${id}/archive`, { method: "POST" })
|
||||||
.then(reply =>{
|
.then(reply =>{
|
||||||
if (reply.status !== 200) {
|
if (!reply.ok) {
|
||||||
throw "Unable to archive"
|
throw "Unable to archive"
|
||||||
}
|
}
|
||||||
}).catch(err=>{ alert(err)})
|
}).catch(err=>{ alert(err)})
|
||||||
|
@ -310,7 +313,7 @@ class CCPMethodList extends HTMLElement{
|
||||||
if(url){
|
if(url){
|
||||||
this.#boot.secureFetch(`${this.#serviceurl}/methods/archive?url=${url}`)
|
this.#boot.secureFetch(`${this.#serviceurl}/methods/archive?url=${url}`)
|
||||||
.then(reply =>{
|
.then(reply =>{
|
||||||
if (reply.status !== 200) {
|
if (!reply.ok) {
|
||||||
throw "Unable to fetch from archive"
|
throw "Unable to fetch from archive"
|
||||||
}
|
}
|
||||||
return reply.text()
|
return reply.text()
|
||||||
|
@ -320,6 +323,21 @@ class CCPMethodList extends HTMLElement{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
publish(id){
|
||||||
|
this.#boot.secureFetch(`${this.#serviceurl}/methods/${id}/publish`, { method: "POST" })
|
||||||
|
.then(reply =>{
|
||||||
|
if (!reply.ok) {
|
||||||
|
throw `Unable to archive (${reply.status})`
|
||||||
|
}
|
||||||
|
}).catch(err=>{ alert(err)})
|
||||||
|
}
|
||||||
|
|
||||||
|
isAuthor(m){
|
||||||
|
const href = `${this.#boot.url}/admin/realms/${this.#boot.realm}/users/${this.#boot.subject}`
|
||||||
|
const found = m.metadata.filter(md=>{return md.role === "author" && md.href === href})
|
||||||
|
return found.length > 0
|
||||||
|
}
|
||||||
|
|
||||||
#process_list_bss = {
|
#process_list_bss = {
|
||||||
template : "#PROCESS_LIST_TEMPLATE",
|
template : "#PROCESS_LIST_TEMPLATE",
|
||||||
target : "ul[name=process_category_list]",
|
target : "ul[name=process_category_list]",
|
||||||
|
@ -380,7 +398,7 @@ class CCPMethodList extends HTMLElement{
|
||||||
{
|
{
|
||||||
target : "li.ccp-process",
|
target : "li.ccp-process",
|
||||||
"in" : (e,d)=>this.#filtered[d],
|
"in" : (e,d)=>this.#filtered[d],
|
||||||
apply : (e,d)=>{ e.alt = e.title = d.title },
|
apply : (e,d)=>{ e.alt = e.title = `${d.title} (${d.id})` },
|
||||||
on_click : ev=>{
|
on_click : ev=>{
|
||||||
const id = ev.currentTarget.bss_input.data.id
|
const id = ev.currentTarget.bss_input.data.id
|
||||||
if(ev.target.getAttribute("name") === "export_method"){
|
if(ev.target.getAttribute("name") === "export_method"){
|
||||||
|
@ -395,6 +413,10 @@ class CCPMethodList extends HTMLElement{
|
||||||
if(confirm("Please confirm archiving of method to workspace?")){
|
if(confirm("Please confirm archiving of method to workspace?")){
|
||||||
this.toArchive(id)
|
this.toArchive(id)
|
||||||
}
|
}
|
||||||
|
}else if(ev.target.getAttribute("name") === "publish"){
|
||||||
|
if(confirm("Please confirm publication of method to VRE?")){
|
||||||
|
this.publish(id)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
on_dragstart : ev=>{
|
on_dragstart : ev=>{
|
||||||
|
@ -423,6 +445,10 @@ class CCPMethodList extends HTMLElement{
|
||||||
target: "button[name=edit]",
|
target: "button[name=edit]",
|
||||||
apply : (e,d)=>{ e.style.display = this.#allowedit ? "revert" : "none" }
|
apply : (e,d)=>{ e.style.display = this.#allowedit ? "revert" : "none" }
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
target: "button[name=publish]",
|
||||||
|
apply : (e,d)=>{ e.style.display = this.isAuthor(d) ? "revert" : "none" }
|
||||||
|
},
|
||||||
{
|
{
|
||||||
target : "span[name=author]",
|
target : "span[name=author]",
|
||||||
"in" : (e,d)=>d.metadata.filter(md=>md.role === "author"),
|
"in" : (e,d)=>d.metadata.filter(md=>md.role === "author"),
|
||||||
|
|
Loading…
Reference in New Issue