Merge commit 'ooo/OOO330_m10'
This commit is contained in:
@@ -53,7 +53,7 @@
|
||||
<!-- build options -->
|
||||
<property name="sourcelevel" value="1.4"/>
|
||||
<property name="verbose" value="false"/>
|
||||
<property name="debug" value="true"/>
|
||||
<property name="debug" value="${antdebug}"/>
|
||||
|
||||
<!-- build classpath -->
|
||||
<path id="classpath">
|
||||
@@ -75,7 +75,7 @@
|
||||
</target>
|
||||
|
||||
<target name="compile" depends="init">
|
||||
<javac debug="${debug}" destdir="${classes}" classpathref="classpath"
|
||||
<javac debug="${debug}" debuglevel="lines,vars,source" destdir="${classes}" classpathref="classpath"
|
||||
source="${sourcelevel}" verbose="${verbose}">
|
||||
<src path="src"/>
|
||||
</javac>
|
||||
|
@@ -41,7 +41,13 @@ COMMONS_LOGGING_JAR=$(SOLARVER)$/$(INPATH)$/bin$(UPDMINOREXT)$/commons-logging-1
|
||||
COMP=fix_system_commons
|
||||
.ENDIF
|
||||
|
||||
ANT_FLAGS+=-Dcommons-codec-jar=$(COMMONS_CODEC_JAR) -Dcommons-lang-jar=$(COMMONS_LANG_JAR) -Dcommons-httpclient-jar=$(COMMONS_HTTPCLIENT_JAR) -Dcommons-logging-jar=$(COMMONS_LOGGING_JAR)
|
||||
.IF defined(debug) || defined(DEBUG)
|
||||
ANTDEBUG=true
|
||||
.ELSE
|
||||
ANTDEBUG=off
|
||||
.ENDIF
|
||||
|
||||
ANT_FLAGS+=-Dcommons-codec-jar=$(COMMONS_CODEC_JAR) -Dcommons-lang-jar=$(COMMONS_LANG_JAR) -Dcommons-httpclient-jar=$(COMMONS_HTTPCLIENT_JAR) -Dcommons-logging-jar=$(COMMONS_LOGGING_JAR) -Dantdebug=$(ANTDEBUG)
|
||||
|
||||
# creates two files wiki-publisher.oxt and mediawiki_develop.zip, the second one might be used in further build process
|
||||
ALLTAR: $(COMP) ANTBUILD
|
||||
|
@@ -35,6 +35,7 @@ public class EditPageParser extends HTMLEditorKit.ParserCallback
|
||||
|
||||
protected String m_sEditTime = "";
|
||||
protected String m_sEditToken = "";
|
||||
protected String m_sLoginToken = "";
|
||||
protected String m_sMainURL = "";
|
||||
|
||||
private int m_nWikiArticleHash = 0;
|
||||
@@ -100,6 +101,10 @@ public class EditPageParser extends HTMLEditorKit.ParserCallback
|
||||
{
|
||||
this.m_sEditToken = ( String ) a.getAttribute( HTML.Attribute.VALUE );
|
||||
}
|
||||
else if ( sName.equalsIgnoreCase( "wpLoginToken" ) )
|
||||
{
|
||||
this.m_sLoginToken = ( String ) a.getAttribute( HTML.Attribute.VALUE );
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -784,6 +784,29 @@ public class Helper
|
||||
return bResult;
|
||||
}
|
||||
|
||||
static protected String GetLoginToken( String sLoginPage )
|
||||
{
|
||||
String sResult = "";
|
||||
if ( sLoginPage != null && sLoginPage.length() > 0 )
|
||||
{
|
||||
try
|
||||
{
|
||||
StringReader aReader = new StringReader( sLoginPage );
|
||||
HTMLEditorKit.Parser aParser = Helper.GetHTMLParser();
|
||||
EditPageParser aCallbacks = new EditPageParser();
|
||||
|
||||
aParser.parse( aReader, aCallbacks, true );
|
||||
sResult = aCallbacks.m_sLoginToken;
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
return sResult;
|
||||
}
|
||||
|
||||
static protected HostConfiguration Login( URI aMainURL, String sWikiUser, String sWikiPass, XComponentContext xContext )
|
||||
throws com.sun.star.uno.Exception, java.io.IOException, WikiCancelException
|
||||
{
|
||||
@@ -799,10 +822,16 @@ public class Helper
|
||||
ExecuteMethod( aGetCookie, aNewHostConfig, aURI, xContext, true );
|
||||
|
||||
int nResultCode = aGetCookie.getStatusCode();
|
||||
String sLoginPage = null;
|
||||
if ( nResultCode == 200 )
|
||||
sLoginPage = aGetCookie.getResponseBodyAsString();
|
||||
|
||||
aGetCookie.releaseConnection();
|
||||
|
||||
if ( nResultCode == 200 )
|
||||
if ( sLoginPage != null )
|
||||
{
|
||||
String sLoginToken = GetLoginToken( sLoginPage );
|
||||
|
||||
PostMethod aPost = new PostMethod();
|
||||
URI aPostURI = new URI( aMainURL.getPath() + "index.php?title=Special:Userlogin&action=submitlogin" );
|
||||
aPost.setPath( aPostURI.getEscapedPathQuery() );
|
||||
@@ -810,6 +839,9 @@ public class Helper
|
||||
aPost.addParameter( "wpName", sWikiUser );
|
||||
aPost.addParameter( "wpRemember", "1" );
|
||||
aPost.addParameter( "wpPassword", sWikiPass );
|
||||
if ( sLoginToken.length() > 0 )
|
||||
aPost.addParameter( "wpLoginToken", sLoginToken );
|
||||
|
||||
String[][] pArgs = GetSpecialArgs( xContext, aMainURL.getHost() );
|
||||
if ( pArgs != null )
|
||||
for ( int nArgInd = 0; nArgInd < pArgs.length; nArgInd++ )
|
||||
|
@@ -145,6 +145,8 @@ public class WikiArticle
|
||||
if ( nResultCode == 200 )
|
||||
sWebPage = aRequest.getResponseBodyAsString();
|
||||
|
||||
aRequest.releaseConnection();
|
||||
|
||||
if ( sWebPage != null )
|
||||
{
|
||||
StringReader r = new StringReader(sWebPage);
|
||||
|
Reference in New Issue
Block a user