]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-admin/includes/credits.php
WordPress 4.4
[autoinstalls/wordpress.git] / wp-admin / includes / credits.php
diff --git a/wp-admin/includes/credits.php b/wp-admin/includes/credits.php
new file mode 100644 (file)
index 0000000..c4fb276
--- /dev/null
@@ -0,0 +1,69 @@
+<?php
+/**
+ * WordPress Credits Administration API.
+ *
+ * @package WordPress
+ * @subpackage Administration
+ * @since 4.4.0
+ */
+
+/**
+ * Retrieve the contributor credits.
+ *
+ * @global string $wp_version The current WordPress version.
+ *
+ * @since 3.2.0
+ *
+ * @return array|false A list of all of the contributors, or false on error.
+*/
+function wp_credits() {
+       global $wp_version;
+       $locale = get_locale();
+
+       $results = get_site_transient( 'wordpress_credits_' . $locale );
+
+       if ( ! is_array( $results )
+               || false !== strpos( $wp_version, '-' )
+               || ( isset( $results['data']['version'] ) && strpos( $wp_version, $results['data']['version'] ) !== 0 )
+       ) {
+               $response = wp_remote_get( "http://api.wordpress.org/core/credits/1.1/?version=$wp_version&locale=$locale" );
+
+               if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) )
+                       return false;
+
+               $results = json_decode( wp_remote_retrieve_body( $response ), true );
+
+               if ( ! is_array( $results ) )
+                       return false;
+
+               set_site_transient( 'wordpress_credits_' . $locale, $results, DAY_IN_SECONDS );
+       }
+
+       return $results;
+}
+
+/**
+ * Retrieve the link to a contributor's WordPress.org profile page.
+ *
+ * @access private
+ * @since 3.2.0
+ *
+ * @param string &$display_name The contributor's display name, passed by reference.
+ * @param string $username      The contributor's username.
+ * @param string $profiles      URL to the contributor's WordPress.org profile page.
+ */
+function _wp_credits_add_profile_link( &$display_name, $username, $profiles ) {
+       $display_name = '<a href="' . esc_url( sprintf( $profiles, $username ) ) . '">' . esc_html( $display_name ) . '</a>';
+}
+
+/**
+ * Retrieve the link to an external library used in WordPress.
+ *
+ * @access private
+ * @since 3.2.0
+ *
+ * @param string &$data External library data, passed by reference.
+ */
+function _wp_credits_build_object_link( &$data ) {
+       $data = '<a href="' . esc_url( $data[1] ) . '">' . esc_html( $data[0] ) . '</a>';
+}