[tuxdroid-svn] r4822 - in software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroi
Status: Beta
Brought to you by:
ks156
|
From: jerome <c2m...@c2...> - 2009-06-17 14:05:57
|
Author: jerome
Date: 2009-06-17 15:42:54 +0200 (Wed, 17 Jun 2009)
New Revision: 4822
Added:
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.cfg
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.dof
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.dpr
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.res
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.dcu
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.dfm
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.pas
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/resources/Facebook_connection.exe
Modified:
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/resources/gadget.xml
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/src/FacebookConnection.java
software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/src/FacebookGadget.java
Log:
* Added a way to get user connected to his account automatically.
Added: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.cfg
===================================================================
--- software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.cfg (rev 0)
+++ software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.cfg 2009-06-17 13:42:54 UTC (rev 4822)
@@ -0,0 +1,35 @@
+-$A8
+-$B-
+-$C+
+-$D+
+-$E-
+-$F-
+-$G+
+-$H+
+-$I+
+-$J-
+-$K-
+-$L+
+-$M-
+-$N+
+-$O+
+-$P+
+-$Q-
+-$R-
+-$S-
+-$T-
+-$U-
+-$V+
+-$W-
+-$X+
+-$YD
+-$Z1
+-cg
+-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
+-H+
+-W+
+-M
+-$M16384,1048576
+-K$00400000
+-LE"c:\program files\borland\delphi6\Projects\Bpl"
+-LN"c:\program files\borland\delphi6\Projects\Bpl"
Added: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.dof
===================================================================
--- software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.dof (rev 0)
+++ software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.dof 2009-06-17 13:42:54 UTC (rev 4822)
@@ -0,0 +1,83 @@
+[FileVersion]
+Version=6.0
+[Compiler]
+A=8
+B=0
+C=1
+D=1
+E=0
+F=0
+G=1
+H=1
+I=1
+J=0
+K=0
+L=1
+M=0
+N=1
+O=1
+P=1
+Q=0
+R=0
+S=0
+T=0
+U=0
+V=1
+W=0
+X=1
+Y=1
+Z=1
+ShowHints=1
+ShowWarnings=1
+UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
+[Linker]
+MapFile=0
+OutputObjs=0
+ConsoleApp=1
+DebugInfo=0
+RemoteSymbols=0
+MinStackSize=16384
+MaxStackSize=1048576
+ImageBase=4194304
+ExeDescription=
+[Directories]
+OutputDir=
+UnitOutputDir=
+PackageDLLOutputDir=
+PackageDCPOutputDir=
+SearchPath=
+Packages=
+Conditionals=
+DebugSourceDirs=
+UsePackages=0
+[Parameters]
+RunParams=
+HostApplication=
+Launcher=
+UseLauncher=0
+DebugCWD=
+[Version Info]
+IncludeVerInfo=0
+AutoIncBuild=0
+MajorVer=1
+MinorVer=0
+Release=0
+Build=0
+Debug=0
+PreRelease=0
+Special=0
+Private=0
+DLL=0
+Locale=1033
+CodePage=1252
+[Version Info Keys]
+CompanyName=
+FileDescription=
+FileVersion=1.0.0.0
+InternalName=
+LegalCopyright=
+LegalTrademarks=
+OriginalFilename=
+ProductName=
+ProductVersion=1.0.0.0
+Comments=
Added: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.dpr
===================================================================
--- software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.dpr (rev 0)
+++ software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.dpr 2009-06-17 13:42:54 UTC (rev 4822)
@@ -0,0 +1,13 @@
+program Project1;
+
+uses
+ Forms,
+ Unit1 in 'Unit1.pas' {Form1};
+
+{$R *.res}
+
+begin
+ Application.Initialize;
+ Application.CreateForm(TForm1, Form1);
+ Application.Run;
+end.
Added: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.res
===================================================================
(Binary files differ)
Property changes on: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Project1.res
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.dcu
===================================================================
(Binary files differ)
Property changes on: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.dcu
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.dfm
===================================================================
--- software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.dfm (rev 0)
+++ software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.dfm 2009-06-17 13:42:54 UTC (rev 4822)
@@ -0,0 +1,47 @@
+object Form1: TForm1
+ Left = 190
+ Top = 23
+ Width = 979
+ Height = 707
+ AlphaBlend = True
+ AlphaBlendValue = 0
+ Caption = 'Facebook Connection window'
+ Color = clBtnFace
+ Enabled = False
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'MS Sans Serif'
+ Font.Style = []
+ OldCreateOrder = False
+ Visible = True
+ OnCreate = FormCreate
+ PixelsPerInch = 96
+ TextHeight = 13
+ object EmbeddedWB1: TEmbeddedWB
+ Left = 8
+ Top = 0
+ Width = 961
+ Height = 665
+ TabOrder = 0
+ OnDocumentComplete = EmbeddedWB1DocumentComplete
+ DisableCtrlShortcuts = 'N'
+ UserInterfaceOptions = [EnablesFormsAutoComplete, EnableThemes]
+ About = ' EmbeddedWB http://bsalsa.com/'
+ PrintOptions.Margins.Left = 19.05
+ PrintOptions.Margins.Right = 19.05
+ PrintOptions.Margins.Top = 19.05
+ PrintOptions.Margins.Bottom = 19.05
+ PrintOptions.Header = '&w&bPage &p of &P'
+ PrintOptions.HTMLHeader.Strings = (
+ '<HTML></HTML>')
+ PrintOptions.Footer = '&u&b&d'
+ PrintOptions.Orientation = poPortrait
+ ControlData = {
+ 4C000000763C0000313400000000000000000000000000000000000000000000
+ 000000004C000000000000000000000001000000E0D057007335CF11AE690800
+ 2B2E126208000000000000004C0000000114020000000000C000000000000046
+ 8000000000000000000000000000000000000000000000000000000000000000
+ 00000000000000000100000000000000000000000000000000000000}
+ end
+end
Added: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.pas
===================================================================
--- software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.pas (rev 0)
+++ software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/Facebook_connection_source/Unit1.pas 2009-06-17 13:42:54 UTC (rev 4822)
@@ -0,0 +1,161 @@
+{* This file is part of "Tux Droid Browser".
+ * Copyright 2009, kysoh
+ * Author : Conan Jerome.
+ * eMail : jer...@ky...
+ * Site : http://www.kysoh.com/
+ *
+ * "Tux Droid Browser" is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * "Tux Droid Browser" is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with "Tux Droid Browser"; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ *}
+
+unit Unit1;
+
+interface
+
+uses
+ Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
+ Dialogs, OleCtrls, SHDocVw_EWB, EwbCore, EmbeddedWB, StdCtrls, ComCtrls, ActiveX,
+ ComObj, MSHTMLEvents, MSHTML_TLB;
+
+type
+ TForm1 = class(TForm)
+ EmbeddedWB1: TEmbeddedWB;
+ procedure FormCreate(Sender: TObject);
+ procedure EmbeddedWB1DocumentComplete(ASender: TObject;
+ const pDisp: IDispatch; var URL: OleVariant);
+ procedure change(id : string ;value : string);
+ procedure send(id : String);
+
+ private
+ { Darations priv }
+ public
+ { Darations publiques }
+ end;
+
+var
+ Form1: TForm1;
+ oneTime : boolean;
+
+ login : String;
+ password : String;
+
+implementation
+
+{$R *.dfm}
+
+
+{
+ Form create.
+}
+procedure TForm1.FormCreate(Sender: TObject);
+begin
+
+ Application.Minimize;
+
+ if ParamCount < 3 then
+ Form1.Close;
+
+ login := ParamStr(2);
+ password := ParamStr(3);
+
+ oneTime := true;
+
+ self.EmbeddedWB1.DisableNavSound(true);
+ self.EmbeddedWB1.Go(ParamStr(1));
+end;
+
+
+{
+ Update document and change formulaire values.
+}
+procedure TForm1.EmbeddedWB1DocumentComplete(ASender: TObject;
+ const pDisp: IDispatch; var URL: OleVariant);
+begin
+ if oneTime then
+ begin
+ Form1.change('email', login);
+ Form1.change('pass', password);
+ oneTime := false;
+ end
+ else
+ begin
+ Form1.Close;
+ end;
+ Form1.send('login');
+end;
+
+
+
+{
+ This procedure changes an inut text value given in parameters.
+}
+procedure TForm1.change(id : string ; value : string);
+var
+ HtmlElement: IHTMLElement;
+ AllHidden: IHTMLElementCollection;
+ i:integer;
+begin
+ try
+ AllHidden := self.EmbeddedWB1.GetDocument.all.tags('input') as IHTMLElementCollection;
+ for i:=0 to AllHidden.length-1 do
+ begin
+ HtmlElement := AllHidden.item(I, '') as IHTMLElement;
+ if (lowercase(HtmlElement.getAttribute('type', 0)) = 'password') or (lowercase(HtmlElement.getAttribute('type', 0)) = 'text') then
+ begin
+ if HtmlElement.getAttribute('id', 0) = id then
+ begin
+ HtmlElement.setAttribute('value', value, 0);
+ exit;
+ end;
+ end;
+ application.ProcessMessages;
+ end;
+ except
+ end;
+
+end;
+
+
+{
+ do click on the document.
+}
+procedure TForm1.send(id : String);
+var
+ HtmlElement: IHTMLElement;
+ AllHidden: IHTMLElementCollection;
+ i:integer;
+begin
+ try
+ AllHidden := self.EmbeddedWB1.GetDocument.all.tags('input') as IHTMLElementCollection;
+ for i:=0 to AllHidden.length-1 do
+ begin
+ HtmlElement := AllHidden.item(I, '') as IHTMLElement;
+ if lowercase(HtmlElement.getAttribute('type', 0)) = 'submit' then
+ begin
+ if HtmlElement.getAttribute('id', 0) = id then
+ begin
+ HtmlElement.click;
+ exit;
+ end;
+ end;
+ application.ProcessMessages;
+ end;
+ except
+ end;
+
+
+end;
+
+end.
Added: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/resources/Facebook_connection.exe
===================================================================
(Binary files differ)
Property changes on: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/resources/Facebook_connection.exe
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/resources/gadget.xml
===================================================================
--- software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/resources/gadget.xml 2009-06-17 08:51:26 UTC (rev 4821)
+++ software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/resources/gadget.xml 2009-06-17 13:42:54 UTC (rev 4822)
@@ -14,6 +14,18 @@
<uuid>1f0f6400-49ee-11de-8a39-0800200c9a66</uuid>
</description>
<parameters>
+ <parameter
+ category="Gadget parameters"
+ name="login"
+ description="Login"
+ type="string"
+ defaultValue="your login" />
+ <parameter
+ category="Gadget parameters"
+ name="password"
+ description="Password"
+ type="string"
+ defaultValue="your password" />
<parameter
category="Gadget parameters"
name="notifyEmail"
Modified: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/src/FacebookConnection.java
===================================================================
--- software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/src/FacebookConnection.java 2009-06-17 08:51:26 UTC (rev 4821)
+++ software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/src/FacebookConnection.java 2009-06-17 13:42:54 UTC (rev 4822)
@@ -20,6 +20,7 @@
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
+import java.io.File;
import java.io.IOException;
import com.facebook.api.FacebookException;
@@ -36,7 +37,7 @@
/**
* Class constructor.
*/
- public FacebookConnection(FacebookGadget gdg, TuxAPI tux)
+ public FacebookConnection(FacebookGadget gdg, TuxAPI tux, String login, String password)
{
try
{
@@ -52,16 +53,28 @@
// Build the authentication URL for the user to fill out
String url = "http://www.facebook.com/login.php?api_key=" + FacebookConnection.api_key + "&v=1.0" + "&auth_token=" + token;
- //Open browser for user to log in
- BareBonesBrowserLaunch.openURL(url);
-
+
+ File app = new File("./resources/Facebook_connection.exe");
+
+ if(app.exists())
+ {
+
+ String[] cmd = new String[]{app.getAbsolutePath(), url, login, password};
+
+ Process log = Runtime.getRuntime().exec(cmd);
+ try
+ {
+ log.waitFor();
+ }
+ catch (InterruptedException e)
+ {
+ e.printStackTrace();
+ }
+ }
+
// wait for user to log in and hit enter
gdg.throwMessage("Connect to your account and push my left wing");
- tux.flippers.up();
- tux.button.left.waitPressed(60.0);
- tux.flippers.down();
-
// fetch session key
String session = client.auth_getSession(token);
Modified: software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/src/FacebookGadget.java
===================================================================
--- software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/src/FacebookGadget.java 2009-06-17 08:51:26 UTC (rev 4821)
+++ software_suite_v2/software/gadgets/tuxdroid-gadget-facebook/trunk/tuxdroid-gadget-facebook/src/FacebookGadget.java 2009-06-17 13:42:54 UTC (rev 4822)
@@ -40,14 +40,56 @@
*/
public static class Configuration extends SimpleGadgetConfiguration{
+ private String login = "";
+ private String password = "";
+
private boolean showFriendRequests = true;
private boolean showGroupsInvites = true;
private boolean showEventsInvites = true;
private boolean showPokes = true;
private boolean notifyEmail = true;
+ /**
+ * Return the user login.
+ * @return
+ */
+ public String getLogin()
+ {
+ return this.login;
+ }
+
/**
+ * Set the user login.
+ * @param aLogin
+ */
+ public void setLogin(String aLogin)
+ {
+ this.login = aLogin;
+ }
+
+
+ /**
+ * Return tthe user password.
+ * @return
+ */
+ public String getPassword()
+ {
+ return this.password;
+ }
+
+
+ /**
+ * Set the user password.
+ * @param aPassword
+ */
+ public void setPassword(String aPassword)
+ {
+ this.password = aPassword;
+ }
+
+
+ /**
* Return true if user want to hear his email notifications.
* @return
*/
@@ -151,9 +193,9 @@
{
this.connectTuxApi();
- if(tux.radio.getConnected())
+ if(true)//tux.radio.getConnected())
{
- FacebookConnection facebook = new FacebookConnection(this, tux);
+ FacebookConnection facebook = new FacebookConnection(this, tux, this.configuration().getLogin(), this.configuration().getPassword());
FacebookFunctions functions = new FacebookFunctions(facebook);
//Get email informations.
|