Wednesday, December 18, 2013

My Opera Settings

#cs ------------------------------------------------------

 AutoIt Version:  3.3.6.x or higher
 Author:          Sam
 Script Function: My Opera Settings
 Requirements:    i) Opera ( Version <= 12.15 )
                     (http://www.opera.com)
                  ii) AutoIt For Compiling/Running this
     (http://www.autoitscript.com)
     or edit settings file manually
 License:         GNU General Public License, version 3
                  (GPL-3.0) (http://www.gnu.org/licenses)
#ce ------------------------------------------------------

#include <Date.au3>

Main()

Func Main()

Opera_Settings()

Opera_Settings_New()

EndFunc

Func Opera_Settings()

Local $settings_ini_path = @AppDataDir & "\Opera\Opera\operaprefs.ini"

If Not FileExists($settings_ini_path) Then Return 0

Opera_GeoLocation($settings_ini_path, "0")

EndFunc

Func Opera_GeoLocation($settings_ini_path, $val)

IniWrite($settings_ini_path, "Geolocation", "Enable geolocation", $val)

EndFunc

Func Opera_Settings_New()

Local $FileVersion = ""

If Check_Opera_Version($FileVersion) = "12" Then Opera12_Settings($FileVersion)

Return

EndFunc

Func Check_Opera_Version(ByRef $FileVersion)

$FileVersion = @ProgramFilesDir & "\Opera\Opera.exe"

If Not FileExists($FileVersion) Then Return 0

$FileVersion = FileGetVersion($FileVersion)

If $FileVersion = "0.0.0.0" Or $FileVersion = "" Then Return 0

Return StringLeft($FileVersion, 2)

EndFunc

Func Opera12_Settings($FileVersion)

Local Const $settings_ini_path = @AppDataDir & "\Opera\Opera\operaprefs.ini"

;;;; No Update

IniWrite($settings_ini_path, "User Prefs", "Level Of Update Automation", "0")


;;;; Enable SSL v3

IniWrite($settings_ini_path, "Security Prefs", "Enable SSL v3", "1")


;;;; Enable TLS 1.0, 1.1 & 1.2

IniWrite($settings_ini_path, "Security Prefs", "Enable TLS v1.0", "1")

IniWrite($settings_ini_path, "Security Prefs", "Enable TLS v1.1", "1")

IniWrite($settings_ini_path, "Security Prefs", "Enable TLS v1.2", "1")


;;;; For Clearing Everything Except Plugin Data (To Avoid Internal Communication Error)

IniWrite($settings_ini_path, "Clear Private Data Dialog", "CheckFlags", "515583")


;;;; Do Not Track

IniWrite($settings_ini_path, "Network", "Enable Do Not Track Header", "1")


;;;; No Password Manager

IniWrite($settings_ini_path, "User Prefs", "Enable Wand", "0")

IniWrite($settings_ini_path, "Security Prefs", "Password Lifetime", "0") ;0 or 5


;;;; Delete/Modify Old Data

IniDelete($settings_ini_path, "State", "Upgrade Count")

IniDelete($settings_ini_path, "State", "Upgrade From Version")


IniWrite($settings_ini_path, "Install", "First Used Version", $FileVersion)

IniWrite($settings_ini_path, "Install", "First Run Timestamp", _DateDiff( 's',"1970/01/01 00:00:00", _NowCalc()) )


Opera12_Settings_v1($settings_ini_path)

EndFunc

Func Opera12_Settings_v1($settings_ini_path)

;;;; Disable Sounds

IniWrite($settings_ini_path, "Sounds", "Enabled", "0")


;;;; Enable Site Only Cookies

IniWrite($settings_ini_path, "User Prefs", "Enable Cookies", "3")


;;;; Set TLD

IniWrite($settings_ini_path, "User Prefs", "Google TLD Downloaded", "1")

IniWrite($settings_ini_path, "User Prefs", "Google TLD Default", ".google.com")


;;;; Set UpTime

IniWrite($settings_ini_path, "State", "Total Uptime", "0")


;;;; Set Open Path

IniWrite($settings_ini_path, "Saved Settings", "Open Dir", @MyDocumentsDir)


;;;; Enable On Demand Plugin

IniWrite($settings_ini_path, "User Prefs", "Enable On Demand Plugin", "1")


;;;; Disable Notifications For Widgets

IniWrite($settings_ini_path, "User Prefs", "Show Notifications For Widgets", "0")


Opera12_Settings_v1_1($settings_ini_path)

EndFunc

Func Opera12_Settings_v1_1($settings_ini_path)

;;;; No Referrer

IniWrite($settings_ini_path, "User Prefs", "Enable Referrer", "0")

;;;; No Thumbnails Inside Tabs

IniWrite($settings_ini_path, "User Prefs", "Use Thumbnails Inside Tabs", "0")

;;;; No Notification For New Messages

IniWrite($settings_ini_path, "User Prefs", "Show Notification For New Messages", "0")

;;;; Ask For Application Cache Usage

IniWrite($settings_ini_path, "User Prefs", "Strategy On Application Cache", "0")

;;;; Disable weekly check for new updates

IniWrite($settings_ini_path, "User Prefs", "Check For New Opera", "0")

;;;; Disable Opera Package AutoUpdate

IniWrite($settings_ini_path, "User Prefs", "Disable Opera Package AutoUpdate", "1")

;;;;; No Sound In Webpages

IniWrite($settings_ini_path, "Multimedia", "Play Background Sound", "0")


;;;; No Checking of Cached Pages

IniWrite($settings_ini_path, "Disk Cache", "Docs Modification", "0")

IniWrite($settings_ini_path, "Disk Cache", "Figs Modification", "0")

IniWrite($settings_ini_path, "Disk Cache", "Other Modification", "0")


;;;; Remove/Change GeoLocation URL

IniDelete($settings_ini_path, "Geolocation", "Location Provider URL")


;;;; Warn User

IniWrite($settings_ini_path, "Security Prefs", "Warn About Imported CA Certificates", "1")


Opera12_Settings_v1_10($settings_ini_path)

EndFunc

Func Opera12_Settings_v1_10($settings_ini_path)

;;;;; Set Paint / Redraw Time ( 1 / 1.5 / 2 )

IniWrite($settings_ini_path, "User Prefs", "First Update Delay", "1000")


;;;; Disable Usage Statistics

IniWrite($settings_ini_path, "User Prefs", "Enable Usage Statistics", "0")


;;;; Modify TLD URL

IniWrite($settings_ini_path, "User Prefs", "Google TLD URL", "")


;;;; Disable Opera Favicons

IniWrite($settings_ini_path, "Multimedia", "Always load favicon", "0")


;;;; Set Startup Timestamp

IniWrite($settings_ini_path, "State", "Startup Timestamp", _DateDiff( 's', "1970/01/01 00:00:00", _NowCalc()) )


SetFileOptions($settings_ini_path)


Opera_Standard_Toolbar_New()

EndFunc

Func Opera_Standard_Toolbar_New() ;;;; For Opera Version >= 12.10

Local $settings_ini_path, $a = ""

If OperaGetSTPath($settings_ini_path) = 0 Then GetCommonData($a)

CheckSection($settings_ini_path)

Return WriteData($settings_ini_path, CreateData_New($a))

EndFunc

Func CreateData_New($a)

$a &= @CRLF & "[Document Toolbar.content]" & @CRLF

$a &= "NamedButton0, tbb_Back, -847360260=" & '"' & "Back + Show hidden popup menu, " & '"' & "Back Menu" & '"' & '"'& @CRLF

$a &= "NamedButton1, tbb_Forward, 830055518=" & '"' & "Forward + Show hidden popup menu, " & '"' & "Internal Forward History" & '"' & '"'& @CRLF

$a &= "NamedButton2, tbb_Stop_Reload, -1393253531=Stop | Reload, , , -1705826954" & @CRLF

$a &= "NamedAddress4, tba_address_field" & @CRLF

$a &= "ExtensionSet5" & @CRLF

Return $a

EndFunc

Func Opera_Standard_Toolbar_Old() ;;;; For Opera Version < 12.10

Local $settings_ini_path, $a = ""

If OperaGetSTPath($settings_ini_path) = 0 Then GetCommonData($a)

CheckSection($settings_ini_path)

Return WriteData($settings_ini_path, CreateData_Old($a))

EndFunc

Func GetCommonData(ByRef $a)

$a = "Opera Preferences version 2.1" & @CRLF

$a &= "; Do not edit this file while Opera is running" & @CRLF

$a &= "; This file is stored in UTF-8 encoding" & @CRLF

EndFunc

Func OperaGetSTPath(ByRef $settings_ini_path)

$settings_ini_path = @AppDataDir & "\Opera\Opera\toolbar\standard_toolbar.ini"

If Not FileExists($settings_ini_path) Then Return 0

Return 1

EndFunc

Func CheckSection($settings_ini_path)

Local $b = IniReadSection($settings_ini_path, "Document Toolbar.content")

If IsArray($b) = 1 Then IniDelete($settings_ini_path, "Document Toolbar.content")

EndFunc

Func CreateData_Old($a)

$a &= @CRLF & "[Document Toolbar.content]" & @CRLF

$a &= "ButtonSet, Combined Back Forward" & @CRLF

$a &= "Address4" & @CRLF

$a &= "ExtensionSet5" & @CRLF

Return $a

EndFunc

Func WriteData($settings_ini_path, $a)

If Not FileExists($settings_ini_path) Then ;;;; UTF 8 ( With BOM ) + Append + Create Directory

Local $file = FileOpen($settings_ini_path, 128 + 1 + 8)

Else ;;;; UTF 8 ( With BOM ) + Append

Local $file = FileOpen($settings_ini_path, FileGetEncoding($settings_ini_path) + 1)

EndIf

If $file = -1 Then Return

FileWriteLine($settings_ini_path, $a)

FileClose($file)

Return 1

EndFunc

Func SetFileOptions($settings_ini_path)

Local $Section, $value, $Key

; Pdf Options

$Section = "File Types"

$Key = "application/pdf"

$value = IniRead($settings_ini_path, $Section, $Key, "")

If $value = "" Then

$value = "1,,,,pdf,|"

Else

$value = StringTrimLeft($value, 1)

$value = "1" & $value

EndIf

IniWrite($settings_ini_path, $Section, $Key, $value)


$Section = "File Types Extension"

$Key = "application/pdf"

$value = ",128"

IniWrite($settings_ini_path, $Section, $Key, $value)

EndFunc   ;==>SetFileOptions

; Created By Sam