function bpminbox_process_advanced_actions(&$focus, $field, $meta_array, &$rel_this) { ////////////Later expand to be able to also extract from the rel_this as the choice of returning dynamic values global $current_user; if ($meta_array['adv_type'] == 'exist_user') { if ($meta_array['value'] == 'current_user') { if (!empty($current_user)) { if ($meta_array['ext1'] == "Self") { //kbrill bug #14923 return $current_user->id; } if ($meta_array['ext1'] == "Manager") { //kbrill bug #14923 return get_manager_info($current_user->id); } } else { return 1; } //if value is current_user } if ($meta_array['ext1'] == "Self") { return $focus->{$meta_array}['value']; } if ($meta_array['ext1'] == "Manager") { return get_manager_info($focus->{$meta_array}['value']); } } if ($meta_array['adv_type'] == 'exist_team') { if ($meta_array['value'] == 'current_team') { if (!empty($current_user)) { return $current_user->default_team; } else { return 1; } //if value is current_team } return $focus->{$meta_array}['value']; } if ($meta_array['adv_type'] == 'value_calc') { $jang = get_expression($meta_array['ext1'], $rel_this->{$field}, $meta_array['value']); //echo $jang; return $jang; } if ($meta_array['adv_type'] == 'enum_step') { global $app_list_strings; $options_name = $rel_this->field_defs[$field]['options']; $target_array = $app_list_strings[$options_name]; bpminbox_find_start_position($target_array, $rel_this->{$field}); if ($meta_array['ext1'] == 'retreat') { for ($i = 0; $i < $meta_array['value']; $i++) { prev($target_array); } } if ($meta_array['ext1'] == 'advance') { for ($i = 0; $i < $meta_array['value']; $i++) { next($target_array); } } $new_option = key($target_array); if (!empty($new_option) && $new_option != "") { return $new_option; } else { return $rel_this->{$field}; } } }
function display_expression( $wdlanguages, $xml, $defined_meaning, $languages ) { $string = ''; $wdlanguages = get_wdlanguages(); $string .= "<h3>expressions / translations</h3>"; $string .= section_reverse_link(); $string .= '<ul>'; if ( $_REQUEST['trainer_step'] == '0' || $_REQUEST['trainer_step'] == '1' ) { $languages = array(); $languages[] = $wdlanguages[0]; } else { $languages = $wdlanguages; } $expressions = get_expression( $xml, $defined_meaning, $languages ); foreach ( $expressions['wdlanguage'] as $wdlanguage ) { if ( ( current( $expressions['indentical_meaning'] ) ) == '1' ) { $string .= '<li class="ow_voc_expression">'; } else { $string .= '<li class="ow_voc_expression_not_identical">'; } # echo '<li>'; $string .= $wdlanguage . ': '; $string .= '<em>' . current( $expressions['expression'] ) . '</em>'; if ( ( current( $expressions['indentical_meaning'] ) ) == '0' ) { $string .= " (not identical) "; } $string .= '</li>'; next( $expressions['expression'] ); next( $expressions['indentical_meaning'] ); } $string .= '</ul>'; return $string; }