Skip to:
Content

Changes from tags/0.9.0.2 at r1492 to tags/0.9.0.3 at r1844


Ignore:
Location:
tags/0.9.0.3
Files:
21 edited

Legend:

Unmodified
Added
Removed
  • tags/0.9.0.3/bb-admin/admin-functions.php

    r1492 r1844  
    332332        if ( $show_search ) { 
    333333            $r .= "<form action='' method='get' id='search'>\n\t<p>"; 
     334            $r .= "<label class='hidden' for='usersearch'>" . _e('Search:') . "</label>"; 
    334335            $r .= "\t\t<input type='text' name='usersearch' id='usersearch' value='" . wp_specialchars( $this->search_term, 1) . "' />\n"; 
    335336            $r .= "\t\t<input type='submit' value='" . __('Search for users &raquo;') . "' />\n\t</p>\n"; 
     
    564565    <fieldset> 
    565566    <table><col /><col style="width: 80%" /> 
    566         <tr><th scope="row"><?php _e('Forum Name:'); ?></th> 
     567        <tr><th scope="row"><label for="forum-name"><?php _e('Forum Name:'); ?></label></th> 
    567568            <td><input type="text" name="forum_name" id="forum-name" value="<?php if ( $forum_id ) echo attribute_escape( get_forum_name( $forum_id ) ); ?>" tabindex="10" class="widefat" /></td> 
    568569        </tr> 
    569         <tr><th scope="row"><?php _e('Forum Description:'); ?></th> 
     570        <tr><th scope="row"><label for="forum-desc"><?php _e('Forum Description:'); ?></label></th> 
    570571            <td><input type="text" name="forum_desc" id="forum-desc" value="<?php if ( $forum_id ) echo attribute_escape( get_forum_description( $forum_id ) ); ?>" tabindex="11" class="widefat" /></td> 
    571572        </tr> 
    572         <tr id="forum-parent-row"><th scope="row"><?php _e('Forum Parent:'); ?></th> 
     573        <tr id="forum-parent-row"><th scope="row"><label for="forum_parent"><?php _e('Forum Parent:'); ?></label></th> 
    573574            <td><?php bb_forum_dropdown( array('cut_branch' => $forum_id, 'id' => 'forum_parent', 'none' => true, 'selected' => $forum_id ? get_forum_parent( $forum_id ) : 0) ); ?></td> 
    574575        </tr> 
    575         <tr id="forum-position-row"><th scope="row"><?php _e('Position:'); ?></th> 
     576        <tr id="forum-position-row"><th scope="row"><label for="forum-order"><?php _e('Position:'); ?></label></th> 
    576577            <td><input type="text" name="forum_order" id="forum-order" value="<?php if ( $forum_id ) echo get_forum_position( $forum_id ); ?>" tabindex="12" maxlength="10" class="widefat" /></td> 
    577578        </tr> 
     
    847848        ); 
    848849    } 
    849     $plugin_data = implode('', file($plugin_file)); 
     850    $plugin_code = implode('', file($plugin_file)); 
     851    // Grab just the first commented area from the file 
     852    if ( !preg_match( '|/\*(.*)\*/|msU', $plugin_code, $plugin_block ) ) 
     853        return false; 
     854    $plugin_data = trim( $plugin_block[1] ); 
    850855    if ( !preg_match("|Plugin Name:(.*)|i", $plugin_data, $plugin_name) ) 
    851856        return false; 
     
    916921    if ( strpos($theme_file, '#') !== false ) 
    917922        $theme_file = bb_get_theme_directory( $theme_file ) . 'style.css'; 
    918     $theme_data = implode( '', file( $theme_file ) ); 
    919     $theme_data = str_replace ( '\r', '\n', $theme_data );  
     923    $theme_code = implode( '', file( $theme_file ) ); 
     924    $theme_code = str_replace ( '\r', '\n', $theme_code ); 
     925    // Grab just the first commented area from the file 
     926    preg_match( '|/\*(.*)\*/|msU', $theme_code, $theme_block ); 
     927    $theme_data = trim( $theme_block[1] ); 
    920928    preg_match( '|Theme Name:(.*)|i', $theme_data, $theme_name ); 
    921929    preg_match( '|Theme URI:(.*)|i', $theme_data, $theme_uri ); 
  • tags/0.9.0.3/bb-admin/class-install.php

    r1492 r1844  
    13941394    } 
    13951395     
     1396    function remove_users_table_from_schema($schema) 
     1397    { 
     1398        unset($schema['users']); 
     1399        return $schema; 
     1400    } 
     1401 
     1402    function remove_usermeta_table_from_schema($schema) 
     1403    { 
     1404        unset($schema['usermeta']); 
     1405        return $schema; 
     1406    } 
     1407     
    13961408    function process_form_finalise_installation() 
    13971409    { 
     
    14171429         
    14181430        // Setup user table variables and constants if available 
    1419         if ($data2['toggle_2_1']['value']) { 
     1431        if ($data2['toggle_2_2']['value']) { 
    14201432             
    14211433            $installation_log[] = '>>> ' . __('Setting up custom user table constants'); 
     
    14231435            global $bb; 
    14241436             
    1425             if ( !empty($data2['wp_table_prefix']['value']) ) 
     1437            if ( !empty($data2['wp_table_prefix']['value']) ) { 
    14261438                $bb->wp_table_prefix = $data2['wp_table_prefix']['value']; 
     1439                add_filter( 'bb_schema', array(&$this, 'remove_users_table_from_schema') ); 
     1440                add_filter( 'bb_schema', array(&$this, 'remove_usermeta_table_from_schema') ); 
     1441                $installation_log[] = '>>>>>> ' . __('Removed user tables from schema'); 
     1442            } 
    14271443            if ( !empty($data2['user_bbdb_name']['value']) ) 
    14281444                $bb->user_bbdb_name = $data2['user_bbdb_name']['value']; 
     
    14351451            if ( !empty($data2['user_bbdb_charset']['value']) ) 
    14361452                $bb->user_bbdb_charset = preg_replace( '/[^a-z0-9_-]/i', '', $data2['user_bbdb_charset']['value'] ); 
    1437             if ( !empty($data2['custom_user_table']['value']) ) 
     1453            if ( !empty($data2['custom_user_table']['value']) ) { 
    14381454                $bb->custom_user_table = preg_replace( '/[^a-z0-9_-]/i', '', $data2['custom_user_table']['value'] ); 
    1439             if ( !empty($data2['custom_user_meta_table']['value']) ) 
     1455                add_filter( 'bb_schema', array(&$this, 'remove_users_table_from_schema') ); 
     1456                $installation_log[] = '>>>>>> ' . __('Removed users table from schema'); 
     1457            } 
     1458            if ( !empty($data2['custom_user_meta_table']['value']) ) { 
    14401459                $bb->custom_user_meta_table = preg_replace( '/[^a-z0-9_-]/i', '', $data2['custom_user_meta_table']['value'] ); 
     1460                add_filter( 'bb_schema', array(&$this, 'remove_usermeta_table_from_schema') ); 
     1461                $installation_log[] = '>>>>>> ' . __('Removed usermeta table from schema'); 
     1462            } 
    14411463             
    14421464            // Set the new prefix for user tables 
  • tags/0.9.0.3/bb-admin/install.css

    r1492 r1844  
    8181 
    8282div.logo img { 
     83    height: 83px; 
    8384    display: block; 
    8485    margin: 0 auto; 
  • tags/0.9.0.3/bb-admin/options-general.php

    r1492 r1844  
    55     
    66    bb_check_admin_referer( 'options-general-update' ); 
     7     
     8    // Deal with avatars checkbox when it isn't checked 
     9    if (!isset($_POST['avatars_show'])) { 
     10        $_POST['avatars_show'] = false; 
     11    } 
    712     
    813    foreach ( (array) $_POST as $option => $value ) { 
     
    148153?> 
    149154        </div> 
     155        <label for="avatars_default"> 
     156            <?php _e('Gravatar default image'); ?> 
     157        </label> 
     158        <div> 
     159            <select name="avatars_default" id="avatars_default"> 
     160<?php 
     161$selected = array(); 
     162$selected[bb_get_option('avatars_default')] = ' selected="selected"'; 
     163?> 
     164                <option value="default"<?php echo $selected['default']; ?>><?php _e('Default'); ?></option> 
     165                <option value="logo"<?php echo $selected['logo']; ?>><?php _e('Gravatar Logo'); ?></option> 
     166                <option value="monsterid"<?php echo $selected['monsterid']; ?>><?php _e('MonsterID'); ?></option> 
     167                <option value="wavatar"<?php echo $selected['wavatar']; ?>><?php _e('Wavatar'); ?></option> 
     168                <option value="identicon"<?php echo $selected['identicon']; ?>><?php _e('Identicon'); ?></option> 
     169<?php 
     170unset($selected); 
     171?> 
     172            </select> 
     173            <p>Select what style of avatar to display to users without a Gravatar</p> 
     174            <p class="gravatarDefault"> 
     175                <?php echo bb_get_avatar( 'anotherexample', 30, 'default' ); ?><?php _e('Default'); ?> 
     176            </p> 
     177            <p class="gravatarDefault"> 
     178                <?php echo bb_get_avatar( 'anotherexample', 30, 'logo' ); ?><?php _e('Gravatar Logo'); ?> 
     179            </p> 
     180            <p class="gravatarDefault"> 
     181                <?php echo bb_get_avatar( 'anotherexample', 30, 'monsterid' ); ?><?php _e('MonsterID'); ?> 
     182            </p> 
     183            <p class="gravatarDefault"> 
     184                <?php echo bb_get_avatar( 'anotherexample', 30, 'wavatar' ); ?><?php _e('Wavatar'); ?> 
     185            </p> 
     186            <p class="gravatarDefault"> 
     187                <?php echo bb_get_avatar( 'anotherexample', 30, 'identicon' ); ?><?php _e('Identicon'); ?> 
     188            </p> 
     189        </div> 
    150190        <label for="avatars_rating"> 
    151191            <?php _e('Gravatar maximum rating:'); ?> 
     
    166206?> 
    167207            </select> 
    168             <p> 
    169                 <img src="http://site.gravatar.com/images/gravatars/ratings/3.gif" alt="Rated X" style="height:30px; width:30px; float:left; margin-right:10px;" /> 
     208            <p class="gravatarRating"> 
     209                <img src="http://site.gravatar.com/images/gravatars/ratings/3.gif" alt="Rated X" /> 
    170210                <?php _e('X rated gravatars may contain hardcore sexual imagery or extremely disturbing violence.'); ?> 
    171211            </p> 
    172             <p> 
    173                 <img src="http://site.gravatar.com/images/gravatars/ratings/2.gif" alt="Rated R" style="height:30px; width:30px; float:left; margin-right:10px;" /> 
     212            <p class="gravatarRating"> 
     213                <img src="http://site.gravatar.com/images/gravatars/ratings/2.gif" alt="Rated R" /> 
    174214                <?php _e('R rated gravatars may contain such things as harsh profanity, intense violence, nudity, or hard drug use.'); ?> 
    175215            </p> 
    176             <p> 
    177                 <img src="http://site.gravatar.com/images/gravatars/ratings/1.gif" alt="Rated PG" style="height:30px; width:30px; float:left; margin-right:10px;" /> 
     216            <p class="gravatarRating"> 
     217                <img src="http://site.gravatar.com/images/gravatars/ratings/1.gif" alt="Rated PG" /> 
    178218                <?php _e('PG rated gravatars may contain rude gestures, provocatively dressed individuals, the lesser swear words, or mild violence.'); ?> 
    179219            </p> 
    180             <p> 
    181                 <img src="http://site.gravatar.com/images/gravatars/ratings/0.gif" alt="Rated G" style="height:30px; width:30px; float:left; margin-right:10px;" /> 
     220            <p class="gravatarRating"> 
     221                <img src="http://site.gravatar.com/images/gravatars/ratings/0.gif" alt="Rated G" /> 
    182222                <?php _e('A G rated gravatar is suitable for display on all websites with any audience type.'); ?> 
    183223            </p> 
  • tags/0.9.0.3/bb-admin/options-wordpress.php

    r1492 r1844  
    66if ( in_array( $action, array('update-options', 'update-users') ) ) { 
    77    bb_check_admin_referer( 'options-wordpress-' . $action ); 
     8     
     9    // Deal with advanced user database checkbox when it isn't checked 
     10    if (!isset($_POST['user_bbdb_advanced'])) { 
     11        $_POST['user_bbdb_advanced'] = false; 
     12    } 
    813     
    914    foreach ( (array) $_POST as $option => $value ) { 
  • tags/0.9.0.3/bb-admin/style-rtl.css

    r1492 r1844  
    116116    margin-left: 1ex; 
    117117} 
     118 
     119.search-form fieldset { 
     120    float: left; 
     121    margin: 0 1.5ex 1em 0; 
     122    padding: 0; 
     123} 
     124 
     125.search-form fieldset legend { 
     126    padding: 0 0 .2em 1px; 
     127} 
     128     
     129.search-form .text-input { 
     130    padding: 4px 3px; 
     131} 
     132 
     133.search-form .submit-input { 
     134    float: left; 
     135    margin: 12px 0 1em; 
     136    position: relative; 
     137    top: .35em; 
     138} 
     139 
     140 
     141/* 
     142Options forms 
     143*/ 
     144 
     145form.options fieldset label { 
     146    float: right; 
     147    text-align: left; 
     148    margin-left: 1%; 
     149    margin-right: auto; 
     150} 
     151 
     152form.options fieldset table { 
     153    margin-left: auto; 
     154    margin-right: 36%; 
     155} 
     156 
     157form.options fieldset table label { 
     158    margin-left: auto; 
     159} 
     160 
     161form.options fieldset div { 
     162    float: right; 
     163} 
     164 
     165form.options fieldset div.spacer { 
     166    padding-left: auto; 
     167    padding-right: 36%; 
     168} 
     169 
     170form.options div p.gravatarDefault img { 
     171    margin-right: auto; 
     172    margin-left: 1em; 
     173} 
     174 
     175form.options div p.gravatarRating img { 
     176    float: right; 
     177    margin-right: auto; 
     178    margin-left: 1em; 
     179} 
  • tags/0.9.0.3/bb-admin/style.css

    r1492 r1844  
    636636    border-top-color: #999; 
    637637} 
     638 
     639form.options div p.gravatarRating { 
     640    clear: both; 
     641    width: 440px; 
     642    padding-top: 0.4em; 
     643} 
     644 
     645form.options div p.gravatarDefault { 
     646    line-height: 30px; 
     647} 
     648 
     649form.options div p.gravatarDefault img { 
     650    vertical-align: top; 
     651    height:30px; 
     652    width:30px; 
     653    margin-right:1em; 
     654    border: 1px solid rgb(110, 180, 105); 
     655} 
     656 
     657form.options div p.gravatarRating img { 
     658    height:30px; 
     659    width:30px; 
     660    float:left; 
     661    margin-right:1em; 
     662    border: 1px solid rgb(110, 180, 105); 
     663} 
     664 
     665.hidden { 
     666    display: none; 
     667} 
  • tags/0.9.0.3/bb-admin/upgrade-functions.php

    r1492 r1844  
    2727    $bb_upgrade[] = bb_upgrade_1040(); // Activate Akismet and bozo plugins and convert active plugins to new convention on upgrade only 
    2828    $bb_upgrade[] = bb_upgrade_1050(); // Update active theme if present 
    29     $bb_upgrade[] = bb_upgrade_1060(); // throttle_time option 
    3029    $bb_upgrade[] = bb_upgrade_1070(); // trim whitespace from raw_tag 
    3130    bb_update_db_version(); 
     
    582581} 
    583582 
    584 function bb_upgrade_1060() { 
    585     if ( ( $dbv = bb_get_option_from_db( 'bb_db_version' ) ) && $dbv >= 1435 ) 
    586         return; 
    587     if ( !bb_get_option_from_db( 'throttle_time' ) ) 
    588         bb_update_option( 'throttle_time', 30 ); 
    589  
    590     bb_update_option( 'bb_db_version', 1435 ); 
    591  
    592     return 'throttle_limit option added: ' . __FUNCTION__; 
    593 } 
    594  
    595583function bb_upgrade_1070() { 
    596584    global $bbdb; 
  • tags/0.9.0.3/bb-includes/classes.php

    r1492 r1844  
    3131            return; 
    3232 
    33         if ( 'post' == $type ) 
     33        if ( 'post' == $this->type ) 
    3434            $this->generate_post_sql(); 
    3535        else 
  • tags/0.9.0.3/bb-includes/db.php

    r1492 r1844  
    270270 
    271271    /** 
    272      * Update a row in the table with an array of data 
     272     * Update rows in the table with an array of data 
    273273     * @param string $table WARNING: not sanitized! 
    274274     * @param array $data should not already be SQL-escaped 
     
    287287        else 
    288288            return false; 
    289         return $this->query( "UPDATE $table SET " . implode( ', ', $bits ) . ' WHERE ' . implode( ' AND ', $wheres ) . ' LIMIT 1' ); 
     289        return $this->query( "UPDATE $table SET " . implode( ', ', $bits ) . ' WHERE ' . implode( ' AND ', $wheres ) ); 
    290290    } 
    291291 
     
    472472     */ 
    473473    function check_database_version() { 
    474         $bb_version = function_exists( 'bb_get_option' ) ? bb_get_option( 'bb_version' ) : ''; 
     474        $bb_version = function_exists( 'bb_get_option' ) ? bb_get_option( 'version' ) : ''; 
    475475        // Make sure the server has MySQL 4.0 
    476476        $mysql_version = $this->db_version(); 
  • tags/0.9.0.3/bb-includes/functions.php

    r1492 r1844  
    12411241    $user = bb_get_user( $user_id ); 
    12421242    $user_status = (int) $user_status; 
    1243     if ( $user->ID != bb_get_current_user_info( 'id' ) && bb_current_user_can( 'edit_users' ) ) : 
    1244         $bbdb->update( $bbdb->users, campact( 'user_status'), array( 'ID' => $user->ID ) ); 
    1245         $bb_cache->flush_one( 'user', $user->ID ); 
    1246     endif; 
     1243    $bbdb->update( $bbdb->users, compact( 'user_status'), array( 'ID' => $user->ID ) ); 
     1244    $bb_cache->flush_one( 'user', $user->ID ); 
    12471245} 
    12481246 
     
    14461444        break; 
    14471445    case 'version' : 
    1448         return '0.9.0.2'; // Don't filter 
     1446        return '0.9.0.3'; // Don't filter 
    14491447        break; 
    14501448    case 'bb_db_version' : 
     
    15491547        'date_format' => '', 
    15501548        'avatars_show' => '', 
     1549        'avatars_default' => '', 
    15511550        'avatars_rating' => '', 
    15521551        'wp_table_prefix' => '', 
     
    15651564        'authcookie' => '', 
    15661565        'cookiepath' => '', 
    1567         'sitecookiepath' => '' 
     1566        'sitecookiepath' => '', 
     1567        'throttle_time' => 30 
    15681568    ); 
    15691569     
     
    16031603        break; 
    16041604    endswitch; 
    1605     if ( is_array($object) && $object ) : 
     1605    if ( is_array($object) && $object ) { 
    16061606        $trans = array(); 
    16071607        foreach ( array_keys($object) as $i ) 
    16081608            $trans[$object[$i]->$id] =& $object[$i]; 
    16091609        $ids = join(',', array_map('intval', array_keys($trans))); 
    1610         if ( $metas = $bbdb->get_results("SELECT $field, meta_key, meta_value FROM $table WHERE $field IN ($ids)") ) 
    1611             foreach ( $metas as $meta ) : 
     1610        if ( $metas = $bbdb->get_results("SELECT $field, meta_key, meta_value FROM $table WHERE $field IN ($ids)") ) { 
     1611            usort( $metas, '_bb_append_meta_sort' ); 
     1612            foreach ( $metas as $meta ) { 
    16121613                $trans[$meta->$field]->{$meta->meta_key} = bb_maybe_unserialize( $meta->meta_value ); 
    16131614                if ( strpos($meta->meta_key, $bbdb->prefix) === 0 ) 
    16141615                    $trans[$meta->$field]->{substr($meta->meta_key, strlen($bbdb->prefix))} = bb_maybe_unserialize( $meta->meta_value ); 
    1615             endforeach; 
     1616            } 
     1617        } 
    16161618        foreach ( array_keys($trans) as $i ) 
    16171619            $cache[$i] = $trans[$i]; 
    16181620        return $object; 
    1619     elseif ( $object ) : 
    1620         if ( $metas = $bbdb->get_results( $bbdb->prepare( "SELECT meta_key, meta_value FROM $table WHERE $field = %d", $object->$id ) ) ) 
    1621             foreach ( $metas as $meta ) : 
     1621    } elseif ( $object ) { 
     1622        if ( $metas = $bbdb->get_results( $bbdb->prepare( "SELECT meta_key, meta_value FROM $table WHERE $field = %d", $object->$id ) ) ) { 
     1623            usort( $metas, '_bb_append_meta_sort' ); 
     1624            foreach ( $metas as $meta ) { 
    16221625                $object->{$meta->meta_key} = bb_maybe_unserialize( $meta->meta_value ); 
    16231626                if ( strpos($meta->meta_key, $bbdb->prefix) === 0 ) 
    16241627                    $object->{substr($meta->meta_key, strlen($bbdb->prefix))} = bb_maybe_unserialize( $meta->meta_value ); 
    1625             endforeach; 
     1628            } 
     1629        } 
    16261630        $cache[$object->$id] = $object; 
    16271631        return $object; 
    1628     endif; 
     1632    } 
     1633} 
     1634 
     1635/**  
     1636 * _bb_append_meta_sort() - sorts meta keys by length to ensure $appended_object->{$bbdb->prefix}key overwrites $appended_object->key as desired 
     1637 * 
     1638 * @internal 
     1639 */ 
     1640function _bb_append_meta_sort( $a, $b ) { 
     1641    return strlen( $a->meta_key ) - strlen( $b->meta_key ); 
    16291642} 
    16301643 
     
    17891802        return (int) $_GET['page']; 
    17901803 
    1791     if ( isset($_SERVER['PATH_INFO']) ) { 
     1804    if ( isset($_SERVER['PATH_INFO']) ) 
    17921805        $path = $_SERVER['PATH_INFO']; 
    1793     } else { 
    1794         if ( !$parsed = parse_url( $_SERVER['REQUEST_URI'] ) ) 
     1806    else 
     1807        if ( !$path = strtok($_SERVER['REQUEST_URI'], '?') ) 
    17951808            return 1; 
    1796         if ( empty($parsed['path']) ) 
    1797             return 1; 
    1798         $path = $parsed['path']; 
    1799     } 
    18001809 
    18011810    if ( $page = strstr($path, '/page/') ) { 
     
    19751984            else 
    19761985                $user = bb_get_user( $id ); // Get by the ID 
    1977              
    1978             if ( !$user ) 
    1979                 bb_die(__('User not found.')); 
    1980              
     1986 
     1987            if ( !$user || ( 1 == $user->user_status && !bb_current_user_can( 'moderate' ) ) ) 
     1988                bb_die(__('User not found.'), '', 404); 
     1989 
    19811990            $user_id = $user->ID; 
    19821991            global_profile_menu_structure(); 
     
    22992308} 
    23002309 
    2301 function bb_die( $message, $title = '' ) { 
     2310function bb_die( $message, $title = '', $header = 0 ) { 
    23022311    global $bb_locale; 
    23032312     
     2313    if ( $header && !headers_sent() ) 
     2314        status_header( $header ); 
     2315 
    23042316    if ( empty($title) ) 
    23052317        $title = __('bbPress &rsaquo; Error'); 
  • tags/0.9.0.3/bb-includes/pluggable.php

    r1492 r1844  
    2525        return false; 
    2626    } 
     27 
     28    // User is logging in for the first time, update their user_status to normal 
     29    if ( 1 == $user->user_status ) 
     30        update_user_status( $user->ID, 0 ); 
    2731     
    2832    return $user; 
     
    398402 * @return string The random password 
    399403 **/ 
    400 function wp_generate_password($length = 12) { 
    401     $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()"; 
     404function wp_generate_password($length = 12, $special_chars = true ) { 
     405    $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; 
     406    if ( $special_chars ) 
     407        $chars .= "!@#$%^&*()"; 
     408 
    402409    $password = ''; 
    403410    for ( $i = 0; $i < $length; $i++ ) 
     
    480487 
    481488if ( !function_exists('bb_new_user') ) : 
    482 function bb_new_user( $user_login, $user_email, $user_url ) { 
     489function bb_new_user( $user_login, $user_email, $user_url, $user_status = 1 ) { 
    483490    global $bbdb; 
    484491    $user_login = sanitize_user( $user_login, true ); 
    485492    $user_email = bb_verify_email( $user_email ); 
     493 
     494    // user_status = 1 means the user has not yet been verified 
     495    $user_status = is_numeric($user_status) ? (int) $user_status : 1; 
     496    if ( defined( 'BB_INSTALLING' ) ) 
     497        $user_status = 0; 
    486498     
    487499    if ( !$user_login || !$user_email ) 
     
    501513 
    502514    $bbdb->insert( $bbdb->users, 
    503         compact( 'user_login', 'user_pass', 'user_nicename', 'user_email', 'user_url', 'user_registered' ) 
     515        compact( 'user_login', 'user_pass', 'user_nicename', 'user_email', 'user_url', 'user_registered', 'user_status' ) 
    504516    ); 
    505517     
     
    586598 
    587599    if ( empty($default) ) 
    588         $default = 'http://www.gravatar.com/avatar/ad516503a11cd5ca435acc9bb6523536?s=' . $size; 
    589         // ad516503a11cd5ca435acc9bb6523536 == md5('unknown@gravatar.com') 
     600        $default = bb_get_option('avatars_default'); 
     601 
     602    switch ($default) { 
     603        case 'logo': 
     604            $default = ''; 
     605            break; 
     606        case 'monsterid': 
     607        case 'wavatar': 
     608        case 'identicon': 
     609            break; 
     610        case 'default': 
     611        default: 
     612            $default = 'http://www.gravatar.com/avatar/ad516503a11cd5ca435acc9bb6523536?s=' . $size; 
     613            // ad516503a11cd5ca435acc9bb6523536 == md5('unknown@gravatar.com') 
     614            break; 
     615            break; 
     616    } 
     617 
     618    $src = 'http://www.gravatar.com/avatar/'; 
     619    $class = 'avatar avatar-' . $size; 
    590620 
    591621    if ( !empty($email) ) { 
    592         $src = 'http://www.gravatar.com/avatar/'; 
    593622        $src .= md5( strtolower( $email ) ); 
    594         $src .= '?s=' . $size; 
    595         $src .= '&amp;d=' . urlencode( $default ); 
    596  
    597         $rating = bb_get_option('avatars_rating'); 
    598         if ( !empty( $rating ) ) 
    599             $src .= '&amp;r=' . $rating; 
    600  
    601         $class = 'avatar avatar-' . $size; 
    602623    } else { 
    603         $src = $default; 
    604         $class = 'avatar avatar-' . $size . ' avatar-default'; 
    605     } 
     624        $src .= 'd41d8cd98f00b204e9800998ecf8427e'; 
     625        // d41d8cd98f00b204e9800998ecf8427e == md5('') 
     626        $class .= ' avatar-noemail'; 
     627    } 
     628 
     629    $src .= '?s=' . $size; 
     630    $src .= '&amp;d=' . urlencode( $default ); 
     631 
     632    $rating = bb_get_option('avatars_rating'); 
     633    if ( !empty( $rating ) ) 
     634        $src .= '&amp;r=' . $rating; 
    606635 
    607636    $avatar = '<img alt="" src="' . $src . '" class="' . $class . '" style="height:' . $size . 'px; width:' . $size . 'px;" />'; 
  • tags/0.9.0.3/bb-includes/script-loader.php

    r1492 r1844  
    55    var $printed = array(); 
    66    var $args = array(); 
     7    var $to_print = array(); 
    78 
    89    function BB_Scripts() { 
  • tags/0.9.0.3/bb-includes/template-functions.php

    r1492 r1844  
    14801480    if ( is_array( $profile_info_keys ) ) { 
    14811481        foreach ( $profile_info_keys as $key => $label ) { 
     1482            $val = 'user_url' == $key ? get_user_link( $user->ID ) : $user->$key; 
    14821483            if ( 
    14831484                ( 'user_email' != $key || ( 'user_email' == $key && bb_current_user_can( 'edit_users' ) ) ) 
    1484                 && isset($user->$key) 
    1485                 && '' !== $user->$key 
    1486                 && 'http://' != $user->$key 
     1485                && isset( $user->$key ) 
     1486                && $val 
     1487                && 'http://' != $val 
    14871488            ) { 
    14881489                echo "\t<dt>{$label[1]}</dt>\n"; 
    1489                 echo "\t<dd>" . make_clickable($user->$key) . "</dd>\n"; 
     1490                echo "\t<dd>" . make_clickable( $val ) . "</dd>\n"; 
    14901491            } 
    14911492        } 
     
    15181519        $bb_current_id = bb_get_current_user_info( 'id' ); 
    15191520        foreach ( $profile_info_keys as $key => $label ) : 
    1520             if ( 'user_email' == $key && $bb_current_id != $user->ID ) 
    1521                 continue; 
    1522  
    15231521            if ( $label[0] ) { 
    15241522                $class = 'form-field form-required required'; 
     
    15531551 
    15541552<tr class="<?php echo $class; ?>"> 
    1555     <th scope="row"><?php echo $title; ?></th> 
     1553    <th scope="row"><label for="<?php echo $name; ?>"><?php echo $title; ?></label></th> 
    15561554    <td> 
    15571555        <input name="<?php echo $name; ?>" type="<?php echo $type; ?>" id="<?php echo $name; ?>" value="<?php echo $value; ?>" /> 
     
    17201718<table> 
    17211719<tr class="<?php echo $class; ?>"> 
    1722     <th scope="row" rowspan="2"><?php _e('New password'); ?></th> 
     1720    <th scope="row" rowspan="2"><label for="pass1"><?php _e('New password'); ?></label></th> 
    17231721    <td><input name="pass1" type="password" id="pass1" autocomplete="off" /></td> 
    17241722</tr> 
  • tags/0.9.0.3/bb-settings.php

    r1492 r1844  
    5757// Define the include path 
    5858define('BB_INC', 'bb-includes/'); 
    59  
    60 // Load the database class 
    61 require( BB_PATH . BB_INC . 'db.php' ); 
    6259 
    6360// Define the language file directory 
     
    8481    require( BB_PATH . BB_INC . 'l10n.php'); 
    8582} 
     83 
     84/** 
     85 * Define the full path to the database class 
     86 */ 
     87if ( !defined('BB_DATABASE_CLASS_INCLUDE') ) 
     88    define('BB_DATABASE_CLASS_INCLUDE', BB_INC . 'db.php' ); 
     89 
     90// Load the database class 
     91if ( BB_DATABASE_CLASS_INCLUDE ) 
     92    require( BB_DATABASE_CLASS_INCLUDE ); 
    8693 
    8794if ( is_wp_error( $bbdb->set_prefix( $bb_table_prefix ) ) ) 
     
    286293 
    287294$bb->cookiepath = bb_get_option('cookiepath'); 
    288 if ( !isset( $bb->cookiepath ) ) { 
     295if ( !$bb->cookiepath ) { 
    289296    $bb->cookiepath = $bb->wp_cookies_integrated ? preg_replace('|https?://[^/]+|i', '', $bb->wp_home ) : $bb->path; 
    290297} 
    291298 
    292299$bb->sitecookiepath = bb_get_option('sitecookiepath'); 
    293 if ( !isset( $bb->sitecookiepath ) ) { 
     300if ( !$bb->sitecookiepath ) { 
    294301    $bb->sitecookiepath = $bb->wp_cookies_integrated ? preg_replace('|https?://[^/]+|i', '', $bb->wp_siteurl ) : $bb->path; 
    295302} 
  • tags/0.9.0.3/bb-templates/kakumei/login-form.php

    r1492 r1844  
    11<form class="login" method="post" action="<?php bb_option('uri'); ?>bb-login.php"> 
    2     <p><?php printf(__('<a href="%1$s">Register</a> or log in'), bb_get_option('uri').'register.php') ?>:</p> 
     2    <p><?php 
     3        printf( 
     4            __('<a href="%1$s">Register</a> or log in (<a href="%2$s">lost password?</a>):'), 
     5            bb_get_option('uri') . 'register.php', 
     6            bb_get_option('uri') . 'bb-login.php' 
     7        ); 
     8    ?></p> 
    39    <div> 
    410        <label><?php _e('Username:'); ?><br /> 
  • tags/0.9.0.3/bb-templates/kakumei/login.php

    r1492 r1844  
    1010<?php if ( $user_exists ) : ?> 
    1111    <tr valign="top"> 
    12         <th scope="row"><?php _e('Username:'); ?></th> 
    13         <td><input name="user_login" type="text" value="<?php echo $user_login; ?>" /></td> 
     12        <th scope="row"><label for="user_login"><?php _e('Username:'); ?></label></th> 
     13        <td><input name="user_login" id="user_login" type="text" value="<?php echo $user_login; ?>" /></td> 
    1414    </tr> 
    1515    <tr valign="top" class="error"> 
    16         <th scope="row"><?php _e('Password:'); ?></th> 
    17         <td><input name="password" type="password" /><br /> 
     16        <th scope="row"><label for="password"><?php _e('Password:'); ?></label></th> 
     17        <td><input name="password" id="password" type="password" /><br /> 
    1818        <?php _e('Incorrect password'); ?></td> 
    1919    </tr> 
    2020<?php elseif ( isset($_POST['user_login']) ) : ?> 
    2121    <tr valign="top" class="error"> 
    22         <th scope="row"><?php _e('Username:'); ?></th> 
    23         <td><input name="user_login" type="text" value="<?php echo $user_login; ?>" /><br /> 
     22        <th scope="row"><label for="user_login"><?php _e('Username:'); ?></label></th> 
     23        <td><input name="user_login" id="user_login" type="text" value="<?php echo $user_login; ?>" /><br /> 
    2424        <?php _e('This username does not exist.'); ?> <a href="<?php bb_option('uri'); ?>register.php?user=<?php echo $user_login; ?>"><?php _e('Register it?'); ?></a></td> 
    2525    </tr> 
    2626    <tr valign="top"> 
    27         <th scope="row"><?php _e('Password:'); ?></th> 
    28         <td><input name="password" type="password" /></td> 
     27        <th scope="row"><label for="password"><?php _e('Password:'); ?></label></th> 
     28        <td><input name="password" id="password" type="password" /></td> 
    2929    </tr> 
    3030<?php else : ?> 
    3131    <tr valign="top" class="error"> 
    32         <th scope="row"><?php _e('Username:'); ?></th> 
    33         <td><input name="user_login" type="text" /><br /> 
     32        <th scope="row"><label for="user_login"><?php _e('Username:'); ?></label></th> 
     33        <td><input name="user_login" id="user_login" type="text" /><br /> 
    3434    </tr> 
    3535    <tr valign="top"> 
    36         <th scope="row"><?php _e('Password:'); ?></th> 
    37         <td><input name="password" type="password" /></td> 
     36        <th scope="row"><label for="password"><?php _e('Password:'); ?></label></th> 
     37        <td><input name="password" id="password" type="password" /></td> 
    3838    </tr> 
    3939<?php endif; ?> 
    4040    <tr valign="top"> 
    41         <th scope="row"><?php _e('Remember me:'); ?></th> 
     41        <th scope="row"><label for="remember"><?php _e('Remember me:'); ?></label></th> 
    4242        <td><input name="remember" type="checkbox" id="remember" value="1"<?php echo $remember_checked; ?> /></td> 
    4343    </tr> 
     
    5454</form> 
    5555 
    56 <?php if ( $user_exists ) : ?> 
     56<h2 id="passwordrecovery"><?php _e( 'Password Recovery' ); ?></h2> 
    5757<form method="post" action="<?php bb_option('uri'); ?>bb-reset-password.php"> 
    5858<fieldset> 
    59     <p><?php _e('If you would like to recover the password for this account, you may use the following button to start the recovery process:'); ?></p> 
     59    <p><?php _e('To recover your password, enter your information below.'); ?></p> 
    6060    <table> 
    61         <tr> 
    62             <th></th> 
     61        <tr valign="top"> 
     62            <th scope="row"> 
     63                <label for="user_login_reset_password"><?php _e( 'Username:' ); ?></label> 
     64            </th> 
    6365            <td> 
    64                 <input name="user_login" type="hidden" value="<?php echo $user_login; ?>" /> 
     66                <input name="user_login" id="user_login_reset_password" type="text" value="<?php echo $user_login; ?>" /> 
     67            </td> 
     68        </tr> 
     69        <tr valign="top"> 
     70            <th scope="row"></th> 
     71            <td> 
    6572                <input type="submit" value="<?php echo attribute_escape( __('Recover Password &raquo;') ); ?>" /> 
    6673            </td> 
     
    6976</fieldset> 
    7077</form> 
    71 <?php endif; ?> 
    7278 
    7379<?php bb_get_footer(); ?> 
  • tags/0.9.0.3/bb-templates/kakumei/register.php

    r1492 r1844  
    1313<?php if ( $user_safe === false ) : ?> 
    1414<tr class="error"> 
    15 <th scope="row"><?php _e('Username:'); ?></th> 
     15<th scope="row"><label for="user_login"><?php _e('Username:'); ?></label></th> 
    1616<td><input name="user_login" type="text" id="user_login" size="30" maxlength="30" /><br /> 
    1717<?php _e('Your username was not valid, please try again'); ?></td> 
     
    1919<?php else : ?> 
    2020<tr class="required"> 
    21 <th scope="row"><sup class="required">*</sup> <?php _e('Username:'); ?></th> 
     21<th scope="row"><label for="user_login"><sup class="required">*</sup> <?php _e('Username:'); ?></label></th> 
    2222<td><input name="user_login" type="text" id="user_login" size="30" maxlength="30" value="<?php if (!is_bool($user_login)) echo $user_login; ?>" /></td> 
    2323</tr> 
     
    2525<?php if ( is_array($profile_info_keys) ) : foreach ( $profile_info_keys as $key => $label ) : ?> 
    2626<tr<?php if ( $label[0] ) { echo ' class="required"'; $label[1] = '<sup class="required">*</sup> ' . $label[1]; } ?>> 
    27   <th scope="row"><?php echo $label[1]; ?>:</th> 
     27  <th scope="row"><label for="<?php echo $key; ?>"><?php echo $label[1]; ?>:</label></th> 
    2828  <td><input name="<?php echo $key; ?>" type="text" id="<?php echo $key; ?>" size="30" maxlength="140" value="<?php echo $$key; ?>" /><?php 
    2929if ( $$key === false ) : 
  • tags/0.9.0.3/bb-templates/kakumei/search-form.php

    r1492 r1844  
    11<form action="<?php bb_option('uri'); ?>search.php" method="get"> 
    2     <p><?php _e('Search:'); ?> 
     2    <p> 
     3        <label for="q"><?php _e('Search:'); ?></label> 
    34        <input type="text" size="38" maxlength="100" name="q" value="<?php echo attribute_escape( $q ); ?>" /> 
    45    </p> 
  • tags/0.9.0.3/bb-templates/kakumei/style.css

    r1492 r1844  
    224224} 
    225225 
    226 #front-page #main h2, #forum-page #main h2, h2.post-form, #userlogin, #currentfavorites, #register { 
     226#front-page #main h2, #forum-page #main h2, h2.post-form, #userlogin, #currentfavorites, #register, #passwordrecovery { 
    227227    color: #333; 
    228228    border-bottom: 1px solid #ddd; 
     
    325325    border-left: 5px solid #ccc; 
    326326} 
     327 
     328#thread .post li { clear:none; } 
    327329 
    328330.poststuff { 
     
    576578    border-color: #c6d9e9; 
    577579} 
     580 
     581.hidden { 
     582    display: none; 
     583} 
  • tags/0.9.0.3/profile-edit.php

    r1492 r1844  
    77    $sendto = bb_get_option('uri'); 
    88    wp_redirect( $sendto ); 
     9    exit; 
    910} 
    1011 
     
    1415    $sendto = get_profile_tab_link( $bb_current_id, 'edit' ); 
    1516    wp_redirect( $sendto ); 
     17    exit; 
    1618} 
    1719 
     
    2527    $assignable_caps = get_assignable_caps(); 
    2628} 
    27 $updated = false; 
    28 $user_email = true; 
    2929 
    3030$errors = new WP_Error; 
     
    3535 
    3636    $user_url = bb_fix_link( $_POST['user_url'] ); 
    37     if ( isset($_POST['user_email']) && $bb_current_id == $user->ID ) 
    38         if ( !$user_email = bb_verify_email( $_POST['user_email'] ) ) 
    39             $errors->add( 'user_email', __( 'Invalid email address' ), array( 'data' => $_POST['user_email'] ) ); 
    4037 
    4138    foreach ( $profile_info_keys as $key => $label ) { 
     
    4845            $$key = false; 
    4946        } 
     47    } 
     48 
     49    // Find out if we have a valid email address 
     50    if ( !$user_email = bb_verify_email( $user_email ) ) { 
     51        $errors->add( 'user_email', __( 'Invalid email address' ), array( 'data' => $_POST['user_email'] ) ); 
    5052    } 
    5153 
     
    9395    } 
    9496 
    95     $updated = true; 
     97    if ( !$errors->get_error_codes() ) { 
     98        if ( bb_current_user_can( 'edit_user', $user->ID ) ) { 
     99            bb_update_user( $user->ID, $user_email, $user_url ); 
    96100 
    97     if ( $user_email && !$errors->get_error_codes() ) { 
    98         if ( bb_current_user_can( 'edit_user', $user->ID ) ) { 
    99             if ( is_string($user_email) && $bb_current_id == $user->ID ) { 
    100                 bb_update_user( $user->ID, $user_email, $user_url ); 
    101             } else { 
    102                 bb_update_user( $user->ID, $user->user_email, $user_url ); 
    103             } 
    104101            foreach( $profile_info_keys as $key => $label ) 
    105102                if ( strpos($key, 'user_') !== 0 ) 
     
    135132 
    136133        wp_redirect( add_query_arg( 'updated', 'true', get_user_profile_link( $user->ID ) ) ); 
    137         exit();  
     134        exit;    
    138135    } 
    139136} 
    140137 
    141 bb_load_template( 'profile-edit.php', array('profile_info_keys', 'profile_admin_keys', 'assignable_caps', 'updated', 'user_email', 'bb_roles', 'errors') ); 
     138bb_load_template( 'profile-edit.php', array('profile_info_keys', 'profile_admin_keys', 'assignable_caps', 'user_email', 'bb_roles', 'errors') ); 
    142139 
    143140?> 
Note: See TracChangeset for help on using the changeset viewer.