diff --git a/dockerfile b/dockerfile index 6e5dd25..6712f23 100644 --- a/dockerfile +++ b/dockerfile @@ -8,6 +8,9 @@ RUN cd /front; npm i ADD src/package.json /src/package.json RUN cd /src; npm i +# Working on backend +ADD src /src + # add source ADD front /front @@ -15,10 +18,6 @@ ADD front /front RUN cd /front;npm run dist RUN cd /front;mv public /src/ -# Working on backend -ADD src /src - - WORKDIR /src EXPOSE 80 diff --git a/front/assets/Redux/Reducers/Login.js b/front/assets/Redux/Reducers/Login.js index a2c5b88..618fd65 100644 --- a/front/assets/Redux/Reducers/Login.js +++ b/front/assets/Redux/Reducers/Login.js @@ -7,6 +7,23 @@ let sortByTitle = function(a, b) { if (nameA > nameB) {return 1;} return 0; } +let sortByFamily = function(a, b) { + var nameA = a.family.toUpperCase(); // ignore upper and lowercase + var nameB = b.family.toUpperCase(); // ignore upper and lowercase + if (nameA < nameB) {return -1;} + if (nameA > nameB) {return 1;} + return 0; +} +let sortVersions = function(a, b) { + const familyPrio = [3,4,1,2]; + var familyA = familyPrio.indexOf(a.id_language); + var familyB = familyPrio.indexOf(b.id_language); + if(familyB == -1){return -1} + if(familyA == -1){return 1} + if (familyA < familyB) {return -1;} + if (familyA > familyB) {return 1;} + return 0; +} export function login(state = initialState, action) { @@ -28,7 +45,10 @@ export function login(state = initialState, action) { console.log(action.type); for (var i = 0, len = action.payload.length; i < len; i++) { lookup[action.payload[i].id_author] = action.payload[i]; + action.payload[i].versions.sort(sortVersions); + action.payload[i].title = action.payload[i].versions.map(i=>i.name).join(' / '); } + action.payload.sort(sortByTitle); return Object.assign({},state,{authors:action.payload,authorsLookup:lookup}) break; @@ -36,7 +56,10 @@ export function login(state = initialState, action) { console.log(action.type); for (var i = 0, len = action.payload.length; i < len; i++) { lookup[action.payload[i].id_city] = action.payload[i]; + action.payload[i].versions.sort(sortVersions); + action.payload[i].title = action.payload[i].versions.map(i=>i.name).join(' / '); } + action.payload.sort(sortByTitle); return Object.assign({},state,{cities:action.payload, citiesLookup:lookup}) break; @@ -45,6 +68,7 @@ export function login(state = initialState, action) { for (var i = 0, len = action.payload.length; i < len; i++) { lookup[action.payload[i].id_language] = action.payload[i]; } + action.payload.sort(sortByFamily); return Object.assign({},state,{languages:action.payload,languagesLookup:lookup}) break; @@ -71,6 +95,7 @@ export function login(state = initialState, action) { for (var i = 0, len = action.payload.length; i < len; i++) { lookup[action.payload[i].id_keyword_category] = action.payload[i]; } + action.payload.sort(sortByTitle); return Object.assign({},state,{keywordCategory:action.payload,keywordCategoryLookup:lookup}) break; @@ -78,11 +103,14 @@ export function login(state = initialState, action) { console.log(action.type); let unassignedKeywords = []; for (var i = 0, len = action.payload.length; i < len; i++) { - lookup[action.payload[i].id_keyword] = action.payload[i]; - if(!action.payload[i].category){ - unassignedKeywords.push(action.payload[i].id_keyword); - } + action.payload[i].versions.sort(sortVersions); + action.payload[i].title = action.payload[i].versions.map(i=>i.title).join(' / '); + lookup[action.payload[i].id_keyword] = action.payload[i]; + if(!action.payload[i].category){ + unassignedKeywords.push(action.payload[i].id_keyword); + } } + action.payload.sort(sortByTitle); return Object.assign({},state,{keywords:action.payload,keywordsLookup:lookup,unassignedKeywords:unassignedKeywords}) break; diff --git a/front/assets/components/App/preload.js b/front/assets/components/App/preload.js index 9873958..1e60e19 100644 --- a/front/assets/components/App/preload.js +++ b/front/assets/components/App/preload.js @@ -17,7 +17,7 @@ resolveFirst.push(fetch("/api/v1/status", return null}) .catch(()=>(null))); -resolveFirst.push(fetch('/api/v1/Languages',{ +resolveFirst.push(fetch('/api/v2/languages',{ method:'GET', credentials: 'same-origin' }) diff --git a/front/assets/components/Authors/mainAuthors.jsx b/front/assets/components/Authors/mainAuthors.jsx index f5254d0..5a63bc0 100644 --- a/front/assets/components/Authors/mainAuthors.jsx +++ b/front/assets/components/Authors/mainAuthors.jsx @@ -38,7 +38,7 @@ export default class mainAuthors extends Component {