diff --git a/.idea/assetWizardSettings.xml b/.idea/assetWizardSettings.xml index 42e3dc32..d1fac0cd 100644 --- a/.idea/assetWizardSettings.xml +++ b/.idea/assetWizardSettings.xml @@ -320,7 +320,7 @@ @@ -330,9 +330,8 @@ diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml deleted file mode 100644 index 24252699..00000000 --- a/.idea/deploymentTargetDropDown.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 323d432d..be2898d8 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -49,6 +49,7 @@ + diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 3c06d882..44deca19 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -49,9 +49,6 @@ android:name=".DownloaderService" android:enabled="true" android:exported="false" /> - \ No newline at end of file diff --git a/app/src/main/java/com/deniscerri/ytdlnis/database/DBManager.java b/app/src/main/java/com/deniscerri/ytdlnis/database/DBManager.java index 075f2c39..6240c56a 100644 --- a/app/src/main/java/com/deniscerri/ytdlnis/database/DBManager.java +++ b/app/src/main/java/com/deniscerri/ytdlnis/database/DBManager.java @@ -10,7 +10,7 @@ import java.util.ArrayList; public class DBManager extends SQLiteOpenHelper { public static final String db_name = "ytdlnis_db"; - public static final int db_version = 6; + public static final int db_version = 7; public static final String results_table_name = "results"; public static final String history_table_name = "history"; public static final String id = "id"; @@ -26,6 +26,7 @@ public class DBManager extends SQLiteOpenHelper { public static final String time = "time"; public static final String isPlaylistItem = "isPlaylistItem"; public static final String website = "website"; + public static final String downloadPath = "downloadPath"; public DBManager(Context context){ @@ -51,14 +52,15 @@ public class DBManager extends SQLiteOpenHelper { query = "CREATE TABLE " + history_table_name + " (" + id + " INTEGER PRIMARY KEY AUTOINCREMENT, " - + videoId + " TEXT," + + url + " TEXT," + title + " TEXT," + author + " TEXT," + duration + " TEXT," + thumb + " TEXT," + type + " TEXT," + time + " TEXT," - + isPlaylistItem + " INTENGER)"; + + downloadPath + " TEXT," + + website + " TEXT)"; sqLiteDatabase.execSQL(query); } @@ -96,7 +98,7 @@ public class DBManager extends SQLiteOpenHelper { } @Override - public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) { + public void onUpgrade(SQLiteDatabase sqLiteDatabase, int oldVer, int newVer) { sqLiteDatabase.execSQL("DROP TABLE IF EXISTS " + results_table_name); sqLiteDatabase.execSQL("DROP TABLE IF EXISTS " + history_table_name); onCreate(sqLiteDatabase); @@ -146,7 +148,8 @@ public class DBManager extends SQLiteOpenHelper { cursor.getString(5), cursor.getString(6), cursor.getString(7), - cursor.getInt(8))); + cursor.getString(8), + cursor.getString(9))); } while (cursor.moveToNext()); } @@ -181,13 +184,15 @@ public class DBManager extends SQLiteOpenHelper { SQLiteDatabase db = this.getWritableDatabase(); ContentValues values = new ContentValues(); - values.put(videoId, v.getVideoId()); + values.put(url, v.getURL()); values.put(title, v.getTitle()); values.put(author, v.getAuthor()); values.put(duration, v.getDuration()); values.put(thumb, v.getThumb()); values.put(type, v.getDownloadedType()); values.put(time, v.getDownloadedTime()); + values.put(downloadPath, v.getDownloadPath()); + values.put(website, v.getWebsite()); db.insert(history_table_name, null, values); db.close(); @@ -209,10 +214,10 @@ public class DBManager extends SQLiteOpenHelper { db.update(results_table_name, values, "videoId = ?", new String[]{id}); } - public int checkDownloaded(String id, String downloadType){ + public int checkDownloaded(String url, String downloadType){ SQLiteDatabase db = this.getWritableDatabase(); - Cursor cursor = db.rawQuery("SELECT * FROM " + history_table_name + " WHERE videoId='" + - id + "' AND type='"+downloadType + "' LIMIT 1", null); + Cursor cursor = db.rawQuery("SELECT * FROM " + history_table_name + " WHERE url='" + + url + "' AND type='"+downloadType + "' LIMIT 1", null); if(cursor.moveToFirst()){ return 1; diff --git a/app/src/main/java/com/deniscerri/ytdlnis/database/Video.java b/app/src/main/java/com/deniscerri/ytdlnis/database/Video.java index 117f6f13..02a5963c 100644 --- a/app/src/main/java/com/deniscerri/ytdlnis/database/Video.java +++ b/app/src/main/java/com/deniscerri/ytdlnis/database/Video.java @@ -16,6 +16,7 @@ public class Video implements Parcelable { private int downloadedVideo; private String downloadedTime; private int isPlaylistItem; + private String downloadPath; private String website; // RESULTS OBJECT @@ -34,17 +35,18 @@ public class Video implements Parcelable { } //HISTORY OBJECT - public Video(int id, String videoId, String title, String author, String duration, String thumb, - String downloadedType, String downloadedTime, int isPlaylistItem) { + public Video(int id, String url, String title, String author, String duration, String thumb, + String downloadedType, String downloadedTime, String downloadPath, String website) { this.id = id; - this.videoId = videoId; + this.url = url; this.title = title; this.author = author; this.duration = duration; this.thumb = thumb; this.downloadedType = downloadedType; this.downloadedTime = downloadedTime; - this.isPlaylistItem = isPlaylistItem; + this.downloadPath = downloadPath; + this.website = website; } @@ -61,6 +63,7 @@ public class Video implements Parcelable { downloadedVideo = in.readInt(); downloadedTime = in.readString(); isPlaylistItem = in.readInt(); + downloadPath = in.readString(); website = in.readString(); } @@ -148,6 +151,54 @@ public class Video implements Parcelable { public void setWebsite(String site){ this.website = site; } + public void setVideoId(String videoId) { + this.videoId = videoId; + } + + public void setAuthor(String author) { + this.author = author; + } + + public void setDuration(String duration) { + this.duration = duration; + } + + public void setThumb(String thumb) { + this.thumb = thumb; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + public int getDownloadedAudio() { + return downloadedAudio; + } + + public void setDownloadedAudio(int downloadedAudio) { + this.downloadedAudio = downloadedAudio; + } + + public int getDownloadedVideo() { + return downloadedVideo; + } + + public void setDownloadedVideo(int downloadedVideo) { + this.downloadedVideo = downloadedVideo; + } + + public String getDownloadPath() { + return downloadPath; + } + + public void setDownloadPath(String downloadPath) { + this.downloadPath = downloadPath; + } + @Override public int describeContents() { return 0; @@ -167,6 +218,7 @@ public class Video implements Parcelable { parcel.writeInt(downloadedVideo); parcel.writeString(downloadedTime); parcel.writeInt(isPlaylistItem); + parcel.writeString(downloadPath); parcel.writeString(website); } diff --git a/app/src/main/java/com/deniscerri/ytdlnis/page/HistoryFragment.java b/app/src/main/java/com/deniscerri/ytdlnis/page/HistoryFragment.java index 34b4149d..69ec91d6 100644 --- a/app/src/main/java/com/deniscerri/ytdlnis/page/HistoryFragment.java +++ b/app/src/main/java/com/deniscerri/ytdlnis/page/HistoryFragment.java @@ -44,6 +44,7 @@ public class HistoryFragment extends Fragment implements HistoryRecyclerViewAdap private View fragmentView; private DBManager dbManager; Context context; + Context fragmentContext; private LayoutInflater layoutinflater; private ShimmerFrameLayout shimmerCards; private MaterialToolbar topAppBar; @@ -52,10 +53,8 @@ public class HistoryFragment extends Fragment implements HistoryRecyclerViewAdap private BottomSheetDialog bottomSheet; private Handler uiHandler; private RelativeLayout no_results; - private ArrayList