Skip to content

Commit

Permalink
Fixed bug that prevented DB from being updated in Windows. Added supp…
Browse files Browse the repository at this point in the history
…ort for Updates texts.
  • Loading branch information
Tirino committed Nov 24, 2011
1 parent 37e0ac7 commit f505ee2
Show file tree
Hide file tree
Showing 8 changed files with 60 additions and 23 deletions.
2 changes: 1 addition & 1 deletion app.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<application xmlns="http://ns.adobe.com/air/application/2.6">
<id>freevana.freevanaPlayer</id>
<versionNumber>1.1</versionNumber>
<versionNumber>1.1.1</versionNumber>
<filename>FreevanaPlayer</filename>
<name>Freevana Player</name>
<description>Freevana Player</description>
Expand Down
22 changes: 15 additions & 7 deletions freevanaPlayer.mxml
Original file line number Diff line number Diff line change
Expand Up @@ -103,13 +103,13 @@
if (!databaseBtn.enabled) {
databaseBtn.enabled = true;
databaseBtn.addEventListener(MouseEvent.CLICK, function(ev:Event):void {
resources.copyDB(function ():void {
_db = new FreevanaDB(Resources.DATABASE_FILE_PATH);
databaseLbl.text = _db.getVersionName();
databaseError.text = "";
settingsStartBtn.enabled = true;
_settings.markSetupCompleted();
});
resources.copyDB(function ():void {
_db = new FreevanaDB(Resources.DATABASE_FILE_PATH);
databaseLbl.text = _db.getVersionName();
databaseError.text = "";
settingsStartBtn.enabled = true;
_settings.markSetupCompleted();
});
});
}
Expand Down Expand Up @@ -325,6 +325,10 @@
(_updateData[Updates.PLAYER] != _settings.getLastUpdateShown())) {
var _title:String = resourceManager.getString('Strings', 'UPDATES_NEW_PLAYER_VERSION') + ': ' + _updateData[Updates.PLAYER];
var _text:String = resourceManager.getString('Strings', 'UPDATES_DOWNLOAD_NEW_PLAYER');
// Add extra text if it's available
if (typeof _updateData[Updates.PLAYER_TEXT] != 'undefined') {
_text += "\n" + _updateData[Updates.PLAYER_TEXT];
}
Alert.show(_text, _title, Alert.YES|Alert.NO, null, function(ev:*):void {
if (ev.detail == Alert.YES) {
navigateToURL(new URLRequest(_updateData[Updates.PLAYER_LINK]));
Expand All @@ -347,6 +351,10 @@
(_updateData[Updates.DATABASE] != _settings.getLastDBUpdateShown())) {
var _title:String = resourceManager.getString('Strings', 'UPDATES_NEW_DATABASE_VERSION') + ': ' + _updateData[Updates.DATABASE];
var _text:String = resourceManager.getString('Strings', 'UPDATES_DOWNLOAD_NEW_DATABASE');
// Add extra text if it's available
if (typeof _updateData[Updates.DATABASE_TEXT] != 'undefined') {
_text += "\n" + _updateData[Updates.DATABASE_TEXT];
}
Alert.show(_text, _title, Alert.YES|Alert.NO, null, function(ev:*):void {
if (ev.detail == Alert.YES) {
navigateToURL(new URLRequest(_updateData[Updates.DATABASE_LINK]));
Expand Down
6 changes: 3 additions & 3 deletions locale/en_US/Strings.properties
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ SETTINGS_DATABASE_INFO=In order yo use Freevana Player you need to get a copy of
SETTINGS_DATABASE_LABEL=Freevana's database
SETTINGS_DATABASE_NONE_LABEL=None
SETTINGS_DATABASE_NONE_ERROR=‹‹ You need to set a database
SETTINGS_DATABASE_SET_LABEL=Change
SETTINGS_DATABASE_SET_LABEL=Update
# Settings - Subs
SETTINGS_SUBTITLES_INFO=The best way to enjoy Freevana Player is to have a local copy of the subtitles. You may be able to obtain a copy at <a href='http://tirino.github.com/freevana'>http://tirino.github.com/freevana/</a>
SETTINGS_SUBTITLES_LABEL=Subtitles
Expand All @@ -49,6 +49,6 @@ DOWNLOAD_SEPARATOR_LABEL=Or you can download the video and subtitles!
DOWNLOAD_SUBTITLE_LABEL=Open Subtitle Folder
# Updates
UPDATES_NEW_PLAYER_VERSION=New version of Freevana Player
UPDATES_DOWNLOAD_NEW_PLAYER=Download new version
UPDATES_DOWNLOAD_NEW_PLAYER=Download new version?
UPDATES_NEW_DATABASE_VERSION=New version of Freevana Database
UPDATES_DOWNLOAD_NEW_DATABASE=Download new version
UPDATES_DOWNLOAD_NEW_DATABASE=Download new version?
6 changes: 3 additions & 3 deletions locale/es_ES/Strings.properties
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ SETTINGS_DATABASE_INFO=Para usar Freevana Player necesitas una copia de la base
SETTINGS_DATABASE_LABEL=Freevana's database
SETTINGS_DATABASE_NONE_LABEL=Ninguna
SETTINGS_DATABASE_NONE_ERROR=‹‹ Necesita una base de datos
SETTINGS_DATABASE_SET_LABEL=Cambiar
SETTINGS_DATABASE_SET_LABEL=Actualizar
# Settings - Subs
SETTINGS_SUBTITLES_INFO=Para disfrutar mejor de Freevana Player es recomendable tener una copia local de los subtítulos. Es posible conseguir una copia en <a href='http://tirino.github.com/freevana'>http://tirino.github.com/freevana/</a>
SETTINGS_SUBTITLES_LABEL=Subtítulos
Expand All @@ -48,6 +48,6 @@ DOWNLOAD_SEPARATOR_LABEL=O, puede bajar el video y acceder al subtitulo:
DOWNLOAD_SUBTITLE_LABEL=Ver carpeta con Subtítulo
# Updates
UPDATES_NEW_PLAYER_VERSION=Nueva versión de Freevana Player
UPDATES_DOWNLOAD_NEW_PLAYER=Descargar la nueva versión
UPDATES_DOWNLOAD_NEW_PLAYER=Descargar la nueva versión?
UPDATES_NEW_DATABASE_VERSION=Nueva versión de la Base de Datos
UPDATES_DOWNLOAD_NEW_DATABASE=Descargar la nueva versión
UPDATES_DOWNLOAD_NEW_DATABASE=Descargar la nueva versión?
20 changes: 17 additions & 3 deletions src/freevana/util/FreevanaDB.as
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,33 @@ package freevana.util

public function FreevanaDB(dbFile:String):void
{
_dbFile = File.applicationStorageDirectory.resolvePath(dbFile);
_dbFile = Resources.DATA_STORAGE_DIR.resolvePath(dbFile);
trace("[FreevanaDB] dbFile: " + _dbFile.nativePath);
_sqlConn.open(_dbFile);
_dbVersionNumber = getVersionNumber();
}

public function close():void
{
if (_sqlConn != null)
{
try {
_sqlConn.close();
} catch (error:*) {
trace(error);
}
}
}

public function runQuery(query:String):Array
{
_sqlConn.open(_dbFile);
var statement:SQLStatement = new SQLStatement();
statement.sqlConnection = _sqlConn;
statement.text = query;
statement.execute();
return statement.getResult().data;
var queryData:Array = statement.getResult().data;
_sqlConn.close();
return queryData;
}

public function getVersionNumber():String
Expand Down
18 changes: 15 additions & 3 deletions src/freevana/util/Resources.as
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ package freevana.util
[ResourceBundle("Strings")]
public class Resources
{
public static var DATA_STORAGE_DIR:File = File.applicationStorageDirectory;
public static var DATABASE_FILE_DIR:String = "db";
public static var DATABASE_FILE_NAME:String = "freevana.db";
public static var DATABASE_FILE_PATH:String = DATABASE_FILE_DIR + File.separator + DATABASE_FILE_NAME;
Expand Down Expand Up @@ -65,7 +66,7 @@ package freevana.util

public function checkDB():Boolean
{
var db:File = File.applicationStorageDirectory.resolvePath(DATABASE_FILE_PATH);
var db:File = DATA_STORAGE_DIR.resolvePath(DATABASE_FILE_PATH);
return db.exists;
}

Expand All @@ -82,16 +83,27 @@ package freevana.util
private function doCopyDB(event:Event):void
{
var selectedFile:File = (event.target as File);
var targetFile:File = File.applicationStorageDirectory.resolvePath(DATABASE_FILE_PATH);
var targetFile:File = DATA_STORAGE_DIR.resolvePath(DATABASE_FILE_PATH);

trace("[Resources] " + selectedFile.nativePath + " => " + targetFile.nativePath);
// Delete old one
try {
if (targetFile.exists) {
targetFile.deleteFile();
}
} catch (error:Error) {
//Alert.show(error.message);
trace("[Resources] Error Deleting: " + error.message);
}
// Copy
try {
selectedFile.copyTo(targetFile, true);
if (_dbCopyCallback != null) {
_dbCopyCallback();
}
} catch (error:Error) {
trace("[Resources] Error: " + error.message);
Alert.show(error.message);
trace("[Resources] Error Copying: " + error.message);
}
}

Expand Down
2 changes: 1 addition & 1 deletion src/freevana/util/Subtitles.as
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ package freevana.util

private function buildLocalStoragePathForSubs(itemId:int, isMovie:Boolean, lang:String):File
{
return buildPathForSubs(File.applicationStorageDirectory, itemId, isMovie, lang);
return buildPathForSubs(Resources.DATA_STORAGE_DIR, itemId, isMovie, lang);
}

private function buildPathForSubs(baseFolder:File, itemId:int, isMovie:Boolean, lang:String):File
Expand Down
7 changes: 5 additions & 2 deletions src/freevana/util/Updates.as
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,13 @@ package freevana.util
{
public static const PLAYER:String = 'player';
public static const PLAYER_LINK:String = 'player_link';
public static const PLAYER_TEXT:String = 'player_text';
public static const DATABASE:String = 'db';
public static const DATABASE_LINK:String = 'db_link';
public static const DATABASE_TEXT:String = 'db_text';

private static const UPDATES_URL:String = 'http://tirino.github.com/freevana/updates.json';
private static const CHECK_INTERVAL:int = 60 * 60 * 24; // 24 hours
private static const CHECK_INTERVAL:int = 60 * 60 * 12; // 24 hours

private var _urlLoader:URLLoader;
private var _settings:Settings;
Expand Down Expand Up @@ -63,7 +65,8 @@ package freevana.util
trace("[Updates] download > Event error: " + event);
}
}
_urlLoader.load(new URLRequest(UPDATES_URL));
var _time:Date = new Date();
_urlLoader.load(new URLRequest(UPDATES_URL + '?' + _time.time));
}
}
}

0 comments on commit f505ee2

Please sign in to comment.