web/wp-content/themes/thematic/library/extensions/comments-extensions.php
author ymh <ymh.work@gmail.com>
Mon, 22 Mar 2010 16:36:28 +0100
changeset 5 ac511f1ccc8e
parent 1 0d28b7c10758
permissions -rw-r--r--
add hgignore
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
0d28b7c10758 First commit
ymh
parents:
diff changeset
     1
<?php
0d28b7c10758 First commit
ymh
parents:
diff changeset
     2
0d28b7c10758 First commit
ymh
parents:
diff changeset
     3
0d28b7c10758 First commit
ymh
parents:
diff changeset
     4
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
     5
// Just before #comments
0d28b7c10758 First commit
ymh
parents:
diff changeset
     6
function thematic_abovecomments() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
     7
    do_action('thematic_abovecomments');
0d28b7c10758 First commit
ymh
parents:
diff changeset
     8
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
     9
0d28b7c10758 First commit
ymh
parents:
diff changeset
    10
0d28b7c10758 First commit
ymh
parents:
diff changeset
    11
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    12
// Just before #comments-list
0d28b7c10758 First commit
ymh
parents:
diff changeset
    13
function thematic_abovecommentslist() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    14
    do_action('thematic_abovecommentslist');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    15
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    16
0d28b7c10758 First commit
ymh
parents:
diff changeset
    17
0d28b7c10758 First commit
ymh
parents:
diff changeset
    18
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    19
// Just after #comments-list
0d28b7c10758 First commit
ymh
parents:
diff changeset
    20
function thematic_belowcommentslist() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    21
    do_action('thematic_belowcommentslist');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    22
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    23
0d28b7c10758 First commit
ymh
parents:
diff changeset
    24
0d28b7c10758 First commit
ymh
parents:
diff changeset
    25
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    26
// Just before #trackbacks-list
0d28b7c10758 First commit
ymh
parents:
diff changeset
    27
function thematic_abovetrackbackslist() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    28
    do_action('thematic_abovetrackbackslist');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    29
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    30
0d28b7c10758 First commit
ymh
parents:
diff changeset
    31
0d28b7c10758 First commit
ymh
parents:
diff changeset
    32
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    33
// Just after #trackbacks-list
0d28b7c10758 First commit
ymh
parents:
diff changeset
    34
function thematic_belowtrackbackslist() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    35
    do_action('thematic_belowtrackbackslist');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    36
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    37
0d28b7c10758 First commit
ymh
parents:
diff changeset
    38
0d28b7c10758 First commit
ymh
parents:
diff changeset
    39
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    40
// Just before the comments form
0d28b7c10758 First commit
ymh
parents:
diff changeset
    41
function thematic_abovecommentsform() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    42
    do_action('thematic_abovecommentsform');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    43
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    44
0d28b7c10758 First commit
ymh
parents:
diff changeset
    45
0d28b7c10758 First commit
ymh
parents:
diff changeset
    46
// Adds the Subscribe to comments button
0d28b7c10758 First commit
ymh
parents:
diff changeset
    47
function thematic_show_subscription_checkbox() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    48
    if(function_exists('show_subscription_checkbox')) { show_subscription_checkbox(); }
0d28b7c10758 First commit
ymh
parents:
diff changeset
    49
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    50
add_action('comment_form', 'thematic_show_subscription_checkbox', 98);
0d28b7c10758 First commit
ymh
parents:
diff changeset
    51
0d28b7c10758 First commit
ymh
parents:
diff changeset
    52
0d28b7c10758 First commit
ymh
parents:
diff changeset
    53
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    54
// Just after the comments form
0d28b7c10758 First commit
ymh
parents:
diff changeset
    55
function thematic_belowcommentsform() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    56
    do_action('thematic_belowcommentsform');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    57
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    58
0d28b7c10758 First commit
ymh
parents:
diff changeset
    59
0d28b7c10758 First commit
ymh
parents:
diff changeset
    60
