greenstone.org greenstone wiki greenstone trac planet greenstone

Changeset 16214

Show
Ignore:
Timestamp:
2008-06-26 16:20:35 (5 months ago)
Author:
mdewsnip
Message:

Changed slightly the OID arguments to output_hlist_classifier_nodes(), output_upper_classifier_nodes() and output_child_classifier_nodes() functions: these now have the next separator at the end. This is to help separate out the grouping separator character and the hierarchy separator character.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • gsdl/trunk/src/recpt/dynamicclassifieraction.cpp

    r16212 r16214  
    183183    text_t selected_grouping_node_OID = output_hlist_classifier_nodes (current_classifier_node_OID, current_metadata_value_filter, "substr(value,1,1)", classifier_options, args, collectproto, browsers, disp, outconvert, textout, logout); 
    184184 
    185     current_classifier_node_OID = selected_grouping_node_OID
     185    current_classifier_node_OID = selected_grouping_node_OID + "|"
    186186    current_metadata_value_filter = selected_grouping_node_OID + "*"; 
    187187  } 
     
    192192    text_t selected_hlist_node_OID = output_hlist_classifier_nodes (current_classifier_node_OID, current_metadata_value_filter, "", classifier_options, args, collectproto, browsers, disp, outconvert, textout, logout); 
    193193 
    194     current_classifier_node_OID = selected_hlist_node_OID
     194    current_classifier_node_OID = selected_hlist_node_OID + "|"
    195195  } 
    196196 
     
    237237 
    238238    // Output the child classifier nodes 
    239     output_child_classifier_nodes (classifier_node_OID, classifier_node_metadata_value, classifier_node_metadata_value_filter, classifier_node_indent, classifier_options, args, collectproto, browsers, disp, outconvert, textout, logout); 
     239    output_child_classifier_nodes (classifier_node_OID + "|", classifier_node_metadata_value, classifier_node_metadata_value_filter, classifier_node_indent, classifier_options, args, collectproto, browsers, disp, outconvert, textout, logout); 
    240240 
    241241    // Get the document nodes at this level 
     
    353353  while (hlist_classifier_nodes_iterator != hlist_classifier_nodes.end()) 
    354354  { 
    355     text_t hlist_classifier_node_OID = (*hlist_classifier_nodes_iterator).first; 
    356     if (parent_classifier_node_OID != "") 
    357     { 
    358       hlist_classifier_node_OID = parent_classifier_node_OID + "|" + hlist_classifier_node_OID; 
    359     } 
     355    text_t hlist_classifier_node_OID = parent_classifier_node_OID + (*hlist_classifier_nodes_iterator).first; 
    360356 
    361357    // Is this the hlist node that is currently selected? 
     
    383379 
    384380    // Don't really like messing with this here, but it needs to be done before display_classifier_nodes() below 
    385     if (args["dcn"] == parent_classifier_node_OID
     381    if (starts_with (parent_classifier_node_OID, args["dcn"])
    386382    { 
    387383      args["dcn"] = selected_hlist_node_OID; 
     
    409405  while (upper_classifier_node_labels_iterator != upper_classifier_node_labels.end()) 
    410406  { 
    411     upper_classifier_node_OID += (upper_classifier_node_OID != "" ? "|" : ""); 
    412407    upper_classifier_node_OID += *upper_classifier_node_labels_iterator; 
    413408 
     
    424419    classifier_node_indent++; 
    425420 
     421    upper_classifier_node_OID += "|"; 
    426422    upper_classifier_node_labels_iterator++; 
    427423  } 
     
    487483  while (child_classifier_nodes_iterator != child_classifier_nodes.end()) 
    488484  { 
    489     text_t child_classifier_node_OID = (*child_classifier_nodes_iterator).first; 
    490     if (classifier_node_OID != "") 
    491     { 
    492       child_classifier_node_OID = classifier_node_OID + "|" + child_classifier_node_OID; 
    493     } 
     485    text_t child_classifier_node_OID = classifier_node_OID + (*child_classifier_nodes_iterator).first; 
    494486 
    495487    ResultDocInfo_t child_classifier_node;