Changeset 3403


Ignore:
Timestamp:
08/16/13 14:38:54 (11 years ago)
Author:
olof
Message:

translation of annotation to om_object first draft done

File:
1 edited

Legend:

Unmodified
Added
Removed
  • DASISH/t5.6/client/trunk/chrome/markingcollection/content/markingcollection/annotator-service/conversion.utils.js

    r3323 r3403  
    2121                    };
    2222   
     23    //example anchor:
     24    // http://snd.gu.se/#hyperanchor1.3://div[@id="node-170"]/div[1]/div[1]/div[1]/div[1]/p[1](294)(3)(sse)&
     25    // //div[@id="node-170"]/div[1]/div[1]/div[1]/div[1]/p[1](365)(3)(kav)&
     26    // border:thin dotted rgb(255,204,0);background-color:rgb(255,255,204);color:rgb(0,0,0);
     27   
     28    var title = $(annotation).find('headline').text().trim();
     29    var body = $(annotation).find('body').text().trim();
     30    var style = $(annotation).find('body').find('xhtml\\:span').attr('style');
     31    var type = $(annotation).find('body').attr('type').toLowerCase();
     32    var link = $(annotation).find('link').text();
     33    var time = $(annotation).attr('timeStamp');
     34       
     35    var urlParts = link.split("#xpointer");
     36   
     37    om_object.doc_url = urlParts[0];
     38    om_object.con_url = urlParts[0];
     39    var xpointer = urlParts[1];
     40   
     41    //start dom
     42    xpointer.match(/start-point\(string-range\((.+?)\)\)\/range-to\(/);
     43    var parts = RegExp.$1.split(',');
     44    om_object.bgn_dom = parts[0]+'('+parts[2]+')(3)';
     45   
     46    //end dom
     47    xpointer.match(/range-to\(string-range\((.+?)\)\)\)/);
     48    var parts = RegExp.$1.split(',');
     49    om_object.end_dom = parts[0]+'('+parts[2]+')(3)';
     50   
    2351    //start xpath in xpointer: (?<=start-point\(string-range\()(.*\n?)(?=\,'')
    2452    //end xpath in xpointer: (?<=range-to\(string-range\()(.*\n?)(?=\,'')
    2553   
     54    //build hyperanchor
     55    var hyperanchor = '#hyperanchor1.3:'+om_object.bgn_dom+'&'+om_object.end_dom+'&'+style;
    2656   
    27     om_object.oid = hashCode(annotation['xml:id']);
    28     console.log(annotation.targetSources.targetSource);
    29     om_object.oid_property = "<PROPERTY><HYPER_ANCHOR>"+annotation.targetSources.targetSource.id+"</HYPER_ANCHOR><NOTE>"+annotation.body+"</NOTE></PROPERTY>";
    3057   
    31     if(annotation.type.toLowerCase() === 'note'){
    32         om_object.oid_txt = annotation.body;
     58   
     59    om_object.doc_title = title;
     60   
     61    om_object.oid = hashCode($(annotation).attr('ref'));
     62    console.log(link);
     63    om_object.oid_property = "<PROPERTY><HYPER_ANCHOR>"+om_object.doc_url+hyperanchor+"</HYPER_ANCHOR><NOTE>"+body+"</NOTE></PROPERTY>";
     64   
     65    if(type === 'note'){
     66        om_object.oid_txt = body;
    3367        om_object.oid_type = 'text';
    3468    }
    35     var d = new Date(annotation.timeStamp);
     69    var d = new Date(time);
    3670    om_object.oid_date = (d.getMonth()+1)+'/'+d.getDate()+'/'+d.getFullYear()+' '+d.getHours()+':'+d.getMinutes()+':'+d.getSeconds();
    3771   
     
    100134function hashCode(str){
    101135      var hash = 0;
    102       if (str.length == 0) return hash;
     136      if (str == undefined || str.length == 0) return hash;
    103137      for (i = 0; i < str.length; i++) {
    104138          char = str.charCodeAt(i);
Note: See TracChangeset for help on using the changeset viewer.