Changeset 1203

Show
Ignore:
Timestamp:
25-11-10 17:26:07 (3 years ago)
Author:
robert@…
Message:

Updated the events timeline in the study view, according to ticket #72

Location:
trunk
Files:
1 added
3 modified

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/controllers/dbnp/studycapturing/StudyController.groovy

    r1188 r1203  
    171171                return; 
    172172            } 
    173             events = eventGroup?.events; 
     173            events = eventGroup?.events + eventGroup?.samplingEvents; 
    174174        } 
    175175 
     
    186186            for( templateField in event.giveTemplateFields() ) { 
    187187                def value = event.getFieldValue( templateField.name ); 
    188                 if( value ) { 
    189                     parameters << templateField.name + " = " + value; 
    190                 } 
    191             } 
    192  
    193              json.events << [ 
    194                 'start':    new Date( startDate + event.startTime * 1000 ), 
    195                 'end':      new Date( startDate + event.endTime * 1000 ), 
    196                 'durationEvent': !event.isSamplingEvent(), 
    197                 'title': event.template.name + " (" + parameters.join( ', ' ) + ")", 
    198                 'description': parameters 
    199             ] 
     188                                if( value ) { 
     189                                        if( templateField.type == TemplateFieldType.RELTIME ) 
     190                                                value = new RelTime( value ).toString(); 
     191 
     192                        def param = templateField.name + " = " + value; 
     193 
     194                                        if( templateField.unit ) 
     195                                                param += templateField.unit; 
     196 
     197                    parameters << param ; 
     198                } 
     199            } 
     200 
     201                        def description = parameters.join( '<br />\n' ); 
     202 
     203                        if( event instanceof SamplingEvent ) { 
     204                                 json.events << [ 
     205                                        'start':    new Date( startDate + event.startTime * 1000 ), 
     206                                        'end':      new Date( startDate + event.startTime * 1000 ), 
     207                                        'durationEvent': false, 
     208                                        'title': event.template.name, 
     209                                        'description': description 
     210                                ] 
     211                        } else { 
     212                                 json.events << [ 
     213                                        'start':    new Date( startDate + event.startTime * 1000 ), 
     214                                        'end':      new Date( startDate + event.endTime * 1000 ), 
     215                                        'durationEvent': true, 
     216                                        'title': event.template.name, 
     217                                        'description': description 
     218                                ] 
     219                                 
     220                        } 
    200221        } 
    201222        render json as JSON 
  • trunk/grails-app/views/study/show.gsp

    r1201 r1203  
    3939    <script src="${resource(dir: 'js', file: 'timeline-simile/timeline-api.js')}" type="text/javascript"></script> 
    4040    <script src="${resource(dir: 'js', file: 'timeline-simile/custom-timeline.js')}" type="text/javascript"></script> 
     41    <script src="${resource(dir: 'js', file: 'timeline-simile/relative-time.js')}" type="text/javascript"></script> 
    4142    <script src="${resource(dir: 'js', file: 'jquery-callback-1.2.js')}" type="text/javascript"></script> 
    4243 
     
    8081                        theme:          theme 
    8182                     }); 
     83 
     84                          // Make sure the date is printed using the relative time 
     85              bandInfos[${bandNr}].etherPainter = new Timeline.RelativeDateEtherPainter( { theme: theme, startDate: firstDate, unit: Timeline.DateTime.DAY } ); 
     86                          bandInfos[${bandNr}].labeller = new Timeline.RelativeDateLabeller( "en", 0, firstDate ); 
     87 
    8288              bandTitleInfo[ timelineNr ][ ${bandNr} ] = { 
    8389                title: "${study.title}", 
  • trunk/web-app/js/timeline-simile/custom-timeline.js

    r959 r1203  
    7676{ 
    7777    // Make the band large enough (8 for margin and 20 per event ) 
    78     w = 8 + 20 * numEventsCurrentBand; 
     78    w = 15 + 18 * numEventsCurrentBand; 
    7979    timeline[ timelineNr ].getBand( bandNr )._bandInfo.width = w; 
    8080 
     
    215215Timeline.EmptyEtherPainter.prototype.paint=function(){}; 
    216216Timeline.EmptyEtherPainter.prototype.softPaint=function(){}; 
     217