From: Victor B. <vb...@us...> - 2004-11-30 12:17:14
|
Update of /cvsroot/mantisbt/mantisbt/core In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28130/core Modified Files: print_api.php relationship_api.php Added Files: prepare_api.php Log Message: Fixed 4829: bugnotes of deleted users cause error - Added prepare_api.php and implemented a couple of APIs that return info as strings rather than the corresponding apis in print_api which prints them. The print_apis now uses prepare_apis. - Moved the strike through formatting to inside the prepare_user_name(). - Changed print_bugnote_inc.php, monitor list, relationship list, reporter, handler, bugnotes to all used the new method with the formatting. --- NEW FILE: prepare_api.php --- <?php # Mantis - a php based bugtracking system # Copyright (C) 2000 - 2002 Kenzaburo Ito - ke...@30... # Copyright (C) 2002 - 2004 Mantis Team - man...@li... # This program is distributed under the terms and conditions of the GPL # See the README and LICENSE files for details # -------------------------------------------------------- # $Id: prepare_api.php,v 1.1 2004/11/30 12:17:04 vboctor Exp $ # -------------------------------------------------------- $t_core_dir = dirname( __FILE__ ).DIRECTORY_SEPARATOR; ### Prepare API ### # this file handles preparing of strings like to be printed # or stored. print_api.php will gradually be replaced by # think calls to echo the results of functions implemented here. # -------------------- # return the mailto: href string link function prepare_email_link( $p_email, $p_text ) { if ( !access_has_project_level( config_get( 'show_user_email_threshold' ) ) ) { return $p_text; } # If we apply string_url() to the whole mailto: link then the @ # gets turned into a %40 and you can't right click in browsers to # do Copy Email Address. $t_mailto = string_attribute( "mailto:$p_email" ); $p_text = string_display( $p_text ); return "<a href=\"$t_mailto\">$p_text</a>"; } # -------------------- # prepares the name of the user given the id. also makes it an email link. function prepare_user_name( $p_user_id ) { # Catch a user_id of NO_USER (like when a handler hasn't been assigned) if ( NO_USER == $p_user_id ) { return ''; } $t_username = user_get_name( $p_user_id ); if ( user_exists( $p_user_id ) && user_get_field( $p_user_id, 'enabled' ) ) { $t_email = user_get_email( $p_user_id ); if ( !is_blank( $t_email ) ) { return prepare_email_link( $t_email, $t_username ); } else { return $t_username; } } else { $t_result = '<font STYLE="text-decoration: line-through">'; $t_result .= $t_username; $t_result .= '</font>'; return $t_result; } } Index: print_api.php =================================================================== RCS file: /cvsroot/mantisbt/mantisbt/core/print_api.php,v retrieving revision 1.106 retrieving revision 1.107 diff -u -d -r1.106 -r1.107 --- print_api.php 13 Oct 2004 23:35:07 -0000 1.106 +++ print_api.php 30 Nov 2004 12:17:03 -0000 1.107 @@ -13,6 +13,7 @@ require_once( $t_core_dir . 'current_user_api.php' ); require_once( $t_core_dir . 'string_api.php' ); + require_once( $t_core_dir . 'prepare_api.php' ); ### Print API ### @@ -92,22 +93,7 @@ # -------------------- # prints the name of the user given the id. also makes it an email link. function print_user( $p_user_id ) { - # Catch a user_id of NO_USER (like when a handler hasn't been assigned) - if ( NO_USER == $p_user_id ) { - return; - } - - $t_username = user_get_name( $p_user_id ); - if ( user_exists( $p_user_id ) ) { - $t_email = user_get_email( $p_user_id ); - if ( !is_blank( $t_email ) ) { - print_email_link( $t_email, $t_username ); - } else { - PRINT $t_username; - } - } else { - PRINT $t_username; - } + echo prepare_user_name( $p_user_id ); } # -------------------- # same as print_user() but fills in the subject with the bug summary @@ -119,11 +105,13 @@ } $t_username = user_get_name( $p_user_id ); - if ( user_exists( $p_user_id ) ) { + if ( user_exists( $p_user_id ) && user_get_field( $p_user_id, 'enabled' ) ) { $t_email = user_get_field( $p_user_id, 'email' ); print_email_link_with_subject( $t_email, $t_username, $p_bug_id ); } else { - PRINT $t_username; + echo '<font STYLE="text-decoration: line-through">'; + echo $t_username; + echo '</font>'; } } # -------------------- @@ -1087,17 +1075,7 @@ # -------------------- # return the mailto: href string link instead of printing it function get_email_link( $p_email, $p_text ) { - if ( !access_has_project_level( config_get( 'show_user_email_threshold' ) ) ) { - return $p_text; - } - - # If we apply string_url() to the whole mailto: link then the @ - # gets turned into a %40 and you can't right click in browsers to - # do Copy Email Address. - $t_mailto = string_attribute( "mailto:$p_email" ); - $p_text = string_display( $p_text ); - - return "<a href=\"$t_mailto\">$p_text</a>"; + return prepare_email_link( $p_email, $p_text ); } # -------------------- # print a mailto: href link with subject Index: relationship_api.php =================================================================== RCS file: /cvsroot/mantisbt/mantisbt/core/relationship_api.php,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -r1.26 -r1.27 --- relationship_api.php 8 Nov 2004 19:26:47 -0000 1.26 +++ relationship_api.php 30 Nov 2004 12:17:04 -0000 1.27 @@ -555,7 +555,7 @@ # get the handler name of the related bug $t_relationship_info_html .= $t_td; if ( $t_bug->handler_id > 0 ) { - $t_relationship_info_html .= '<nobr>' . user_get_name( $t_bug->handler_id ) . '</nobr>'; + $t_relationship_info_html .= '<nobr>' . prepare_user_name( $t_bug->handler_id ) . '</nobr>'; } $t_relationship_info_html .= ' </td>'; |