Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
genotoul-bioinfo
ng6
Commits
c97cfc77
Commit
c97cfc77
authored
May 04, 2018
by
Celine Noirot
Browse files
recode extend
parent
65dd4c2e
Changes
3
Hide whitespace changes
Inline
Side-by-side
ui/nG6/class.tx_nG6_eid.php
View file @
c97cfc77
...
...
@@ -857,17 +857,14 @@ class tx_nG6_eid {
//Change date format
print
json_encode
(
tx_nG6_db
::
filter_list_retention_data_info
(
$filter_size
,
$max_retention_date
,
$create_users
,
$without_laboratories_id
,
$with_laboratories_id
));
}
elseif
(
$type
==
'delete_data'
)
{
}
elseif
(
$type
==
'delete_
purge_
data'
)
{
//TODO check if user is still logged
if
(
$user_id
==
""
){
print
json_encode
(
"Error: reconnect"
);
}
else
{
//Delete data link to the list of purge demand
$purge_ids
=
trim
(
t3lib_div
::
_GP
(
'purge_demand'
));
$data_folder
=
trim
(
t3lib_div
::
_GP
(
'data_folder'
));
$user
=
trim
(
t3lib_div
::
_GP
(
'username'
));
$password
=
trim
(
t3lib_div
::
_GP
(
'password'
));
print
json_encode
(
tx_nG6_pi6
::
set_purge_demand_processed
(
explode
(
','
,
$purge_ids
),
"delete"
,
$data_folder
,
$user
,
$password
));
print
json_encode
(
tx_nG6_pi6
::
delete_purge_demand
(
explode
(
','
,
$purge_ids
)));
}
}
elseif
(
$type
==
'extend_rentention_date'
)
{
//Extend the retention date for the
...
...
@@ -880,7 +877,7 @@ class tx_nG6_eid {
//Change date format
$date
=
explode
(
'/'
,
$value
);
$timestamp
=
mktime
(
0
,
0
,
1
,
$date
[
1
],
$date
[
0
],
$date
[
2
]);
print
json_encode
(
tx_nG6_pi6
::
set_purge_demand_processed
(
explode
(
','
,
$purge_ids
),
"extend"
,
$timestamp
));
print
json_encode
(
tx_nG6_pi6
::
extend_rentention_date
(
explode
(
','
,
$purge_ids
),
$timestamp
));
}
}
...
...
ui/nG6/pi6/class.tx_nG6_pi6.php
View file @
c97cfc77
...
...
@@ -198,7 +198,8 @@ Files impacted of:
return
implode
(
"
\r\n
"
,
$headers
)
.
$mail
;
}
function
set_purge_demand_processed
(
$demand_ids
,
$process
,
$value
,
$user
,
$pwd
){
function
extend_rentention_date
(
$demand_ids
,
$date
){
//extend
$all_demands
=
tx_nG6_db
::
get_purge_demand_from_id
(
$demand_ids
);
$all_runs
=
array
();
$all_analyses
=
array
();
...
...
@@ -209,51 +210,45 @@ Files impacted of:
$all_runs
=
array_merge
(
$all_runs
,
explode
(
','
,
$res
[
"run_ids"
]));
}
}
//extend
if
(
$process
==
"extend"
){
$date
=
$value
;
tx_nG6_db
::
update_field
(
'tx_nG6_run'
,
$all_runs
,
array
(
"retention_date"
,
"data_state"
,
"mail_sent_date"
,
"purge_demand_id"
),
array
(
$date
,
"extended"
,
""
,
"NULL"
),
array
(
"purge_demand_id"
));
tx_nG6_db
::
update_field
(
'tx_nG6_analyze'
,
$all_analyses
,
array
(
"retention_date"
,
"data_state"
,
"mail_sent_date"
,
"purge_demand_id"
),
array
(
$date
,
"extended"
,
""
,
"NULL"
),
array
(
"purge_demand_id"
));
tx_nG6_db
::
update_field
(
'tx_nG6_run'
,
$all_runs
,
array
(
"retention_date"
,
"data_state"
,
"mail_sent_date"
,
"purge_demand_id"
),
array
(
$date
,
"extended"
,
""
,
"NULL"
),
array
(
"purge_demand_id"
));
tx_nG6_db
::
update_field
(
'tx_nG6_analyze'
,
$all_analyses
,
array
(
"retention_date"
,
"data_state"
,
"mail_sent_date"
,
"purge_demand_id"
),
array
(
$date
,
"extended"
,
""
,
"NULL"
),
array
(
"purge_demand_id"
));
tx_nG6_db
::
update_field
(
'tx_nG6_purge_demand'
,
$demand_ids
,
array
(
"processed_date"
,
"demand_state"
),
array
(
$date
,
"extended"
));
return
(
"Done extend"
);
}
function
delete_purge_demand
(
$demand_ids
){
$data_folder
=
$value
;
$date
=
time
();
$all_runs_purged
=
array
();
$all_analyses_purged
=
array
();
//purged_size = storage_size !!!
tx_nG6_db
::
update_field
(
'tx_nG6_run'
,
$all_runs_purged
,
array
(
"purged_size"
,
"data_state"
,
"purged_date"
,
"storage_size"
),
array
(
"storage_size"
,
"purged"
,
$date
,
0
),
array
(
"purged_size"
));
tx_nG6_db
::
update_field
(
'tx_nG6_analyze'
,
$all_analyses_purged
,
array
(
"purged_size"
,
"data_state"
,
"purged_date"
,
"storage_size"
),
array
(
"storage_size"
,
"purged"
,
$date
,
0
),
array
(
"purged_size"
));
if
(
count
(
$all_runs_purged
)
==
count
(
$all_runs
)
and
count
(
$all_analyses_purged
)
==
count
(
$all_analyses
)){
tx_nG6_db
::
update_field
(
'tx_nG6_purge_demand'
,
$demand_ids
,
array
(
"processed_date"
,
"demand_state"
),
array
(
$date
,
"extended"
));
return
(
"Done extend"
);
}
else
{
//delete
$data_folder
=
$value
;
$date
=
time
();
$all_runs_purged
=
array
();
$all_analyses_purged
=
array
();
if
(
$connexion
)
{
//purged_size = storage_size !!!
tx_nG6_db
::
update_field
(
'tx_nG6_run'
,
$all_runs_purged
,
array
(
"purged_size"
,
"data_state"
,
"purged_date"
,
"storage_size"
),
array
(
"storage_size"
,
"purged"
,
$date
,
0
),
array
(
"purged_size"
));
tx_nG6_db
::
update_field
(
'tx_nG6_analyze'
,
$all_analyses_purged
,
array
(
"purged_size"
,
"data_state"
,
"purged_date"
,
"storage_size"
),
array
(
"storage_size"
,
"purged"
,
$date
,
0
),
array
(
"purged_size"
));
if
(
count
(
$all_runs_purged
)
==
count
(
$all_runs
)
and
count
(
$all_analyses_purged
)
==
count
(
$all_analyses
)){
tx_nG6_db
::
update_field
(
'tx_nG6_purge_demand'
,
$demand_ids
,
array
(
"processed_date"
,
"demand_state"
),
array
(
$date
,
"deleted"
));
return
(
"Done delete, res : "
.
$res
);
}
else
{
return
(
"Error: not all runs or analyses were purged , please check unix permission (see apache logs)."
);
}
}
else
{
return
(
"Error while ssh login."
);
}
array
(
$date
,
"deleted"
));
return
(
"Done delete, res : "
.
$res
);
}
else
{
return
(
"Error: not all runs or analyses were purged , please check unix permission (see apache logs)."
);
}
}
}
}
if
(
defined
(
'TYPO3_MODE'
)
&&
$TYPO3_CONF_VARS
[
TYPO3_MODE
][
'XCLASS'
][
'ext/nG6/pi6/class.tx_nG6_pi6.php'
])
{
...
...
ui/nG6/res/js/tx_nG6_pi6.js
View file @
c97cfc77
...
...
@@ -394,6 +394,22 @@ $(function () {
// Delete data after selecting list of ids demand
$
(
"
#delete_data_from_list
"
).
click
(
function
(){
console
.
log
(
"
IIIIIIIIIIICCCCCCCCCCCCCCCCCCCC
"
);
$
(
"
#modal-label-tmpl
"
).
html
(
"
Delete
"
);
$
(
"
#modal-body-tmpl
"
).
html
(
"
Are you sure you want to delete those data?
"
);
$
(
"
#modal-foot-tmpl
"
).
html
(
'
<button class="btn btn-default" data-dismiss="modal" aria-hidden="true">No</button>
'
+
'
<button id="modal-btn-yes" class="btn btn-primary">Yes</button>
'
);
$
(
"
#ng6modal
"
).
modal
();
$
(
"
#modal-btn-yes
"
).
click
(
function
()
{
$
(
'
:checked[id^=chk_demand
'
).
each
(
function
(){
demand_id
=
$
(
this
).
val
();
demands
.
push
(
demand_id
);
console
.
log
(
demands
);
});
delete_data
(
demands
,
purge_table
[
"
demand
"
]);
});
var
demands
=
[];
$
(
'
:checked[id^=chk_demand
'
).
each
(
function
(){
demand_id
=
$
(
this
).
val
();
...
...
@@ -421,189 +437,14 @@ $(function () {
});
});
function
delete_data
(
list_ids
,
purge_demand_datatable
){
var
_get_workflow_status
=
function
(
workflow_id
,
callback
,
error_callback
){
$
.
ajax
({
url
:
$
(
"
#server_url
"
).
val
()
+
'
/get_workflow_status?display=list&workflow_id=
'
+
workflow_id
,
dataType
:
'
jsonp
'
,
timeout
:
20000
,
success
:
function
(
data
){
if
(
callback
){
callback
(
data
);
}
},
error
:
function
(
jqXHR
,
textStatus
,
errorThrown
){
if
(
error_callback
){
error_callback
(
jqXHR
,
textStatus
,
errorThrown
);
}
}
});
};
var
_retrieve_data
=
function
(
workflow_id
,
callback
,
error_callback
){
$
.
ajax
({
url
:
$
(
"
#server_url
"
).
val
()
+
'
/get_workflow_outputs?workflow_id=
'
+
workflow_id
,
dataType
:
'
jsonp
'
,
success
:
function
(
data
){
if
(
callback
)
{
callback
(
data
);
}
},
error
:
function
(
jqXHR
,
textStatus
,
errorThrown
){
if
(
error_callback
){
error_callback
(
jqXHR
,
textStatus
,
errorThrown
);
}
}
});
};
var
_display_file_content
=
function
(
filepath
,
$elmt
){
$
.
get
(
filepath
,
function
(
data
){
$elmt
.
html
([
'
<div class="alert">
'
,
'
<p>
'
,
'
<strong>Success !</strong> You will find bellow the list of deteted paths.
'
,
'
</p>
'
,
'
</div>
'
,
].
join
(
''
));
var
client
=
new
ZeroClipboard
(
$
(
"
#copy_urls
"
));
});
};
$
(
'
#setAndRunModalLabel
'
).
html
(
"
Loading
"
);
$
(
'
#setAndRunModalFooter
'
).
html
([
'
<div class="btn-group">
'
,
'
<button id="close" class="btn btn-default" data-dismiss="modal"><i class="glyphicon glyphicon-remove"></i> Close</button>
'
,
'
</div>
'
,
'
<div class="btn-group">
'
,
'
<button id="reset_workflow" class="btn btn-default"><i class="glyphicon glyphicon-refresh"></i> Reset</button>
'
,
'
<button id="run_workflow" class="btn btn-primary"><i class="glyphicon glyphicon-floppy-save"></i> Start</button>
'
,
'
</div>
'
].
join
(
''
));
$
(
"
#reset_workflow, #run_workflow
"
).
hide
();
$
(
"
#close
"
).
show
();
$
(
'
#setAndRunModalBody
'
).
html
([
'
<div >
'
,
'
<p id="wf-help" class="text-justify"></p><br/><br/>
'
,
'
<div id="wfform"><div class="tx-nG6-wait">Please wait</div></div>
'
,
'
</div>
'
,
].
join
(
''
));
var
modal
=
{
'
$label
'
:
$
(
'
#setAndRunModalLabel
'
),
'
$body
'
:
$
(
'
#setAndRunModalBody
'
),
'
$footer
'
:
$
(
'
#setAndRunModalFooter
'
),
'
$modal
'
:
$
(
'
#setAndRunModal
'
)
};
var
wfform_options
=
{
workflowClass
:
"
PurgeDemand
"
,
serverURL
:
$
(
"
#server_url
"
).
val
(),
displayRunButton
:
false
,
displayResetButton
:
false
,
parameters
:
{
"
admin_login
"
:
$
(
"
#user_name
"
).
val
(),
"
demand_id
"
:
list_ids
}
};
$
(
'
#wfform
'
).
on
(
"
loaded.wfform
"
,
function
(
event
,
workflow
)
{
$
(
"
#reset_workflow, #run_workflow
"
).
show
();
$
(
"
#close
"
).
hide
();
if
(
workflow
){
modal
.
$label
.
html
(
workflow
[
"
name
"
])
;
$
(
'
#wf-help
'
).
html
(
workflow
[
"
help
"
]);
}
else
{
modal
.
$body
.
html
(
'
<div class="alert alert-warning"> <strong>Warning !</strong> The workflow "PurgeDemand" is not available</div>
'
);
}
});
$
(
"
#reset_workflow
"
).
click
(
function
(){
$
(
'
#wfform
'
).
wfform
(
'
reset
'
);
});
$
(
"
#run_workflow
"
).
click
(
function
(){
$
(
'
#wfform
'
).
wfform
(
'
run
'
);
});
// remove plugin data
$
(
'
#wfform
'
).
removeData
();
modal
.
$modal
.
modal
();
modal
.
$modal
.
find
(
'
#wfform
'
).
wfform
(
wfform_options
);
modal
.
$modal
.
find
(
'
#wfform
'
).
on
(
'
run.wfform
'
,
function
(
event
,
running_wf
)
{
modal
.
$body
.
html
([
'
<div>
'
,
'
<div class="alert alert-info">
'
,
'
<p>
'
,
'
<strong>The data</strong> are being deleted. Use the refresh button to get the status and retrieve list of deleted directories.
'
,
'
</p>
'
,
'
</div>
'
,
'
<div id="wfstatus">
'
,
'
</div>
'
,
'
</div>
'
].
join
(
''
));
modal
.
$footer
.
html
([
'
<div class="btn-group">
'
,
'
<button id="refresh_workflow" class="btn btn-default"><i class="glyphicon glyphicon-refresh"></i> Refresh</button>
'
,
'
</div>
'
,
'
<div class="btn-group">
'
,
'
<button id="close" class="btn btn-default" data-dismiss="modal"><i class="glyphicon glyphicon-remove"></i> Close</button>
'
,
'
</div>
'
,
].
join
(
''
));
modal
.
$modal
.
find
(
'
#wfstatus
'
).
wfstatus
({
workflowID
:
running_wf
.
id
,
display
:
'
list
'
,
serverURL
:
$
(
"
#server_url
"
).
val
(),
$
.
ajax
({
url
:
"
index.php?eID=tx_nG6&type=delete_purge_data&purge_demand=
"
+
list_ids
.
join
(
'
,
'
)
+
"
&user_id=
"
+
$
(
'
input[id=user_id]
'
).
val
(),
success
:
function
(
data
)
{
console
.
log
(
"
DONE
"
);
}
});
$
(
"
#refresh_workflow
"
).
click
(
function
(){
modal
.
$body
.
find
(
'
#wfstatus
'
).
html
(
"
<div class='tx-nG6-wait'> <strong>Please</strong> wait...</div>
"
);
button
=
this
;
button
.
disabled
=
true
;
_get_workflow_status
(
running_wf
.
id
,
// successcb
function
(
statusdata
){
if
(
statusdata
.
status
==
"
completed
"
){
_retrieve_data
(
running_wf
.
id
,
function
(
data
){
$
(
button
).
hide
();
$
.
each
(
data
,
function
(
i
,
component
)
{
$
.
each
(
component
,
function
(
filename
,
file
)
{
if
(
filename
==
"
remove_list.txt
"
){
_display_file_content
(
file
.
url
,
modal
.
$body
);
}
});
});
},
//errorcb
function
(
jqXHR
,
textStatus
,
errorThrown
){
modal
.
$body
.
html
([
'
<div class="alert alert-danger">
'
,
'
<p><strong>Failed !</strong> to get outputs from
'
+
$
(
"
#server_url
"
).
val
()
+
'
</p>
'
,
'
</div>
'
,
].
join
(
''
));
}
);
}
else
{
modal
.
$modal
.
find
(
'
#wfstatus
'
).
wfstatus
(
'
reload
'
);
button
.
disabled
=
false
;
}
},
// errorcb
function
(){
modal
.
$modal
.
find
(
'
#wfstatus
'
).
wfstatus
(
'
reload
'
);
button
.
disabled
=
false
;
}
);
});
});
}
function
extend_date
(
list_ids
,
purge_demand_datatable
,
obsolete_project_datatable
){
...
...
@@ -633,12 +474,12 @@ function extend_date(list_ids, purge_demand_datatable, obsolete_project_datatabl
success
:
function
(
val
,
status
,
xhr
)
{
$
(
"
#ng6modal
"
).
modal
(
'
hide
'
);
refresh_purge_demand
(
purge_demand_datatable
);
refresh_project_obsolete
(
obsolete_project_datatable
)
refresh_project_obsolete
(
obsolete_project_datatable
)
;
},
error
:
function
(
val
)
{
$
(
"
#ng6modal
"
).
modal
(
'
hide
'
);
refresh_purge_demand
(
purge_demand_datatable
);
refresh_project_obsolete
(
obsolete_project_datatable
)
refresh_project_obsolete
(
obsolete_project_datatable
)
;
}
});
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment