Skip to content
Snippets Groups Projects
Commit e8fe67d2 authored by Patrick Jentsch's avatar Patrick Jentsch
Browse files

Some code cleanup

parent fbb32ef5
No related branches found
No related tags found
No related merge requests found
......@@ -61,7 +61,7 @@ def build_corpus(corpus_id):
@bp.route('/stopwords')
@content_negotiation(produces='application/json')
def get_stopwords():
nltk.download('stopwords')
nltk.download('stopwords', quiet=True)
languages = ["german", "english", "catalan", "greek", "spanish", "french", "italian", "russian", "chinese"]
stopwords = {}
for language in languages:
......
......@@ -25,12 +25,12 @@ class CorpusAnalysisApp {
async init() {
this.disableActionElements();
this.elements.m.initModal.open();
try {
// Setup CQi over SocketIO connection and gather data from the CQPServer
const statusTextElement = this.elements.initModal.querySelector('.status-text');
statusTextElement.innerText = 'Creating CQi over SocketIO client...';
const cqiClient = new cqi.CQiClient('/cqi_over_sio');
const cqiClient = new cqi.Client('/cqi_over_sio');
statusTextElement.innerText += ' Done';
statusTextElement.innerHTML = 'Waiting for the CQP server...';
const response = await cqiClient.api.socket.emitWithAck('init', this.corpusId);
......
/**
* @param {cqi.models.corpora.Corpus} corpus
* @param {number[]} cposList
* @returns {Promise<object>}
*/
async function lookupsByCpos(corpus, cposList) {
let lookups = {};
lookups['cpos_lookup'] = {};
for (let cpos in cposList) {
lookups['cpos_lookup'][cpos] = {};
}
let pAttrs = await corpus.positionalAttributes.list();
for (let attr in pAttrs) {
let values = await attr.valuesByCpos(cposList);
for (let i = 0; i < cposList.length; i++) {
let cpos = cposList[i];
let value = values[i];
lookups['cpos_lookup'][cpos][attr.name] = value;
}
}
let sAttrs = await corpus.structuralAttributes.list();
for (let attr in sAttrs) {
// We only want to iterate over non subattributes, identifiable by
// sAttr.hasValues == false
if (attr.hasValues) {continue;}
let idList = await attr.idsByCpos(cposList);
for (let i = 0; i < cposList.length; i++) {
let cpos = cposList[i];
let id = idList[i];
if (id == -1) {continue;}
lookups['cpos_lookup'][cpos][attr.name] = id;
}
let occuredIdList = Array.from(new Set(idList.filter(x => x != -1)));
if (occuredIdList.length == 0) {continue;}
let subattrs = sAttrs.filter(x => x.name.startsWith(`${attr.name}_`));
if (subattrs.length == 0) {continue;}
let lookupName = `${attr.name}_lookup`;
lookups[lookupName] = {};
for (let id in occuredIdList) {
lookups[lookupName][id] = {};
}
}
return lookups;
}
App = {};
cqi.api.APIClient = class APIClient {
cqi.api.Client = class Client {
/**
* @param {string} host
* @param {number} [timeout=60] timeout
......
cqi.CQiClient = class CQiClient {
cqi.Client = class Client {
/**
* @param {string} host
* @param {number} [timeout=60] timeout
* @param {string} [version=0.1] version
*/
constructor(host, timeout = 60, version = '0.1') {
/** @type {cqi.api.APIClient} */
this.api = new cqi.api.APIClient(host, timeout, version);
/** @type {cqi.api.Client} */
this.api = new cqi.api.Client(host, timeout, version);
}
/**
......
......@@ -37,7 +37,7 @@ cqi.models.attributes.AttributeCollection = class AttributeCollection extends cq
static model = cqi.models.attributes.Attribute;
/**
* @param {cqi.CQiClient} client
* @param {cqi.Client} client
* @param {cqi.models.corpora.Corpus} corpus
*/
constructor(client, corpus) {
......
// IDEA: Split the App logic into seperate units
// - App.Data
// - App.IO (name is WIP)
// - App.UI
App.App = class App {
nopaque.App = class App {
constructor() {
this.data = {
promises: {getUser: {}, subscribeUser: {}},
......@@ -139,9 +134,9 @@ App.App = class App {
}
optgroupElement.remove();
}
// #endregion
/* Initialize Materialize Components */
// #region
......@@ -190,10 +185,12 @@ App.App = class App {
);
// #endregion
// #region Nopaque Components
/* Initialize nopaque Components */
// #region
ResourceDisplays.AutoInit();
ResourceLists.AutoInit();
Forms.AutoInit();
// #endregion Nopaque Components
// #endregion
}
};
var nopaque = {};
......@@ -7,8 +7,8 @@
{%- assets
filters='rjsmin',
output='gen/app.%(version)s.js',
'js/app/index.js',
'js/app/app.js'
'js/nopaque/index.js',
'js/nopaque/app.js'
%}
<script src="{{ ASSET_URL }}"></script>
{%- endassets %}
......@@ -118,7 +118,7 @@
<script>
// TODO: Implement an app.run method and use this for all of the following
const app = new App.App();
const app = new nopaque.App();
app.init();
// Check if the current user is authenticated
......
......@@ -281,7 +281,6 @@ let users = {
{% if not loop.last %},{% endif %}
{% endfor %}
};
console.log(users);
let inviteUserModalSearch = M.Chips.init(
inviteUserModalSearchElement,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment