Password encryption should finally work now. Updates to
authorLee Daniel Crocker <lcrocker@users.mediawiki.org>
Wed, 30 Apr 2003 21:52:53 +0000 (21:52 +0000)
committerLee Daniel Crocker <lcrocker@users.mediawiki.org>
Wed, 30 Apr 2003 21:52:53 +0000 (21:52 +0000)
user login and testsuite.

includes/SpecialUserlogin.php
includes/User.php
install.php
testsuite/src/com/piclab/wikitest/EditTest.java
testsuite/src/com/piclab/wikitest/LinkTest.java
testsuite/src/com/piclab/wikitest/WikiTest.java

index 803cafd..806ba79 100644 (file)
@@ -216,40 +216,40 @@ color='red'>$err</font>\n" );
        $wpEmail = wfEscapeHTML( $wpEmail );
 
        $wgOut->addHTML( "
-<form name='userlogin' method=post action=\"{$action}\">
+<form id=\"userlogin\" method=\"post\" action=\"{$action}\">
 <table border=0><tr>
 <td align=right>$yn:</td>
 <td colspan=2 align=left>
-<input tabindex=1 type=text name='wpName' value=\"{$name}\" size=20>
+<input tabindex=1 type=text name=\"wpName\" value=\"{$name}\" size=20>
 </td></tr><tr>
 <td align=right>$yp:</td>
 <td align=left>
-<input tabindex=2 type=password name='wpPassword' value=\"{$pwd}\" size=20>
+<input tabindex=2 type=password name=\"wpPassword\" value=\"{$pwd}\" size=20>
 </td>
 <td align=left>
-<input tabindex=3 type=submit name='wpLoginattempt' value=\"{$li}\">
+<input tabindex=3 type=submit name=\"wpLoginattempt\" value=\"{$li}\">
 </td></tr>
 <tr><td colspan=3>&nbsp;</td></tr><tr>
 <td align=right>$ypa:</td>
 <td align=left>
-<input tabindex=4 type=password name='wpRetype' value=\"{$wpRetype}\" 
+<input tabindex=4 type=password name=\"wpRetype\" value=\"{$wpRetype}\" 
 size=20>
 </td><td>$nuo</td></tr>
 <tr>
 <td align=right>$ye:</td>
 <td align=left>
-<input tabindex=5 type=text name='wpEmail' value=\"{$wpEmail}\" size=20>
+<input tabindex=5 type=text name=\"wpEmail\" value=\"{$wpEmail}\" size=20>
 </td><td align=left>
-<input tabindex=6 type=submit name='wpCreateaccount' value=\"{$ca}\">
+<input tabindex=6 type=submit name=\"wpCreateaccount\" value=\"{$ca}\">
 </td></tr>
 <tr>
 <td colspan=3 align=left>
-<input tabindex=7 type=checkbox name='wpRemember' value='1'$checked>$rmp
+<input tabindex=7 type=checkbox name=\"wpRemember\" value=\"1\"$checked>$rmp
 </td></tr>
 <tr><td colspan=3>&nbsp;</td></tr><tr>
 <td colspan=3 align=left>
 <p>$efl<br>
-<input tabindex=8 type=submit name='wpMailmypassword' value=\"{$mmp}\">
+<input tabindex=8 type=submit name=\"wpMailmypassword\" value=\"{$mmp}\">
 </td></tr></table>
 </form>\n" );
 }
index bfc369a..f08ab8b 100644 (file)
@@ -53,8 +53,6 @@ class User {
 
        }
 