// Adds the Subscribe without commenting button
0d28b7c10758 First commit
ymh
parents:
diff changeset
    61
function thematic_show_manual_subscription_form() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    62
    if(function_exists('show_manual_subscription_form')) { show_manual_subscription_form(); }
0d28b7c10758 First commit
ymh
parents:
diff changeset
    63
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    64
add_action('thematic_belowcommentsform', 'thematic_show_manual_subscription_form', 5);
0d28b7c10758 First commit
ymh
parents:
diff changeset
    65
0d28b7c10758 First commit
ymh
parents:
diff changeset
    66
0d28b7c10758 First commit
ymh
parents:
diff changeset
    67
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    68
// Just after #comments
0d28b7c10758 First commit
ymh
parents:
diff changeset
    69
function thematic_belowcomments() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    70
    do_action('thematic_belowcomments');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    71
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    72
0d28b7c10758 First commit
ymh
parents:
diff changeset
    73
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    74
// Creates the standard text for one comment
0d28b7c10758 First commit
ymh
parents:
diff changeset
    75
function thematic_singlecomment_text() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    76
    $content = __('<span>One</span> Comment', 'thematic');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    77
    return apply_filters(thematic_singlecomment_text, $content);
0d28b7c10758 First commit
ymh
parents:
diff changeset
    78
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    79
0d28b7c10758 First commit
ymh
parents:
diff changeset
    80
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    81
// Creates the standard text for more than one comment
0d28b7c10758 First commit
ymh
parents:
diff changeset
    82
function thematic_multiplecomments_text() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    83
    $content = __('<span>%d</span> Comments', 'thematic');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    84
    return apply_filters(thematic_multiplecomments_text, $content);
0d28b7c10758 First commit
ymh
parents:
diff changeset
    85
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    86
0d28b7c10758 First commit
ymh
parents:
diff changeset
    87
// creates the list comments arguments
0d28b7c10758 First commit
ymh
parents:
diff changeset
    88
function list_comments_arg() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    89
	$content = 'type=comment&callback=thematic_comments';
0d28b7c10758 First commit
ymh
parents:
diff changeset
    90
	return apply_filters('list_comments_arg', $content);
0d28b7c10758 First commit
ymh
parents:
diff changeset
    91
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    92
0d28b7c10758 First commit
ymh
parents:
diff changeset
    93
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
    94
// Creates the standard text 'Post a Comment'
0d28b7c10758 First commit
ymh
parents:
diff changeset
    95
function thematic_postcomment_text() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
    96
    $content = __('Post a Comment', 'thematic');
0d28b7c10758 First commit
ymh
parents:
diff changeset
    97
    return apply_filters(thematic_postcomment_text, $content);
0d28b7c10758 First commit
ymh
parents:
diff changeset
    98
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
    99
0d28b7c10758 First commit
ymh
parents:
diff changeset
   100
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
   101
// Creates the standard text 'Post a Reply to %s'
0d28b7c10758 First commit
ymh
parents:
diff changeset
   102
function thematic_postreply_text() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
   103
    $content = __('Post a Reply to %s', 'thematic');
0d28b7c10758 First commit
ymh
parents:
diff changeset
   104
    return apply_filters(thematic_postreply_text, $content);
0d28b7c10758 First commit
ymh
parents:
diff changeset
   105
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
   106
0d28b7c10758 First commit
ymh
parents:
diff changeset
   107
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
   108
// Creates the standard text 'Comment' for the text box
0d28b7c10758 First commit
ymh
parents:
diff changeset
   109
function thematic_commentbox_text() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
   110
    $content = __('Comment', 'thematic');
0d28b7c10758 First commit
ymh
parents:
diff changeset
   111
    return apply_filters(thematic_commentbox_text, $content);
0d28b7c10758 First commit
ymh
parents:
diff changeset
   112
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
   113
