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