rucio / webui

RucioWebUI (v2.0)
Apache License 2.0
4 stars 15 forks source link

Create Rule : Connect to Create Rule feature and load Summary Page #433

Closed maany closed 1 month ago

maany commented 3 months ago

Description

Connect the Submit button in the Rule Overview tab to trigger the create rule feature. Show the output of the create rule feature in the summary page.

Motivation

No response

Change

No response

Additional Information

MytsV commented 1 month ago

A Create DID sample endpoint should be created as well. The implementation is following:

RucioClient.prototype.create_did_sample = function(options) {
    check_token();
    var url = this.url + '/dids/sample';
    if (options.async == null) { options.async = true; }
    jQuery.ajax({url: url,
                 crossDomain: true,
                 headers: this.headers,
                 type: 'POST',
                 async: options.async,
                 data: JSON.stringify({
                    'input_scope': options.input_scope,
                    'input_name': options.input_name,
                    'output_scope': options.output_scope,
                    'output_name': options.output_name,
                    'nbfiles': options.nbfiles
                 }),
                 success: function(data)
                 {
                     options.success(data);
                 },
                 error: function(jqXHR, textStatus, errorThrown)
                 {
                     options.error(jqXHR, textStatus, errorThrown);
                 }
        });
};
MytsV commented 1 month ago

how the new DID at sampling is handled in current UI:

new_scope = "";
    if (nbfiles != null ) {
        r.get_account_info({
            account: account,
            async: false,
            success: function(data) {
                if (data['account_type'] == 'USER') {
                    new_scope = 'user.' + account;
                } else if (data['account_type'] == 'GROUP') {
                    new_scope = 'group.' + account;
                }
            },
            error: function(jqXHR, textStatus, errorThrown) {
                console.log(jqXHR);
            }
        });
    }

new_name = new_scope + '.' + did['name'] + '_der' + parseInt((Date.now() / 1000));