0d28b7c10758 First commit
ymh
parents:
diff changeset
   114
// Located in comments.php
0d28b7c10758 First commit
ymh
parents:
diff changeset
   115
// Creates the standard text 'Post Comment' for the send button
0d28b7c10758 First commit
ymh
parents:
diff changeset
   116
function thematic_commentbutton_text() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
   117
    $content = __('Post Comment', 'thematic');
0d28b7c10758 First commit
ymh
parents:
diff changeset
   118
    return apply_filters(thematic_commentbutton_text, $content);
0d28b7c10758 First commit
ymh
parents:
diff changeset
   119
}
0d28b7c10758 First commit
ymh
parents:
diff changeset
   120
0d28b7c10758 First commit
ymh
parents:
diff changeset
   121
// Produces an avatar image with the hCard-compliant photo class
0d28b7c10758 First commit
ymh
parents:
diff changeset
   122
function thematic_commenter_link() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
   123
	$commenter = get_comment_author_link();
0d28b7c10758 First commit
ymh
parents:
diff changeset
   124
	if ( ereg( '<a[^>]* class=[^>]+>', $commenter ) ) {
0d28b7c10758 First commit
ymh
parents:
diff changeset
   125
		$commenter = ereg_replace( '(<a[^>]* class=[\'"]?)', '\\1url ' , $commenter );
0d28b7c10758 First commit
ymh
parents:
diff changeset
   126
	} else {
0d28b7c10758 First commit
ymh
parents:
diff changeset
   127
		$commenter = ereg_replace( '(<a )/', '\\1class="url "' , $commenter );
0d28b7c10758 First commit
ymh
parents:
diff changeset
   128
	}
0d28b7c10758 First commit
ymh
parents:
diff changeset
   129
	$avatar_email = get_comment_author_email();
0d28b7c10758 First commit
ymh
parents:
diff changeset
   130
	$avatar_size = apply_filters( 'avatar_size', '80' ); // Available filter: avatar_size
0d28b7c10758 First commit
ymh
parents:
diff changeset
   131
	$avatar = str_replace( "class='avatar", "class='photo avatar", get_avatar( $avatar_email, $avatar_size ) );
0d28b7c10758 First commit
ymh
parents:
diff changeset
   132
	echo $avatar . ' <span class="fn n">' . $commenter . '</span>';
0d28b7c10758 First commit
ymh
parents:
diff changeset
   133
} // end thematic_commenter_link
0d28b7c10758 First commit
ymh
parents:
diff changeset
   134
0d28b7c10758 First commit
ymh
parents:
diff changeset
   135
0d28b7c10758 First commit
ymh
parents:
diff changeset
   136
// A hook for the standard comments template
0d28b7c10758 First commit
ymh
parents:
diff changeset
   137
function thematic_comments_template() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
   138
	do_action('thematic_comments_template');
0d28b7c10758 First commit
ymh
parents:
diff changeset
   139
} // end thematic_comments
0d28b7c10758 First commit
ymh
parents:
diff changeset
   140
0d28b7c10758 First commit
ymh
parents:
diff changeset
   141
0d28b7c10758 First commit
ymh
parents:
diff changeset
   142
	// The standard comments template is injected into thematic_comments_template() by default
0d28b7c10758 First commit
ymh
parents:
diff changeset
   143
	function thematic_include_comments() {
0d28b7c10758 First commit
ymh
parents:
diff changeset
   144
		comments_template('', true);
0d28b7c10758 First commit
ymh
parents:
diff changeset
   145
	} // end thematic_include_comments
0d28b7c10758 First commit
ymh
parents:
diff changeset
   146
	
0d28b7c10758 First commit
ymh
parents:
diff changeset
   147
	add_action('thematic_comments_template','thematic_include_comments',5);
0d28b7c10758 First commit
ymh
parents:
diff changeset
   148
	
0d28b7c10758 First commit
ymh
parents:
diff changeset
   149