Changeset 5897
- Timestamp:
- 08/17/2007 09:23:39 PM (18 years ago)
- File:
-
- 1 edited
-
trunk/wp-includes/bookmark.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-includes/bookmark.php
r5896 r5897 1 1 <?php 2 2 3 function get_bookmark($bookmark_id, $output = OBJECT , $filter = 'raw') {3 function get_bookmark($bookmark_id, $output = OBJECT) { 4 4 global $wpdb; 5 5 … … 8 8 $link->link_category = wp_get_link_cats($bookmark_id); 9 9 10 $link = sanitize_bookmark($link, $filter);11 12 10 if ( $output == OBJECT ) { 13 11 return $link; … … 145 143 } 146 144 147 function sanitize_bookmark($bookmark, $context = 'display') {148 $fields = array('link_id', 'link_url', 'link_name', 'link_image', 'link_target', 'link_category',149 'link_description', 'link_visible', 'link_owner', 'link_rating', 'link_updated',150 'link_rel', 'link_', 'link_notes', 'link_rss', );151 152 $do_object = false;153 if ( is_object($bookmark) )154 $do_object = true;155 156 foreach ( $fields as $field ) {157 if ( $do_object )158 $bookmark->$field = sanitize_bookmark_field($field, $bookmark->$field, $bookmark->link_id, $context);159 else160 $bookmark[$field] = sanitize_bookmark_field($field, $bookmark[$field], $bookmark['link_id'], $context);161 }162 163 return $bookmark;164 }165 166 function sanitize_bookmark_field($field, $value, $bookmark_id, $context) {167 $int_fields = array('ID', 'bookmark_parent', 'menu_order');168 if ( in_array($field, $int_fields) )169 $value = (int) $value;170 171 if ( 'raw' == $context )172 return $value;173 174 $prefixed = false;175 if ( false !== strpos($field, 'bookmark_') ) {176 $prefixed = true;177 $field_no_prefix = str_replace('bookmark_', '', $field);178 }179 180 if ( 'edit' == $context ) {181 $format_to_edit = array('bookmark_content', 'bookmark_excerpt', 'bookmark_title', 'bookmark_password');182 183 if ( $prefixed ) {184 $value = apply_filters("edit_$field", $value, $bookmark_id);185 // Old school186 $value = apply_filters("${field_no_prefix}_edit_pre", $value, $bookmark_id);187 } else {188 $value = apply_filters("edit_bookmark_$field", $value, $bookmark_id);189 }190 191 if ( in_array($field, $format_to_edit) ) {192 if ( 'bookmark_content' == $field )193 $value = format_to_edit($value, user_can_richedit());194 else195 $value = format_to_edit($value);196 } else {197 $value = attribute_escape($value);198 }199 } else if ( 'db' == $context ) {200 if ( $prefixed ) {201 $value = apply_filters("pre_$field", $value);202 $value = apply_filters("${field_no_prefix}_save_pre", $value);203 } else {204 $value = apply_filters("pre_bookmark_$field", $value);205 $value = apply_filters("${field}_pre", $value);206 }207 } else {208 // Use display filters by default.209 $value = apply_filters("bookmark_$field", $value, $bookmark_id, $context);210 }211 212 if ( 'attribute' == $context )213 $value = attribute_escape($value);214 else if ( 'js' == $context )215 $value = js_escape($value);216 217 return $value;218 }219 220 145 function delete_get_bookmark_cache() { 221 146 wp_cache_delete( 'get_bookmarks', 'bookmark' );
Note: See TracChangeset
for help on using the changeset viewer.