Changeset 16215
- Timestamp:
- 2008-06-26T17:03:14+12:00 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
gsdl/trunk/src/recpt/dynamicclassifieraction.cpp
r16214 r16215 183 183 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); 184 184 185 current_classifier_node_OID = selected_grouping_node_OID + " |";185 current_classifier_node_OID = selected_grouping_node_OID + "."; 186 186 current_metadata_value_filter = selected_grouping_node_OID + "*"; 187 187 } … … 197 197 // args["dcn"] may have been modified by output_hlist_classifier_nodes() above 198 198 text_t classifier_node_OID = args["dcn"]; 199 text_t classifier_node_metadata_value = classifier_node_OID; 199 200 // If grouping is enabled remove the grouping node bit from the start of the OID 201 text_t classifier_node_OID_sans_grouping = classifier_node_OID; 202 if (classifier_options["-group_by_first_character"] == "1") 203 { 204 text_t::iterator grouping_node_separator = findchar (classifier_node_OID.begin(), classifier_node_OID.end(), '.'); 205 if (grouping_node_separator != classifier_node_OID.end()) 206 { 207 classifier_node_OID_sans_grouping = substr (grouping_node_separator + 1, classifier_node_OID.end()); 208 } 209 else 210 { 211 classifier_node_OID_sans_grouping = ""; 212 } 213 } 214 215 // Split the classifier node OID into its hierarchical parts, then remove any we've already dealt with (HLists) 216 text_tlist classifier_node_OID_parts_remaining; 217 splitchar(classifier_node_OID_sans_grouping.begin(), classifier_node_OID_sans_grouping.end(), '|', classifier_node_OID_parts_remaining); 218 if (classifier_options["-use_hlist_at_top"] == "1") 219 { 220 classifier_node_OID_parts_remaining.pop_front(); 221 } 222 223 text_t classifier_node_metadata_value = classifier_node_OID_sans_grouping; 200 224 text_t classifier_node_metadata_value_filter = classifier_node_metadata_value + "|*"; 201 202 // Split the classifier node OID into its components, then remove any we've already dealt with203 text_tlist classifier_node_OID_parts_remaining;204 splitchar(classifier_node_OID.begin(), classifier_node_OID.end(), '|', classifier_node_OID_parts_remaining);205 if (classifier_options["-group_by_first_character"] == "1")206 {207 classifier_node_OID_parts_remaining.pop_front();208 209 // Update classifier_node_metadata_value (and consequently the filter) to remove the grouping node component210 joinchar (classifier_node_OID_parts_remaining, '|', classifier_node_metadata_value);211 classifier_node_metadata_value_filter = classifier_node_metadata_value + "|*";212 }213 if (classifier_options["-use_hlist_at_top"] == "1")214 {215 classifier_node_OID_parts_remaining.pop_front();216 }217 225 218 226 // If "-split_greenstone_dates" is on the metadata value and filter doesn't quite match the OID -- fix this
Note:
See TracChangeset
for help on using the changeset viewer.