Line 1: |
Line 1: |
| console.log('+'); | | console.log('+'); |
| + | |
| var controller_item_id = 96, | | var controller_item_id = 96, |
− | personal_data_id = 421, | + | personal_data_id = 421, |
− | interface_button_id = 487; | + | interface_button_id = 487, |
− | | + | wbEStruct = { |
− | var wbEStruct = {
| |
| subclassOfRelations: 'claims.P4', // location of P4 relations in wbEntity | | subclassOfRelations: 'claims.P4', // location of P4 relations in wbEntity |
| defaultValRelation: 'claims.P108', | | defaultValRelation: 'claims.P108', |
Line 11: |
Line 11: |
| IDName: 'numeric-id', // ID property name which checked | | IDName: 'numeric-id', // ID property name which checked |
| qIDPropName: 'id' | | qIDPropName: 'id' |
− | }; | + | }, |
− | | + | mwEStruct = { |
− | var mwEStruct = { | |
| wbXntity: 'config.values.wbEntity' | | wbXntity: 'config.values.wbEntity' |
| }; | | }; |
| | | |
− | // check if we are on a page of a loaded Entity | + | // check if we are on a page of any of the targeted Entity |
− | | + | // more exactly, use iterateAcheckBC to check in mw.config.values.wbEntity if instanceOfRelations exist, than if yes, check if numeric id of any matches controller id |
| if ( iterateAcheckBC(mw, mwEStruct['wbXntity'], wbEStruct['instanceOfRelations'], wbEStruct['IDPropLoc'], wbEStruct['IDName'], controller_item_id) ) { | | if ( iterateAcheckBC(mw, mwEStruct['wbXntity'], wbEStruct['instanceOfRelations'], wbEStruct['IDPropLoc'], wbEStruct['IDName'], controller_item_id) ) { |
| + | console.log("This is a Data Controller"); |
| controller_display_function(); | | controller_display_function(); |
| } | | } |
| | | |
| + | // use iterateAcheckBC to check in mw.config.values.wbEntity if subClassOfRelations exist, than if yes, check if numeric id of any matches personal data id |
| if ( iterateAcheckBC(mw, mwEStruct['wbXntity'], wbEStruct['subclassOfRelations'], wbEStruct['IDPropLoc'], wbEStruct['IDName'], personal_data_id) ) { | | if ( iterateAcheckBC(mw, mwEStruct['wbXntity'], wbEStruct['subclassOfRelations'], wbEStruct['IDPropLoc'], wbEStruct['IDName'], personal_data_id) ) { |
| + | console.log("This is a Personal Data Type"); |
| input_display_function(); | | input_display_function(); |
| } | | } |
| | | |
| + | // use iterateAcheckBC to check in mw.config.values.wbEntity if instanceOfRelations exist, than if yes, check if numeric id of any matches interface button id |
| if ( iterateAcheckBC(mw, mwEStruct['wbXntity'], wbEStruct['instanceOfRelations'], wbEStruct['IDPropLoc'], wbEStruct['IDName'], interface_button_id) ) { | | if ( iterateAcheckBC(mw, mwEStruct['wbXntity'], wbEStruct['instanceOfRelations'], wbEStruct['IDPropLoc'], wbEStruct['IDName'], interface_button_id) ) { |
| + | console.log("This is a Data Input Interface"); |
| data_maintenance_display(); | | data_maintenance_display(); |
| } | | } |
| | | |
| + | // show popup from template for controllers |
| function controller_display_function(){ | | function controller_display_function(){ |
| console.log( "it's a controller" ) | | console.log( "it's a controller" ) |
Line 44: |
Line 49: |
| } | | } |
| | | |
| + | // show input for personal data |
| function input_display_function() { | | function input_display_function() { |
| var obj = interjson( get_Y_from_X( mw, mwEStruct['wbXntity'] ) ); | | var obj = interjson( get_Y_from_X( mw, mwEStruct['wbXntity'] ) ); |
− | mw.notify( $('<input type="text" placeholder="'+ get_Y_from_X ( get_Y_from_X( obj, wbEStruct['defaultValRelation'] ), wbEStruct['IDPropLoc'] ) + '" id="place_0" />'), { autoHide: false } ); | + | mw.notify( $('<input type="text" placeholder="' + get_Y_from_X ( get_Y_from_X( obj, wbEStruct['defaultValRelation'] ), wbEStruct['IDPropLoc'] ) + '" id="place_0" />'), { autoHide: false } ); |
− | | |
| } | | } |
| | | |
| + | // show maintenance options for personal data |
| function data_maintenance_display() { | | function data_maintenance_display() { |
| var obj = interjson( get_Y_from_X( mw, mwEStruct['wbXntity'] ) ); | | var obj = interjson( get_Y_from_X( mw, mwEStruct['wbXntity'] ) ); |
| } | | } |
| | | |
| + | // repeating code patterns |
| + | |
| + | // get obj.'rel_0' (gets wbEntity), check if it has 'A', iterate over 'A', get 'B' and 'C' and check if any contains 'to_check'. if yes, return true |
| function iterateAcheckBC( obj, rel_0, rel_A, rel_B, rel_C, to_check ) { | | function iterateAcheckBC( obj, rel_0, rel_A, rel_B, rel_C, to_check ) { |
| var current = get_Y_from_X( interjson( get_Y_from_X( mw, rel_0 ) ), rel_A ); | | var current = get_Y_from_X( interjson( get_Y_from_X( mw, rel_0 ) ), rel_A ); |
Line 69: |
Line 78: |
| } | | } |
| | | |
− | | + | function get_Y_from_X( obj, B ){ |
− | | + | if ( check(obj, B) !== "undefined" ) { |
− | function get_Y_from_X( obj, B ){
| + | console.log( "entity is defined" ) |
− | if ( check(obj, B) !== "undefined" ) {
| + | return dive(obj, B); |
− | console.log( "entity is defined" )
| |
− | return dive(obj, B);
| |
− | }
| |
| } | | } |
| + | } |
| | | |
− | function interjson(obj) {
| + | function interjson(obj) { |
− | return JSON.parse( obj );
| + | return JSON.parse( obj ); |
− | }
| + | } |
| | | |
− | function check_Y_in_X(obj, to_check){
| + | function check_Y_in_X(obj, to_check){ |
− | for (var i = 0; i < obj.length; i++ ){
| + | for (var i = 0; i < obj.length; i++ ){ |
− | if (obj[i] === check) { return true };
| + | if (obj[i] === check) { return true }; |
− | }
| |
− | return false;
| |
| } | | } |
| + | return false; |
| + | } |
| | | |
− | function indexinterpolate(obj,i) { return (obj[i] != undefined) ? obj[i] : obj};
| + | function indexinterpolate(obj,i) { return (obj[i] != undefined) ? obj[i] : obj}; |
| // helper function for checking a part of an array exists | | // helper function for checking a part of an array exists |
| function indexcheck(obj,i) { return (obj[i] != undefined) ? obj[i] : undefined }; | | function indexcheck(obj,i) { return (obj[i] != undefined) ? obj[i] : undefined }; |