-
-
        /* static */ function randomPassword()
        {
                $pwchars = "ABCDEFGHJKLMNPQRSTUVWXYZabcdefghjkmnpqrstuvwxyz";
@@ -163,7 +161,7 @@ class User {
                        $passwordCorrect = $wsUserPassword == $this->mPassword;
                } else if ( isset( $HTTP_COOKIE_VARS["wcUserPassword"] ) ) {
                        $this->mCookiePassword = $HTTP_COOKIE_VARS["wcUserPassword"];
-                       $wsUserPassword = User::addSalt($this->mCookiePassword);
+                       $wsUserPassword = $this->addSalt( $this->mCookiePassword );
                        $passwordCorrect = $wsUserPassword == $this->mPassword;
                } else {
                        $this->mId = 0;
@@ -284,14 +282,14 @@ class User {
 
        function encryptPassword( $p )
        {
-               return User::addSalt( md5( $p ) );
+               return $this->addSalt( md5( $p ) );
        }
 
        function setPassword( $str )
        {
                $this->loadFromDatabase();
                $this->setCookiePassword( $str );
-               $this->mPassword = User::encryptPassword( $str );
+               $this->mPassword = $this->encryptPassword( $str );
                $this->mNewpassword = "";
        }
 
@@ -304,7 +302,7 @@ class User {
        function setNewpassword( $str )
        {
                $this->loadFromDatabase();
-               $this->mNewpassword = User::encryptPassword( $str );
+               $this->mNewpassword = $this->encryptPassword( $str );
        }
 
        function getEmail()
@@ -342,6 +340,13 @@ class User {
                return $this->mRights;
        }
 
+       function addRight( $rname )
+       {
+               $this->loadFromDatabase();
+               array_push( $this->mRights, $rname );
+               $this->invalidateCache();
+       }
+
        function isSysop()
        {
                $this->loadFromDatabase();
@@ -479,20 +484,15 @@ class User {
        {
                global $wgUser;
 
-               if(!$this->mNewtalk) {
-
-                       if($this->mId) {
+               if ( ! $this->mNewtalk ) {
+                       if( $this->mId ) {
                                $sql="DELETE FROM user_newtalk WHERE user_id={$this->mId}";
                                wfQuery ($sql,"User::saveSettings");
                        } else {
-
-
                                $sql="DELETE FROM user_newtalk WHERE user_ip='{$this->mName}'";
                                wfQuery ($sql,"User::saveSettings");
-
                        }
                }
-
                if ( 0 == $this->mId ) { return; }
 
                $sql = "UPDATE user SET " .
index bb364dd..333c433 100644 (file)
@@ -246,11 +246,21 @@ function populatedata() {
        $sql = "DELETE FROM user";
        wfQuery( $sql, $fname );
 
-       $sql = "INSERT INTO user (user_name, user_password, user_rights)" .
-         "VALUES ('WikiSysop','" . User::encryptPassword( $wgDBadminpassword ) .
-         "','sysop'),('WikiDeveloper','" . User::encryptPassword(
-         $wgDBadminpassword ) . "','sysop,developer')";
-       wfQuery( $sql, $fname );
+       $u = User::newFromName( "WikiSysop" );
+       if ( 0 == $u->idForName() ) {
+               $u->addToDatabase();
+               $u->setPassword( $wgDBadminpassword );
+               $u->addRight( "sysop" );
+               $u->saveSettings();
+       }
+       $u = User::newFromName( "WikiDeveloper" );
+       if ( 0 == $u->idForName() ) {
+               $u->addToDatabase();
+               $u->setPassword( $wgDBadminpassword );
+               $u->addRight( "sysop" );
+               $u->addRight( "developer" );
+               $u->saveSettings();
+       }
        
        $wns = Namespace::getWikipedia();
        $ulp = addslashes( wfMsg( "uploadlogpage" ) );
index 62819c2..37fca73 100644 (file)
@@ -135,7 +135,7 @@ private int part3() throws Exception {
        if ( text.indexOf( "sucks" ) < 0 ) { return 304; }
        if ( text.indexOf( "doesn't" ) < 0 ) { return 305; }
 
-       WebLink l = wr.getFirstMatchingLink( WebLink.MATCH_CONTAINED_TEXT, "Older versions" );
+       WebLink l = wr.getFirstMatchingLink( WebLink.MATCH_CONTAINED_TEXT, "Page history" );
        wr = l.click();
        text = getArticle( wr );
        if ( text.indexOf( "Fred" ) < 0 ) { return 306; }
index afd0535..1cff225 100644 (file)
@@ -93,7 +93,7 @@ private int part3() throws Exception {
     wr = getResponse( req );
 
        l = wr.getFirstMatchingLink( WebLink.MATCH_CONTAINED_TEXT, "View article" );
-       l = wr.getFirstMatchingLink( WebLink.MATCH_CONTAINED_TEXT, "Older versions" );
+       l = wr.getFirstMatchingLink( WebLink.MATCH_CONTAINED_TEXT, "Page history" );
        if ( l == null ) { return 302; }
        wr = l.click();
 
index 78ac12e..7d01c48 100644 (file)
@@ -263,7 +263,6 @@ throws WikiSuiteFailureException {
        String msg = null;
        WebForm[] forms = null;
 
-
        try {
                forms = resp.getForms();
        } catch ( org.xml.sax.SAXException e ) {