· 8 years ago · Apr 11, 2018, 02:04 PM
1package com.example.welcome.madrasti;
2
3import android.content.ClipData;
4import android.content.Intent;
5import android.database.sqlite.SQLiteDatabase;
6import android.graphics.Color;
7import android.os.Bundle;
8import android.support.annotation.NonNull;
9import android.support.design.widget.BottomNavigationView;
10import android.support.design.widget.TabLayout;
11import android.support.v4.view.ViewPager;
12import android.support.v4.widget.DrawerLayout;
13import android.support.v7.app.ActionBarDrawerToggle;
14import android.support.v7.app.AppCompatActivity;
15import android.support.v7.widget.CardView;
16import android.view.MenuItem;
17import android.view.View;
18import android.widget.GridLayout;
19import android.widget.TableLayout;
20import android.widget.TextView;
21import android.widget.Toast;
22
23
24public class MainActivity extends AppCompatActivity implements BottomNavigationView.OnNavigationItemSelectedListener {
25
26 private TextView mTextMessage;
27
28 Intent intent1;
29
30 private DrawerLayout d;
31 private ActionBarDrawerToggle a;
32
33 TabLayout tab;
34
35 ViewPager vp;
36
37 ViewPagerAdapter vpa;
38
39 GridLayout mainGrid;
40
41 DBAdapter db;
42
43
44 @Override
45 protected void onCreate(Bundle savedInstanceState) {
46 super.onCreate(savedInstanceState);
47 setContentView(R.layout.activity_main);
48
49
50
51 insertSchools();
52
53 d = (DrawerLayout) findViewById(R.id.container);
54 a= new ActionBarDrawerToggle(MainActivity.this,d,R.string.open,R.string.close);
55
56
57
58 d.addDrawerListener(a);
59 a.syncState();
60
61 getSupportActionBar().setDisplayHomeAsUpEnabled(true);
62
63 intent1= new Intent(getApplicationContext(),MapsActivity.class);
64
65 //NavigationView view = (NavigationView) findViewById(R.id.n);
66
67 mainGrid = (GridLayout) findViewById(R.id.mainGrid);
68
69 //Set Event
70 setSingleEvent(mainGrid);
71 //setToggleEvent(mainGrid);
72
73 }
74
75 @Override
76 public boolean onOptionsItemSelected(MenuItem item) {
77 if(a.onOptionsItemSelected(item)){
78
79 return true;
80 }
81 return super.onOptionsItemSelected(item);
82 }
83
84 @Override
85 public boolean onNavigationItemSelected(@NonNull MenuItem item) {
86
87 int id = item.getItemId();
88
89 if(id == R.id.item1){
90
91 startActivity(intent1);
92
93 }
94
95 if(id==R.id.item2){
96
97 Toast.makeText(this,"رأيك يهمنا",Toast.LENGTH_SHORT).show();
98 }
99
100
101
102
103 if(id==R.id.item5){
104
105 Toast.makeText(this,"ØÙˆÙ„ التطبيق",Toast.LENGTH_SHORT).show();
106 }
107
108
109 return false;
110 }
111
112
113 private void setToggleEvent(GridLayout mainGrid) {
114 //Loop all child item of Main Grid
115 for (int i = 0; i < mainGrid.getChildCount(); i++) {
116 //You can see , all child item is CardView , so we just cast object to CardView
117 final CardView cardView = (CardView) mainGrid.getChildAt(i);
118
119
120 cardView.setOnClickListener(new View.OnClickListener() {
121 @Override
122 public void onClick(View view) {
123 if (cardView.getCardBackgroundColor().getDefaultColor() == -1) {
124 //Change background color
125 cardView.setCardBackgroundColor(Color.parseColor("#FF6F00"));
126 Toast.makeText(MainActivity.this, "State : True", Toast.LENGTH_SHORT).show();
127
128 } else {
129 //Change background color
130 cardView.setCardBackgroundColor(Color.parseColor("#FFFFFF"));
131 Toast.makeText(MainActivity.this, "State : False", Toast.LENGTH_SHORT).show();
132 }
133 }
134 });
135 }
136 }
137
138 private void setSingleEvent(GridLayout mainGrid) {
139 //Loop all child item of Main Grid
140 for (int i = 0; i < mainGrid.getChildCount(); i++) {
141 //You can see , all child item is CardView , so we just cast object to CardView
142 CardView cardView = (CardView) mainGrid.getChildAt(i);
143 final int finalI = i;
144 cardView.setOnClickListener(new View.OnClickListener() {
145 @Override
146 public void onClick(View view) {
147
148 if(finalI==0) {
149 Intent intent = new Intent(MainActivity.this, ListOfSchoolsPublic.class);
150 startActivity(intent);
151 }
152
153 else if(finalI==1){
154
155 Intent intent = new Intent(MainActivity.this,ListOfPrivateSchools.class);
156 startActivity(intent);
157
158 }
159
160 }
161 });
162 }
163 }
164
165
166 /////////////////////////////INSERT SCHOOLS//////////////////////////
167
168 public void insertSchools(){
169
170 //SCHOOL-1
171 openDB();
172 db.insertSchool("مدرسة دار Ø§Ù„Ù…Ø¹Ø±ÙØ©","0797417018 - 0790889165","Math - Science",2009,"الأول - السابع","عن طريق مستودع التربية","جيدة جدا","مختبر ØØ§Ø³ÙˆØ¨ - مختبر علوم","480 - 550","اربد/مجمع الشيخ خليل/ØÙŠ Ø§Ù„Ù†Ø²Ù‡Ø©",35.85542,"خاصة",32.54845);
173 closeDB();
174 //SCHOOL-2
175 openDB();
176 db.insertSchool("مدرسة الروم الكاثوليك","07272881","ÙØ±Ù†Ø³ÙŠ",1951,"بستان - ثاني ثانوي","الشراء من مستودع التربية","ممتازة","مختبر ØØ§Ø³ÙˆØ¨ - مختبر علوم - مكتبة - ÙØ±Ù‚Ø© ÙÙ†","روضة / 500 | الاول - ثاني ثنوي / 1100","اربد/شارع Ø§Ù„ØØµÙ†/بجانب اسواق مكة",35.85155,"خاصة",32.55172);
177 closeDB();
178 //SCHOOL-3
179 openDB();
180 db.insertSchool("مدرسة النوار بنت مالك ","لا يوجد","لا يوجد",1970,"لا يوجد","لا يوجد","لا يوجد","لا يوجد","لا يوجد","لا يوجد",35.85391,"ØÙƒÙˆÙ…ية",32.54843);
181 closeDB();
182 //SCHOOL-4
183 openDB();
184 db.insertSchool("مدرسة زبيدة بنت Ø¬Ø¹ÙØ± الأساسية","لا يوجد","لا يوجد",1970,"الثالث - السابع","لا يوجد","جيدة","لا يوجد","لا يوجد","لا يوجد",35.85316,"خاصة",32.54871);
185 closeDB();
186 //SCHOOL-5
187 openDB();
188 db.insertSchool("أكاديمية Ø§Ù„ÙØ±Ø","027250551 - 0796550752","الغاز عربية للص٠الاول - كراسة كتابة وخط - Ù…ØµØ·Ù„ØØ§Øª علمية باللغة الانجليزية - Math - Science - منهاج تعليمي الكتروني للرياضيات والعلوم والانجليزي من الص٠الخامس للص٠التاسع",1994,"الروضة - ثاني ثانوي","لا يوجد","لا يوجد","مختبر ØØ§Ø³ÙˆØ¨","اول - سادس / 600 | سابع - تاسع / 700 | عاشر / 750 | اول ثانوي - ثاني ثانوي / 900 | الروضة / 450","اربد/الØÙŠ Ø§Ù„Ø¬Ù†ÙˆØ¨ÙŠ/شمال جامعة اليرموك/جنوب شرق اشارة الاسكان",35.85199,"خاصة",32.54356);
189 closeDB();
190 //SCHOOL-6
191 openDB();
192 db.insertSchool("مدرسة جمانة الثانوية للبنات","لا يوجد","لا يوجد",1970,"لا يوجد","لا يوجد","لا يوجد","لا يوجد","لا يوجد","لا يوجد",35.85352,"خاصة",32.53322);
193 closeDB();
194
195 //SCHOOL-7
196 openDB();
197 db.insertSchool("روضة ومدرسة ابن النÙيس","لا يوجد","لا يوجد",1970,"لا يوجد","لا يوجد","لا يوجد","لا يوجد","لا يوجد","لا يوجد",35.85050,"ØÙƒÙˆÙ…ية",32.54680);
198 closeDB();
199
200 //SCHOOL-8
201 openDB();
202 db.insertSchool("مدرسة Ø§Ù„Ø¨ØØ±ÙŠÙ†ÙŠØ©","0772062317","لا يوجد",1970,"الأول - العاشر","لا يوجد","جيدة جدا","مختبر علوم - مختبر ØØ§Ø³ÙˆØ¨1 - مختبر ØØ§Ø³ÙˆØ¨2 - ØØ¶Ø§Ù†Ø© - ØØ¯ÙŠÙ‚Ø©","لا يوجد","اربد/الØÙŠ Ø§Ù„Ø´Ø±Ù‚ÙŠ/النزهة",35.86408,"ØÙƒÙˆÙ…ية",32.54847);
203 closeDB();
204
205 //SCHOOL-9
206 openDB();
207 db.insertSchool("مدرسة القادسية","0795527721","لا يوجد",1981,"لا يوجد","لا يوجد","ممتازة","مختبر ØØ§Ø³ÙˆØ¨ - مختبر علوم","لا يوجد","اربد/الØÙŠ Ø§Ù„Ø´Ø±Ù‚ÙŠ",35.86587,"ØÙƒÙˆÙ…ية",32.54785);
208 closeDB();
209
210 //SCHOOL-10
211 openDB();
212 db.insertSchool("مدرسة رقية بنت الرسول الأساسية للبنات","لا يوجد","لا يوجد",1970,"لا يوجد","لا يوجد","لا يوجد","لا يوجد","لا يوجد","لا يوجد",35.85827,"خاصة",32.55319);
213 closeDB();
214
215 //SCHOOL-11
216 openDB();
217 db.insertSchool("مدرسة الإيمان التعليمية","07277323","Math - Science",1996,"الروضة - التاسع","الشراء من مستودع التربية","ممتازة","لا يوجد","الروضة / 850 | الاول - التاسع /1000","اربد/ØÙŠ Ø§Ù„Ø´ÙŠØ® خليل/مبنى راتب البطاينة",35.85887,"ØÙƒÙˆÙ…ية",32.54622);
218 closeDB();
219
220
221
222 }
223
224
225
226 /////////////////////////////////////////////////////////////////////
227
228
229
230
231
232 @Override
233 protected void onDestroy() {
234 super.onDestroy();
235 closeDB();
236
237 }// end onDestroy method
238
239
240
241 //////////////////////////////////////////////////////////////////////
242
243
244
245 private void openDB() {
246 db = new DBAdapter(this);
247 db.open();
248 } // end openDB method
249
250 //////////////////////////////////////////////////////////////////////
251
252 private void closeDB() {
253 db.close();
254 } // end closeDB method
255
256}
257
258package com.example.welcome.madrasti;
259
260import android.content.ContentValues;
261import android.content.Context;
262import android.database.Cursor;
263import android.database.sqlite.SQLiteDatabase;
264import android.database.sqlite.SQLiteOpenHelper;
265import android.util.Log;
266
267public class DBAdapter {
268
269 private static final String TAG = "DBAdapter";
270
271 //columns names users
272 public static final String KEY_ROWID = "id";
273 public static final String KEY_NAME = "name";
274 public static final String KEY_PASSWD = "passwd";
275 public static final String KEY_ADMIN = "isAdmin";
276 public static final String KEY_U_PHONE = "phone";
277
278 // School Table Columns names
279 public static final String KEY_SCHOOLID = "schoolID";
280 public static final String KEY_SCHOOLNAME = "schoolName";
281 public static final String KEY_PHONE_NUM = "schoolPhone";
282 public static final String KEY_MATERIALS = "schoolExtraM";
283 public static final String KEY_FOUNDATION_DATE = "schoolFD";
284 public static final String KEY_CLASSES = "schoolClasses";
285 public static final String KEY_BUY_BOOKS = "schoolGetBooks";
286 public static final String KEY_HEALTH = "schoolHealthSituation";
287 public static final String KEY_LABORATORIES = "schoolLabs";
288 public static final String KEY_LOCATION = "schoolLocation";
289 public static final String KEY_FEES = "schoolFees";
290 public static final String KEY_LATITUDE = "schoolLatitude";
291 public static final String KEY_LONGITUDE = "schoolLongitude";
292 public static final String KEY_SChOOL_TYPE = "schoolType";
293
294
295 //columns numbers - users
296 public static final int COL_ROWID_TABLE_1 = 0;
297 public static final int COL_NAME_TABLE_1 = 1;
298 public static final int COL_PASSWD_TABLE_1 = 2;
299 public static final int COL_ADMIN_TABLE_1 = 3;
300 public static final int COL_PHONE_NUM_TABLE_1 = 4;
301
302 //columns numbers - schools
303 public static final int COL_SCHOOLID_TABLE_2 = 0;
304 public static final int COL_SCHOOLNAME_TABLE_2 = 1;
305 public static final int COL_PHONE_NUM_TABLE_2 = 2;
306 public static final int COL_MATERIALS_TABLE_2 = 3;
307 public static final int COL_FOUNDATION_DATE_TABLE_2 = 4;
308 public static final int COL_CLASSES_TABLE_2 = 5;
309 public static final int COL_BUY_BOOKS_TABLE_2 = 6;
310 public static final int COL_HEALTH_TABLE_2 = 7;
311 public static final int COL_LABORATORIES_TABLE_2 = 8;
312 public static final int COL_LOCATION_TABLE_2 = 9;
313 public static final int COL_FEES_TABLE_2 = 10;
314 public static final int COL_LATITUDE_TABLE_2 = 11;
315 public static final int COL_LONGITUDE_TABLE_2 = 12;
316 public static final int COL_SChOOL_TYPE_TABLE_2 = 13;
317
318
319
320 // array for the columns names
321 public static final String[] ALL_KEYS_TABLE_1 = new String[] {KEY_ROWID, KEY_NAME, KEY_PASSWD, KEY_ADMIN,KEY_U_PHONE};
322
323 public static final String[] ALL_KEYS_TABLE_2 = new String[] {KEY_SCHOOLID, KEY_SCHOOLNAME, KEY_PHONE_NUM, KEY_MATERIALS,KEY_FOUNDATION_DATE,KEY_CLASSES,KEY_BUY_BOOKS,KEY_HEALTH,KEY_LABORATORIES,KEY_LOCATION,KEY_FEES,KEY_LATITUDE,KEY_LONGITUDE,KEY_SChOOL_TYPE};
324
325 // the database name and the table name
326 public static final String DATABASE_NAME = "MyDb";
327 public static final String DATABASE_TABLE_1 = "users";
328 public static final String DATABASE_TABLE_2 = "schools";
329 // version
330 public static final int DATABASE_VERSION = 8;
331
332 // create table query
333 private static final String DATABASE_CREATE_SQL_1 =
334 "create table " + DATABASE_TABLE_1
335 + "("
336 + KEY_ROWID + " integer primary key autoincrement,"
337 + KEY_NAME+ " text not null,"
338 + KEY_PASSWD + " text not null,"
339 +KEY_ADMIN + " integer not null,"
340 + KEY_U_PHONE + " text not null" + ")";
341
342 private static final String DATABASE_CREATE_SQL_2 =
343 "create table " + DATABASE_TABLE_2
344 + "("
345 + KEY_SCHOOLID + " integer primary key autoincrement,"
346 + KEY_SCHOOLNAME + " text not null,"
347 + KEY_PHONE_NUM + " text not null,"
348 + KEY_MATERIALS + " text not null,"
349 + KEY_FOUNDATION_DATE + " integer not null,"
350 + KEY_CLASSES + " text not null,"
351 + KEY_BUY_BOOKS + " text not null,"
352 + KEY_HEALTH + " text not null,"
353 + KEY_LABORATORIES + " text not null,"
354 + KEY_FEES + " text not null,"
355 + KEY_LOCATION + " text not null,"
356 + KEY_LONGITUDE + " double not null,"
357 + KEY_SChOOL_TYPE + " text not null,"
358 + KEY_LATITUDE + " double not null" + ")";
359
360
361
362 private final Context context;
363
364 // initiates instances from class DatabaseHelper and SQLiteDatabase
365 private DatabaseHelper myDBHelper;
366 private SQLiteDatabase db; // database
367
368
369 // constructor
370 public DBAdapter(Context ctx) {
371
372
373 this.context = ctx;
374 myDBHelper = new DatabaseHelper(context);
375
376 }
377
378
379 public DBAdapter open() {
380 db = myDBHelper.getWritableDatabase();
381 return this;
382 }
383
384
385 public void close() {
386 myDBHelper.close();
387 }
388
389
390 public long insertSchool(String name, String phone,String materials, int fDate,String classes,String books,String health,String labs,String fees,String location,double longitude,String type,double latitude) {
391
392 ContentValues initialValues = new ContentValues();
393 initialValues.put(KEY_NAME, name);
394 initialValues.put(KEY_PHONE_NUM,phone);
395 initialValues.put(KEY_MATERIALS, materials);
396 initialValues.put(KEY_FOUNDATION_DATE, fDate);
397 initialValues.put(KEY_CLASSES, classes);
398 initialValues.put(KEY_BUY_BOOKS, books);
399 initialValues.put(KEY_HEALTH,health);
400 initialValues.put(KEY_LABORATORIES, labs);
401 initialValues.put(KEY_FEES, fees);
402 initialValues.put(KEY_LOCATION, location);
403 initialValues.put(KEY_LONGITUDE, longitude);
404 initialValues.put(KEY_SChOOL_TYPE, type);
405 initialValues.put(KEY_LATITUDE, latitude);
406
407
408 return db.insert(DATABASE_TABLE_2, null, initialValues);
409 }
410
411 public long insertUser(String name, String passwd,int isAdmin, String phone) {
412
413 ContentValues initialValues = new ContentValues();
414 initialValues.put(KEY_NAME, name);
415 initialValues.put(KEY_PASSWD, passwd);
416 initialValues.put(KEY_ADMIN, isAdmin);
417 initialValues.put(KEY_U_PHONE, phone);
418
419
420 return db.insert(DATABASE_TABLE_1, null, initialValues);
421 }
422
423
424 public boolean deleteShool(String schoolName) {
425 String where = KEY_SCHOOLNAME + "='" + schoolName + "'";
426 return db.delete(DATABASE_TABLE_2, where, null) != 0;
427 }
428
429
430 public boolean deleteSchoolById(long rowId) {
431 String where = KEY_SCHOOLID + "=" + rowId;
432 return db.delete(DATABASE_TABLE_2, where, null) != 0;
433 }
434
435 public void deleteAll() {
436 Cursor c = getAllRows();
437 long rowId = c.getColumnIndexOrThrow(KEY_SCHOOLID);
438 if (c.moveToFirst()) {
439 do {
440 deleteSchoolById(c.getLong((int) rowId));
441 } while (c.moveToNext());
442 }
443 c.close();
444 }
445
446
447 public Cursor getAllRows() {
448 String where = null;
449 Cursor c = db.query(true, DATABASE_TABLE_2, ALL_KEYS_TABLE_2,
450 where, null, null, null, null, null);
451 if (c != null) {
452 c.moveToFirst();
453 }
454 return c;
455 }
456
457
458 public Cursor getAllUsersRows() {
459 String where = null;
460 Cursor c = db.query(true, DATABASE_TABLE_1, ALL_KEYS_TABLE_1,
461 where, null, null, null, null, null);
462 if (c != null) {
463 c.moveToFirst();
464 }
465 return c;
466 }
467
468
469 public Cursor getRow(long rowId) {
470 String where = KEY_SCHOOLID+ "=" + rowId;
471 Cursor c = db.query(true, DATABASE_TABLE_2, ALL_KEYS_TABLE_2,
472 where, null, null, null, null, null);
473 if (c != null) {
474 c.moveToFirst();
475 }
476 return c;
477 }
478
479
480
481 public Cursor getRowByName(String name) {
482 String where = KEY_SCHOOLNAME + "='" + name+"'";
483 Cursor c = db.query(true, DATABASE_TABLE_2, ALL_KEYS_TABLE_2,
484 where, null, null, null, null, null);
485 if (c != null) {
486 c.moveToFirst();
487 }
488 return c;
489 }
490
491
492
493 private static class DatabaseHelper extends SQLiteOpenHelper
494 {
495 DatabaseHelper(Context context) {
496 super(context, DATABASE_NAME, null, DATABASE_VERSION);
497 }
498
499 @Override
500 public void onCreate(SQLiteDatabase _db) {
501
502 _db.execSQL(DATABASE_CREATE_SQL_1);
503 _db.execSQL(DATABASE_CREATE_SQL_2);
504
505
506 }
507
508 @Override
509 public void onUpgrade(SQLiteDatabase _db, int oldVersion, int newVersion) {
510 Log.w(TAG, "Upgrading application's database from version " + oldVersion
511 + " to " + newVersion + ", which will destroy all old data!");
512
513
514 _db.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE_1);
515 _db.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE_2);
516
517
518 onCreate(_db);
519
520
521
522 }
523
524
525 }
526
527
528
529}