Show
Ignore:
Timestamp:
21.12.2010 18:20:39 (9 years ago)
Author:
davidb
Message:

Generalizatoin of metadata-spanwrap to be either metadata-spanwrap or metadata-divwrap

Location:
main/trunk/greenstone2/runtime-src/src/recpt
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone2/runtime-src/src/recpt/formattools.cpp

    r23305 r23515  
    3333#include <assert.h> 
    3434 
    35 static bool metadata_spanwrap = false; 
     35static bool metadata_wrap = false; 
     36static text_t metadata_wrap_type = ""; 
    3637 
    3738// a few function prototypes 
     
    694695    formatlistptr->command = comEndMetadataSpanWrap; 
    695696 
     697  else if (meta == "metadata-divwrap") 
     698    formatlistptr->command = comMetadataDivWrap; 
     699 
     700  else if (meta == "/metadata-divwrap") 
     701    formatlistptr->command = comEndMetadataDivWrap; 
     702 
    696703  else if (meta == "Summary") 
    697704    formatlistptr->command = comSummary; 
     
    980987 
    981988 
    982 static text_t spanwrap_metatext(const text_t& metatext, const text_t& OID,  
     989static text_t wrap_metatext(const text_t& metatext, const text_t& OID,  
    983990                const text_t metaname, int metapos=-1) 
    984991{ 
    985992 
    986   text_t tag_type = (metaname == "Text") ? "div" : "span"; 
     993  text_t tag_type = metadata_wrap_type; 
    987994  text_t editable_type = (metaname == "Text") ? "text" : "metadata"; 
    988995 
     
    10921099      } 
    10931100 
    1094       if (metadata_spanwrap) { 
    1095     fresh_metatext = spanwrap_metatext(fresh_metatext,OID,meta.metaname,i); 
     1101      if (metadata_wrap) { 
     1102    fresh_metatext = wrap_metatext(fresh_metatext,OID,meta.metaname,i); 
    10961103      } 
    10971104      formatted_metatext += fresh_metatext; 
     
    11711178    } 
    11721179 
    1173     if (metadata_spanwrap) { 
    1174       fresh_metatext = spanwrap_metatext(fresh_metatext,OID,meta.metaname,position); 
     1180    if (metadata_wrap) { 
     1181      fresh_metatext = wrap_metatext(fresh_metatext,OID,meta.metaname,position); 
    11751182    } 
    11761183 
     
    13881395  while (orptr != NULL) { 
    13891396 
    1390     if (metadata_spanwrap) { 
     1397    if (metadata_wrap) { 
    13911398      // need to be a bit more careful about this 
    1392       // => test for it *without* spanwrap, and if defined, then 
    1393       // got back and generate it again, this time with spanwrap on 
    1394  
    1395       metadata_spanwrap = false; 
     1399      // => test for it *without* spanwrap or divwrap, and if defined, then 
     1400      // got back and generate it again, this time with spanwrap/divwrap on 
     1401 
     1402      metadata_wrap = false; 
    13961403      text_t test_tmp = format_string (collection,collectproto,docinfo, disp, orptr,  
    13971404                       options, logout); 
    1398       metadata_spanwrap = true; 
     1405      metadata_wrap = true; 
    13991406      if (!test_tmp.empty()) { 
    14001407 
     
    16651672  if (decision.command == dMeta) { 
    16661673 
    1667     bool store_metadata_spanwrap = metadata_spanwrap; 
    1668     metadata_spanwrap = 0; 
    1669  
    1670     // temporarily suspend metadata-spanwrap (if on) so can test if metadata item really exits or not 
     1674    bool store_metadata_wrap = metadata_wrap; 
     1675    metadata_wrap = 0; 
     1676 
     1677    // temporarily suspend metadata-XXXwrap (if on) so can test if metadata item really exits or not 
    16711678    bool metadata_exists  
    16721679      = (get_meta (collection,collectproto,docinfo,disp,decision.meta,options, 
    16731680           logout) != ""); 
    16741681 
    1675     metadata_spanwrap = store_metadata_spanwrap; 
     1682    metadata_wrap = store_metadata_wrap; 
    16761683 
    16771684    if (metadata_exists) { 
     
    18971904    break; 
    18981905     case comMetadataSpanWrap: 
    1899         metadata_spanwrap=true; return ""; 
     1906        metadata_wrap=true;  metadata_wrap_type="span"; return ""; 
    19001907    break; 
    19011908     case comEndMetadataSpanWrap: 
    1902     metadata_spanwrap=false; return ""; 
     1909    metadata_wrap=false; metadata_wrap_type="";     return ""; 
     1910    break; 
     1911     case comMetadataDivWrap: 
     1912        metadata_wrap=true;  metadata_wrap_type="div";  return ""; 
     1913    break; 
     1914     case comEndMetadataDivWrap: 
     1915    metadata_wrap=false; metadata_wrap_type="";     return ""; 
    19031916    break; 
    19041917     case comIf: 
     
    19601973  } 
    19611974 
    1962   if (metadata_spanwrap) { 
    1963     text = spanwrap_metatext(text,docinfo.OID,"Text"); 
     1975  if (metadata_wrap) { 
     1976    text = wrap_metatext(text,docinfo.OID,"Text"); 
    19641977  } 
    19651978 
     
    20122025  summary.replace("\n","&#013;"); 
    20132026 
    2014   if (metadata_spanwrap) { 
    2015     summary = spanwrap_metatext(summary,docinfo.OID,"Summary"); 
     2027  if (metadata_wrap) { 
     2028    summary = wrap_metatext(summary,docinfo.OID,"Summary"); 
    20162029  } 
    20172030 
  • main/trunk/greenstone2/runtime-src/src/recpt/formattools.h

    r22650 r23515  
    3535        comDoc, comHighlight, comEndHighlight,  
    3636        comMetadataSpanWrap, comEndMetadataSpanWrap, 
     37        comMetadataDivWrap, comEndMetadataDivWrap, 
    3738        comRel, comHref, comSummary, 
    3839        comTOC, comImage, comDocumentButtonDetach, comDocumentButtonHighlight,