Advertisement
Guest User

Untitled

a guest
May 9th, 2016
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.68 KB | None | 0 0
  1. import android.content.ContentValues;
  2. import android.content.Context;
  3. import android.database.Cursor;
  4. import android.database.sqlite.SQLiteDatabase;
  5. import android.database.sqlite.SQLiteOpenHelper;
  6. import java.util.ArrayList;
  7.  
  8. /**
  9. * Created by 300079058 on 25/04/2016.
  10. */
  11. public class DBHandler extends SQLiteOpenHelper {
  12.  
  13. private final static String DATABASE_NAME ="GCCDatabase";
  14. private final String TABLE_LOGIN = "Login";
  15. private final String LOGIN_USERNAME= "Username";
  16. private final String LOGIN_PASSWORD= "Password";
  17.  
  18. private final String TABLE_USER = "User";
  19. private final String USER_LOGINDETAILS= "Username";
  20. private final String USER_FIRSTNAME= "FirstName";
  21. private final String USER_LASTNAME= "LastName";
  22. private final String USER_EMAILADDRESS ="EmailAddress";
  23.  
  24. private final String TABLE_ARTICLE = "Article";
  25. private final String ARTICLE_ARTICLENAME = "ArticleName";
  26. private final String ARTICLE_ARTICLECONTENTS = "ArticleContents";
  27.  
  28.  
  29. private final String TABLE_COMMENT = "Comment";
  30. private final String COMMENT_USERCOMMENT = "UserComment";
  31. private final String COMMENT_USERRATING = "UsersRating";
  32. private final String COMMENT_USERNAME = "Username";
  33. private final String COMMENT_ARTICLENAME = "ArticleName";
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40. public DBHandler(Context context)
  41. {
  42.  
  43. super(context, DATABASE_NAME, null, 1);
  44.  
  45. }
  46.  
  47.  
  48. @Override
  49. public void onCreate(SQLiteDatabase db)
  50. {
  51.  
  52. //LOGIN
  53. String CREATE_LOGIN_TABLE = "CREATE TABLE " + TABLE_LOGIN + " (" +
  54. LOGIN_USERNAME + " TEXT PRIMARY KEY, " +
  55. LOGIN_PASSWORD + " TEXT)";
  56. db.execSQL(CREATE_LOGIN_TABLE);
  57.  
  58.  
  59. //SIGN UP
  60. String CREATE_USER_TABLE = "CREATE TABLE " + TABLE_USER + " (" +
  61. USER_LOGINDETAILS + " TEXT PRIMARY KEY, " +
  62. USER_FIRSTNAME + " TEXT, " +
  63. USER_LASTNAME + " TEXT, " +
  64. USER_EMAILADDRESS + " TEXT)";
  65. db.execSQL(CREATE_USER_TABLE);
  66.  
  67.  
  68. //ARTICLE
  69. String CREATE_ARTICLE_TABLE = "CREATE TABLE " + TABLE_ARTICLE + " (" +
  70. ARTICLE_ARTICLENAME + " TEXT PRIMARY KEY, " +
  71. ARTICLE_ARTICLECONTENTS + " TEXT)";
  72. db.execSQL(CREATE_ARTICLE_TABLE);
  73.  
  74.  
  75. //COMMENT
  76. String CREATE_COMMENT_TABLE = "CREATE TABLE " + TABLE_COMMENT + " (" +
  77. COMMENT_USERCOMMENT + " TEXT, " +
  78. COMMENT_USERRATING + " INTEGER, " +
  79. COMMENT_USERNAME + " TEXT, " +
  80. COMMENT_ARTICLENAME + " TEXT, " +
  81. "PRIMARY KEY (Username, ArticleName))";
  82. db.execSQL(CREATE_COMMENT_TABLE);
  83.  
  84.  
  85.  
  86. }
  87.  
  88. public void addLogin(Login login, SQLiteDatabase database)
  89. {
  90. ContentValues values = new ContentValues();
  91. values.put(LOGIN_USERNAME, login.getUsername());
  92. values.put(LOGIN_PASSWORD, login.getPassword());
  93. database.insert(TABLE_LOGIN, null, values);
  94. }
  95.  
  96.  
  97. public void addUser(User user, SQLiteDatabase database)
  98. {
  99. ContentValues values = new ContentValues();
  100. values.put(USER_LOGINDETAILS, user.getLoginDetails().getUsername());
  101. values.put(USER_FIRSTNAME, user.getFirstName());
  102. values.put(USER_LASTNAME, user.getLastName());
  103. values.put(USER_EMAILADDRESS, user.getEmailAddress());
  104. database.insert(TABLE_USER, null, values);
  105. }
  106.  
  107. public void addComment(Comment comment, SQLiteDatabase database)
  108. {
  109. ContentValues values = new ContentValues();
  110. values.put(COMMENT_USERCOMMENT, comment.getUsersComment());
  111. values.put(COMMENT_USERRATING, comment.getUsersRating());
  112. values.put(COMMENT_USERNAME, comment.getUsername());
  113. values.put(COMMENT_ARTICLENAME, comment.getArticleName());
  114.  
  115. database.insert(TABLE_COMMENT, null, values);
  116. }
  117.  
  118.  
  119. public ArrayList<Comment> getComments(String articleName){
  120. ArrayList<Comment> comments = new ArrayList<Comment>();
  121. SQLiteDatabase db = this.getReadableDatabase();
  122. Cursor cursor = db.rawQuery("SELECT * FROM Comment WHERE ArticleName='" + articleName + "'", null);
  123.  
  124. if (cursor.getCount() !=0){
  125. if (cursor.moveToFirst()){
  126. do{
  127. String usersComment = cursor.getString(cursor.getColumnIndex("UsersComment"));
  128. Double usersRating = cursor.getDouble(cursor.getColumnIndex("UsersRating"));
  129. String username = cursor.getString(cursor.getColumnIndex("Username"));
  130. String article = cursor.getString(cursor.getColumnIndex("ArticleName"));
  131.  
  132. Comment foundcomment = new Comment(usersComment, usersRating, username, article);
  133. comments.add(foundcomment);
  134. }while(cursor.moveToNext());
  135. }else{
  136. return comments;
  137. }
  138. }else{
  139. return comments;
  140. }
  141. return comments;
  142. }
  143.  
  144.  
  145.  
  146. public boolean validateLogin(String username, String password)
  147. {
  148. SQLiteDatabase db = this.getReadableDatabase();
  149. Cursor cursor = db.rawQuery("SELECT * FROM Login WHERE Username='" + username + "' AND Password= '" + password + "'", null);
  150. if (cursor.getCount() != 0)
  151. {
  152. return true;
  153. }
  154. else
  155. {
  156. return false;
  157. }
  158.  
  159. }
  160.  
  161.  
  162.  
  163. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
  164. {
  165. String deleteTable = "DROP TABLE IF EXISTS " + TABLE_LOGIN;
  166. db.execSQL(deleteTable);
  167. onCreate(db);
  168.  
  169. }
  170.  
  171.  
  172.  
  173.  
  174.  
  175. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement