Changeset 16048
- Timestamp:
- 2008-06-18T15:17:53+12:00 (16 years ago)
- Location:
- gsdl/trunk/src/recpt
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
gsdl/trunk/src/recpt/dynamicclassifieraction.cpp
r16046 r16048 165 165 } 166 166 167 // Simple case for the top-level nodes 167 168 if (args["dcn"] == selected_grouping_node_OID) 168 169 { 169 // Simple case for the top-level page 170 output_top_level_page (classifier_options, args, collectproto, browsers, disp, outconvert, textout, logout); 170 text_t classifier_node_OID = selected_grouping_node_OID; 171 text_t metadata_value_filter = selected_grouping_node_OID + "*"; 172 output_top_level_nodes (classifier_node_OID, metadata_value_filter, classifier_options, args, collectproto, browsers, disp, outconvert, textout, logout); 171 173 } 172 174 else … … 292 294 293 295 294 void dynamicclassifieraction::output_top_level_page (text_tmap classifier_options, cgiargsclass &args, 295 recptproto *collectproto, browsermapclass *browsers, 296 displayclass &disp, outconvertclass &outconvert, 297 ostream &textout, ostream &logout) 296 void dynamicclassifieraction::output_top_level_nodes (text_t classifier_node_OID, text_t metadata_value_filter, 297 text_tmap classifier_options, cgiargsclass &args, 298 recptproto *collectproto, browsermapclass *browsers, 299 displayclass &disp, outconvertclass &outconvert, 300 ostream &textout, ostream &logout) 298 301 { 299 302 // Get all the metadata values for the specified element (these become the classifier nodes at the top level) 300 303 text_t metadata_element_name = classifier_options["metadata_element_name"]; 301 304 FilterResponse_t metadata_values_response; 302 bool request_success = get_metadata_values (metadata_element_name, "", "", args["c"], collectproto, metadata_values_response, logout);305 bool request_success = get_metadata_values (metadata_element_name, metadata_value_filter, "", args["c"], collectproto, metadata_values_response, logout); 303 306 304 307 // If the request failed then it's probably because the collection isn't using an SQL infodbtype … … 309 312 } 310 313 311 // After processing any hierarchical metadata values, we're left with the top-levelclassifer nodes312 map<text_t, int, lttext_t> c lassifier_nodes = process_metadata_values (classifier_options, metadata_values_response.docInfo);313 314 // Display the top-levelclassifier nodes315 map<text_t, int, lttext_t>::iterator c lassifier_nodes_iterator =classifier_nodes.begin();316 while (c lassifier_nodes_iterator !=classifier_nodes.end())317 { 318 text_t c lassifier_node_OID = (*classifier_nodes_iterator).first;319 text_t c lassifier_node_label = (*classifier_nodes_iterator).first;320 int c lassifier_node_numleafdocs = (*classifier_nodes_iterator).second;321 output_classifier_node (c lassifier_node_OID, classifier_node_label,classifier_node_numleafdocs, 0, args, collectproto, browsers, disp, outconvert, textout, logout);322 c lassifier_nodes_iterator++;314 // After processing any hierarchical metadata values, we're left with the child classifer nodes 315 map<text_t, int, lttext_t> child_classifier_nodes = process_metadata_values (classifier_options, metadata_values_response.docInfo); 316 317 // Display the child classifier nodes 318 map<text_t, int, lttext_t>::iterator child_classifier_nodes_iterator = child_classifier_nodes.begin(); 319 while (child_classifier_nodes_iterator != child_classifier_nodes.end()) 320 { 321 text_t child_classifier_node_OID = (*child_classifier_nodes_iterator).first; 322 text_t child_classifier_node_label = (*child_classifier_nodes_iterator).first; 323 int child_classifier_node_numleafdocs = (*child_classifier_nodes_iterator).second; 324 output_classifier_node (child_classifier_node_OID, child_classifier_node_label, child_classifier_node_numleafdocs, 0, args, collectproto, browsers, disp, outconvert, textout, logout); 325 child_classifier_nodes_iterator++; 323 326 } 324 327 } -
gsdl/trunk/src/recpt/dynamicclassifieraction.h
r16046 r16048 70 70 ostream &textout, ostream &logout); 71 71 72 void output_top_level_page (text_tmap classifier_options, cgiargsclass &args, 73 recptproto *collectproto, browsermapclass *browsers, 74 displayclass &disp, outconvertclass &outconvert, 75 ostream &textout, ostream &logout); 72 void output_top_level_nodes (text_t classifier_node_OID, text_t metadata_value_filter, 73 text_tmap classifier_options, cgiargsclass &args, 74 recptproto *collectproto, browsermapclass *browsers, 75 displayclass &disp, outconvertclass &outconvert, 76 ostream &textout, ostream &logout); 76 77 77 78 void output_internal_page (text_tmap classifier_options, cgiargsclass &args,
Note:
See TracChangeset
for help on using the changeset viewer.