diff --git a/kitkitschoollogger/kitkitlogger/src/main/java/com/maq/kitkitProvider/KitkitDBHandler.java b/kitkitschoollogger/kitkitlogger/src/main/java/com/maq/kitkitProvider/KitkitDBHandler.java index bb7bbf2f2..13e7912c0 100644 --- a/kitkitschoollogger/kitkitlogger/src/main/java/com/maq/kitkitProvider/KitkitDBHandler.java +++ b/kitkitschoollogger/kitkitlogger/src/main/java/com/maq/kitkitProvider/KitkitDBHandler.java @@ -15,6 +15,8 @@ import java.util.List; import java.util.Locale; +import static android.content.ContentValues.TAG; + /** * Created by ingtellect on 9/1/17. */ @@ -33,6 +35,8 @@ public class KitkitDBHandler extends SQLiteOpenHelper { public static final String COLUMN_ID = "_id"; public static final String COLUMN_USERNAME = "username"; + public static final String COLUMN_AGE = "_age"; + public static final String COLUMN_IMAGE = "_image"; public static final String COLUMN_STARS = "stars"; public static final String COLUMN_FINISH_TUTORIAL = "finish_tutorial"; public static final String COLUMN_UNLOCK_DRUM = "unlock_drum"; @@ -63,6 +67,8 @@ public class KitkitDBHandler extends SQLiteOpenHelper { + "(" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," + COLUMN_USERNAME + " TEXT," + + COLUMN_AGE + " TEXT," + + COLUMN_IMAGE + " BLOB," + COLUMN_STARS + " INTEGER," + COLUMN_FINISH_TUTORIAL + " BOOLEAN," + COLUMN_UNLOCK_DRUM + " BOOLEAN," @@ -83,7 +89,8 @@ public class KitkitDBHandler extends SQLiteOpenHelper { + TABLE_CURRENT_USER + "(" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," - + COLUMN_USERNAME + " TEXT" + + COLUMN_USERNAME + " TEXT," + + COLUMN_AGE + " TEXT" + ")"; final String CREATE_SNTP_RESULT_TABLE = "CREATE TABLE " @@ -132,8 +139,8 @@ public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { if (oldVersion < newVersion) { List arrSql = new ArrayList(); - arrSql.add("ALTER TABLE " + TABLE_USERS + " ADD COLUMN " + COLUMN_DISPLAY_NAME + " TEXT DEFAULT ('');"); - arrSql.add("ALTER TABLE " + TABLE_USERS + " ADD COLUMN " + COLUMN_OPEN_LIBRARY + " BOOLEAN DEFAULT (" + (User.DEFAULT_OPEN_LIBRARY == false ? 0 : 1) + ");"); + arrSql.add("ALTER TABLE " + TABLE_USERS + " ADD COLUMN " + COLUMN_DISPLAY_NAME + " TEXT DEFAULT ('');"); + arrSql.add("ALTER TABLE " + TABLE_USERS + " ADD COLUMN " + COLUMN_OPEN_LIBRARY + " BOOLEAN DEFAULT (" + (User.DEFAULT_OPEN_LIBRARY == false ? 0 : 1) + ");"); arrSql.add("ALTER TABLE " + TABLE_USERS + " ADD COLUMN " + COLUMN_OPEN_TOOLS + " BOOLEAN DEFAULT (" + (User.DEFAULT_OPEN_TOOLS == false ? 0 : 1) + ");"); arrSql.add("ALTER TABLE " + TABLE_USERS + " ADD COLUMN " + COLUMN_UNLOCK_FISH_BOWL + " BOOLEAN DEFAULT (" + 0 + ");"); arrSql.add("ALTER TABLE " + TABLE_USERS + " ADD COLUMN " + COLUMN_UNLOCK_WRITING_BOARD + " BOOLEAN DEFAULT (" + 0 + ");"); @@ -151,7 +158,7 @@ private void execRawQuery(SQLiteDatabase db, String[] arr_sql) { try { db.execSQL(sql); } catch (Exception e) { - Log.e(KitkitDBHandler.class.getName(),"SQL ERROR : " + sql); + Log.e(KitkitDBHandler.class.getName(), "SQL ERROR : " + sql); } } } @@ -160,6 +167,8 @@ private void execRawQuery(SQLiteDatabase db, String[] arr_sql) { public void addUser(User user) { ContentValues values = new ContentValues(); values.put(COLUMN_USERNAME, user.getUserName()); + values.put(COLUMN_AGE, user.getAge()); + values.put(COLUMN_IMAGE, user.getImage()); values.put(COLUMN_STARS, user.getNumStars()); values.put(COLUMN_FINISH_TUTORIAL, user.isFinishTutorial()); values.put(COLUMN_UNLOCK_DRUM, user.isUnlockDrum()); @@ -168,6 +177,7 @@ public void addUser(User user) { values.put(COLUMN_UNLOCK_COLORING, user.isUnlockColoring()); values.put(COLUMN_UNLOCK_BLACKBOARD, user.isUnlockBlackboard()); values.put(COLUMN_FINISH_LAUNCHER_TUTORIAL, user.isFinishLauncherTutorial()); + values.put(COLUMN_DISPLAY_NAME, user.getDisplayName()); values.put(COLUMN_OPEN_LIBRARY, user.isOpenLibrary()); values.put(COLUMN_OPEN_TOOLS, user.isOpenTools()); values.put(COLUMN_UNLOCK_FISH_BOWL, user.isUnlockFishBowl()); @@ -180,6 +190,8 @@ public void addUser(User user) { public User findUser(String username) { String[] projection = {COLUMN_ID, COLUMN_USERNAME, + COLUMN_AGE, + COLUMN_IMAGE, COLUMN_STARS, COLUMN_FINISH_TUTORIAL, COLUMN_UNLOCK_DRUM, @@ -208,20 +220,22 @@ public User findUser(String username) { cursor.moveToFirst(); user.setID(Integer.parseInt(cursor.getString(0))); user.setUserName(cursor.getString(1)); - user.setNumStars(Integer.parseInt(cursor.getString(2))); - user.setFinishTutorial("1".equals(cursor.getString(3))); - user.setUnlockDrum("1".equals(cursor.getString(4))); - user.setUnlockMarimba("1".equals(cursor.getString(5))); - user.setUnlockDrawing("1".equals(cursor.getString(6))); - user.setUnlockColoring("1".equals(cursor.getString(7))); - user.setUnlockBlackboard("1".equals(cursor.getString(8))); - user.setFinishLauncherTutorial("1".equals(cursor.getString(9))); - user.setDisplayName(cursor.getString(10)); - user.setOpenLibrary("1".equals(cursor.getString(11))); - user.setOpenTools("1".equals(cursor.getString(12))); - user.setUnlockFishBowl("1".equals(cursor.getString(13))); - user.setUnlockWritingBoard("1".equals(cursor.getString(14))); - user.setFinishWritingBoardTutorial("1".equals(cursor.getString(15))); + user.setAge((cursor.getString(2))); + user.setImage(cursor.getBlob(3)); + user.setNumStars(Integer.parseInt(cursor.getString(4))); + user.setFinishTutorial("1".equals(cursor.getString(5))); + user.setUnlockDrum("1".equals(cursor.getString(6))); + user.setUnlockMarimba("1".equals(cursor.getString(7))); + user.setUnlockDrawing("1".equals(cursor.getString(8))); + user.setUnlockColoring("1".equals(cursor.getString(9))); + user.setUnlockBlackboard("1".equals(cursor.getString(10))); + user.setFinishLauncherTutorial("1".equals(cursor.getString(11))); + user.setDisplayName(cursor.getString(12)); + user.setOpenLibrary("1".equals(cursor.getString(13))); + user.setOpenTools("1".equals(cursor.getString(14))); + user.setUnlockFishBowl("1".equals(cursor.getString(15))); + user.setUnlockWritingBoard("1".equals(cursor.getString(16))); + user.setFinishWritingBoardTutorial("1".equals(cursor.getString(17))); cursor.close(); } else { user = null; @@ -233,6 +247,8 @@ public User findUser(String username) { public ArrayList getUserList() { String[] projection = {COLUMN_ID, COLUMN_USERNAME, + COLUMN_AGE, + COLUMN_IMAGE, COLUMN_STARS, COLUMN_FINISH_TUTORIAL, COLUMN_UNLOCK_DRUM, @@ -254,28 +270,30 @@ public ArrayList getUserList() { null); ArrayList result = new ArrayList(); - if(cursor.moveToFirst()) { + if (cursor.moveToFirst()) { do { User user = new User(); user.setID(Integer.parseInt(cursor.getString(0))); user.setUserName(cursor.getString(1)); - user.setNumStars(Integer.parseInt(cursor.getString(2))); - user.setFinishTutorial("1".equals(cursor.getString(3))); - user.setUnlockDrum("1".equals(cursor.getString(4))); - user.setUnlockMarimba("1".equals(cursor.getString(5))); - user.setUnlockDrawing("1".equals(cursor.getString(6))); - user.setUnlockColoring("1".equals(cursor.getString(7))); - user.setUnlockBlackboard("1".equals(cursor.getString(8))); - user.setFinishLauncherTutorial("1".equals(cursor.getString(9))); - user.setDisplayName(cursor.getString(10)); - user.setOpenLibrary("1".equals(cursor.getString(11))); - user.setOpenTools("1".equals(cursor.getString(12))); - user.setUnlockFishBowl("1".equals(cursor.getString(13))); - user.setUnlockWritingBoard("1".equals(cursor.getString(14))); - user.setFinishWritingBoardTutorial("1".equals(cursor.getString(15))); + user.setAge((cursor.getString(2))); + user.setImage(cursor.getBlob(3)); + user.setNumStars(Integer.parseInt(cursor.getString(4))); + user.setFinishTutorial("1".equals(cursor.getString(5))); + user.setUnlockDrum("1".equals(cursor.getString(6))); + user.setUnlockMarimba("1".equals(cursor.getString(7))); + user.setUnlockDrawing("1".equals(cursor.getString(8))); + user.setUnlockColoring("1".equals(cursor.getString(9))); + user.setUnlockBlackboard("1".equals(cursor.getString(10))); + user.setFinishLauncherTutorial("1".equals(cursor.getString(11))); + user.setDisplayName(cursor.getString(12)); + user.setOpenLibrary("1".equals(cursor.getString(13))); + user.setOpenTools("1".equals(cursor.getString(14))); + user.setUnlockFishBowl("1".equals(cursor.getString(15))); + user.setUnlockWritingBoard("1".equals(cursor.getString(16))); + user.setFinishWritingBoardTutorial("1".equals(cursor.getString(17))); result.add(user); - } while(cursor.moveToNext()); + } while (cursor.moveToNext()); } cursor.close(); @@ -297,6 +315,18 @@ public boolean deleteUser(String username) { return result; } + public int lastRowId() { + String[] projection = {"last_insert_rowid()"}; + Cursor cursor = myCR.query(KitkitProvider.CONTENT_URI, projection, null, null, null); + if (cursor != null) { + cursor.moveToFirst(); + int lastRow = cursor.getInt(0); + cursor.close(); + return lastRow; + } + return 0; + } + public int numUser() { String[] projection = {"COUNT(*) AS COUNT"}; Cursor cursor = myCR.query(KitkitProvider.CONTENT_URI, @@ -370,6 +400,7 @@ public User getCurrentUser() { } String currentUserName = cursor.getString(0); + Log.d(TAG, "HelloWord" + currentUserName); User user = findUser(currentUserName); cursor.close(); return user; @@ -387,31 +418,37 @@ public String getCurrentUsername() { } String result = cursor.getString(0); cursor.close(); + Log.d(TAG, "HelloWord1" + result); return result; } public void updateUser(User user) { String selection = "username = \"" + user.getUserName() + "\""; - - ContentValues values = new ContentValues(); - values.put(COLUMN_USERNAME, user.getUserName()); - values.put(COLUMN_STARS, user.getNumStars()); - values.put(COLUMN_FINISH_TUTORIAL, user.isFinishTutorial()); - values.put(COLUMN_UNLOCK_DRUM, user.isUnlockDrum()); - values.put(COLUMN_UNLOCK_MARIMBA, user.isUnlockMarimba()); - values.put(COLUMN_UNLOCK_DRAWING, user.isUnlockDrawing()); - values.put(COLUMN_UNLOCK_COLORING, user.isUnlockColoring()); - values.put(COLUMN_UNLOCK_BLACKBOARD, user.isUnlockBlackboard()); - values.put(COLUMN_FINISH_LAUNCHER_TUTORIAL, user.isFinishLauncherTutorial()); - values.put(COLUMN_DISPLAY_NAME, user.getDisplayName()); - values.put(COLUMN_OPEN_LIBRARY, user.isOpenLibrary()); - values.put(COLUMN_OPEN_TOOLS, user.isOpenTools()); - values.put(COLUMN_UNLOCK_FISH_BOWL, user.isUnlockFishBowl()); - values.put(COLUMN_UNLOCK_WRITING_BOARD, user.isUnlockWritingBoard()); - values.put(COLUMN_FINISH_WRITING_BOARD_TUTORIAL, user.isFinishWritingBoardTutorial()); - Log.i("myLog", "value : " + values.toString()); - myCR.update(KitkitProvider.CONTENT_URI, values, selection, null); + try { + ContentValues values = new ContentValues(); + values.put(COLUMN_USERNAME, user.getUserName()); + values.put(COLUMN_AGE, user.getAge()); + values.put(COLUMN_IMAGE, user.getImage()); + values.put(COLUMN_STARS, user.getNumStars()); + values.put(COLUMN_FINISH_TUTORIAL, user.isFinishTutorial()); + values.put(COLUMN_UNLOCK_DRUM, user.isUnlockDrum()); + values.put(COLUMN_UNLOCK_MARIMBA, user.isUnlockMarimba()); + values.put(COLUMN_UNLOCK_DRAWING, user.isUnlockDrawing()); + values.put(COLUMN_UNLOCK_COLORING, user.isUnlockColoring()); + values.put(COLUMN_UNLOCK_BLACKBOARD, user.isUnlockBlackboard()); + values.put(COLUMN_FINISH_LAUNCHER_TUTORIAL, user.isFinishLauncherTutorial()); + values.put(COLUMN_DISPLAY_NAME, user.getDisplayName()); + values.put(COLUMN_OPEN_LIBRARY, user.isOpenLibrary()); + values.put(COLUMN_OPEN_TOOLS, user.isOpenTools()); + values.put(COLUMN_UNLOCK_FISH_BOWL, user.isUnlockFishBowl()); + values.put(COLUMN_UNLOCK_WRITING_BOARD, user.isUnlockWritingBoard()); + values.put(COLUMN_FINISH_WRITING_BOARD_TUTORIAL, user.isFinishWritingBoardTutorial()); + Log.i("myLog", "value : " + values.toString()); + myCR.update(KitkitProvider.CONTENT_URI, values, selection, null); + } catch (Exception e) { + Log.e(TAG, "error updating coin:-" + e.getMessage()); + } } public void uniqueInsertSntpResult(SntpResult sntpResult) { @@ -522,7 +559,7 @@ public ArrayList getFishes() { projection, selection, null, COLUMN_ID + " ASC"); - if(cursor.moveToFirst()) { + if (cursor.moveToFirst()) { do { Fish fish = new Fish(); fish._id = cursor.getInt(0); @@ -534,7 +571,7 @@ public ArrayList getFishes() { fish._position = cursor.getString(6); result.add(fish); - } while(cursor.moveToNext()); + } while (cursor.moveToNext()); } cursor.close(); diff --git a/kitkitschoollogger/kitkitlogger/src/main/java/com/maq/kitkitProvider/User.java b/kitkitschoollogger/kitkitlogger/src/main/java/com/maq/kitkitProvider/User.java index 7359f82a0..2556a8203 100644 --- a/kitkitschoollogger/kitkitlogger/src/main/java/com/maq/kitkitProvider/User.java +++ b/kitkitschoollogger/kitkitlogger/src/main/java/com/maq/kitkitProvider/User.java @@ -5,12 +5,14 @@ */ -public class User { +public class User { public static boolean DEFAULT_OPEN_LIBRARY = true; public static boolean DEFAULT_OPEN_TOOLS = true; private int _id; private String _username; + private String _age; + byte[] _image; private int _numStars; private boolean _finishTutorial; private boolean _unlockDrum; @@ -25,10 +27,14 @@ public class User { private boolean _unlockFishBowl; private boolean _unlockWritingBoard; private boolean _finishWritingBoardTutorial; + private int _gamesClearedInTotal_L; //English Progress + private int _gamesClearedInTotal_M; //Math Progress public User() { this._id = 0; this._username = "user"; + this._image = new byte[]{(byte) 204}; + this._age = "0"; this._numStars = 0; this._finishTutorial = false; this._unlockDrum = true; @@ -43,11 +49,38 @@ public User() { this._unlockFishBowl = false; this._unlockWritingBoard = false; this._finishWritingBoardTutorial = false; + this._gamesClearedInTotal_L = 0; + this._gamesClearedInTotal_M = 0; + } + + public User(String displayname, String age, byte[] image) { + this._id = 0; + this._username = displayname; + this._age = age; + this._image = image; + this._numStars = 0; + this._finishTutorial = false; + this._unlockDrum = true; + this._unlockMarimba = true; + this._unlockDrawing = true; + this._unlockColoring = true; + this._unlockBlackboard = true; + this._finishLauncherTutorial = false; + this._displayName = displayname; + this._openLibrary = DEFAULT_OPEN_LIBRARY; + this._openTools = DEFAULT_OPEN_TOOLS; + this._unlockFishBowl = false; + this._unlockWritingBoard = false; + this._finishWritingBoardTutorial = false; + this._gamesClearedInTotal_L = 0; + this._gamesClearedInTotal_M = 0; } public User(int id, String username, int stars) { this._id = id; this._username = username; + this._age = "0"; + this._image = new byte[]{(byte) 204}; this._numStars = stars; this._finishTutorial = false; this._unlockDrum = true; @@ -62,10 +95,14 @@ public User(int id, String username, int stars) { this._unlockFishBowl = false; this._unlockWritingBoard = false; this._finishWritingBoardTutorial = false; + this._gamesClearedInTotal_L = 0; + this._gamesClearedInTotal_M = 0; } public User(String productname, int stars) { this._username = productname; + this._age = "0"; + this._image = new byte[]{(byte) 204}; this._numStars = stars; this._finishTutorial = false; this._unlockDrum = true; @@ -80,6 +117,8 @@ public User(String productname, int stars) { this._unlockFishBowl = false; this._unlockWritingBoard = false; this._finishWritingBoardTutorial = false; + this._gamesClearedInTotal_L = 0; + this._gamesClearedInTotal_M = 0; } public void setID(int id) { @@ -98,6 +137,23 @@ public String getUserName() { return this._username; } + public void setAge(String age) { + this._age = age; + } + + public String getAge() { + return this._age; + } + + public void setImage(byte[] image){ + this._image = image; + } + + public byte[] getImage() { + return this._image; + } + + public void setNumStars(int stars) { this._numStars = stars; } @@ -136,11 +192,11 @@ public int getNumStars() { public boolean isFinishLauncherTutorial() {return this._finishLauncherTutorial;} public void setDisplayName(String name) { - _displayName = name; + this._displayName = name; } public String getDisplayName() { - return _displayName; + return this._displayName; } public void setOpenLibrary(boolean open) { @@ -171,4 +227,11 @@ public boolean isOpenTools() { public boolean isFinishWritingBoardTutorial() {return this._finishWritingBoardTutorial;} + public void setGamesClearedInTotal_L(int gamesClearedInTotal_L) {this._gamesClearedInTotal_L = gamesClearedInTotal_L; } + + public int getGamesClearedInTotal_L() {return this._gamesClearedInTotal_L; } + + public void setGamesClearedInTotal_M(int gamesClearedInTotal_M) {this._gamesClearedInTotal_M = gamesClearedInTotal_M; } + + public int getGamesClearedInTotal_M() {return this._gamesClearedInTotal_M; } } \ No newline at end of file diff --git a/kitkitschoollogger/kitkitlogger/src/main/res/values/colors.xml b/kitkitschoollogger/kitkitlogger/src/main/res/values/colors.xml new file mode 100644 index 000000000..80a6b784b --- /dev/null +++ b/kitkitschoollogger/kitkitlogger/src/main/res/values/colors.xml @@ -0,0 +1,5 @@ + + + #5067C0 + #D7145B + \ No newline at end of file diff --git a/launcher/app/build.gradle b/launcher/app/build.gradle index 60d604c46..87dc446f4 100644 --- a/launcher/app/build.gradle +++ b/launcher/app/build.gradle @@ -12,15 +12,15 @@ android { versionName "3.0.3" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } - + lintOptions { checkReleaseBuilds false // Or, if you prefer, you can continue to check for errors in release builds, // but continue the build even when errors are found: abortOnError false } - - signingConfigs { + + signingConfigs { debug { storeFile file('../debug.keystore') storePassword "android" @@ -37,7 +37,7 @@ android { } } - productFlavors { + productFlavors { englishUS { @@ -47,7 +47,7 @@ android { } } - + buildTypes { release { minifyEnabled false @@ -76,6 +76,7 @@ dependencies { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.android.support:appcompat-v7:25.1.0' + compile 'de.hdodenhof:circleimageview:3.0.0' compile 'com.android.support:design:25.1.0' compile 'com.android.support.constraint:constraint-layout:1.0.2' // compile 'com.jakewharton.timber:timber:4.6.0' diff --git a/launcher/app/src/main/AndroidManifest.xml b/launcher/app/src/main/AndroidManifest.xml index eceff3424..4a7237f41 100644 --- a/launcher/app/src/main/AndroidManifest.xml +++ b/launcher/app/src/main/AndroidManifest.xml @@ -3,23 +3,19 @@ xmlns:tools="http://schemas.android.com/tools" package="com.maq.xprize.kitkitlauncher.hindi"> - - - + > @@ -27,18 +23,24 @@ + + + android:theme="@style/Theme.AppCompat.Light.NoActionBar.FullScreen" /> + android:theme="@style/Theme.AppCompat.Light.NoActionBar.FullScreen" /> + android:theme="@style/Theme.AppCompat.Light.NoActionBar.FullScreen" /> + android:windowSoftInputMode="stateHidden" /> + android:windowSoftInputMode="stateHidden" /> + android:theme="@style/Theme.AppCompat.Light.NoActionBar.FullScreen" /> - - - - - + \ No newline at end of file diff --git a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/AdministrationActivity.java b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/AdministrationActivity.java index cb3e1b835..9ffbe0901 100644 --- a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/AdministrationActivity.java +++ b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/AdministrationActivity.java @@ -97,7 +97,7 @@ public void onResume() { } private void displayCurrentUser() { - Util.displayUserName(this, (TextView) findViewById(R.id.textView_currentUserId)); + // Util.displayUserName(this, (TextView) findViewById(R.id.textView_currentUserId)); } public void onClickReviewMode(View v) { diff --git a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/LauncherApplication.java b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/LauncherApplication.java index bdab8e327..f302add39 100644 --- a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/LauncherApplication.java +++ b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/LauncherApplication.java @@ -17,7 +17,6 @@ public class LauncherApplication extends Application { - private Thread.UncaughtExceptionHandler defaultExceptionHandler; private KitKitLogger logger; private KitkitDBHandler dbHandler; private User currentUser; @@ -60,45 +59,6 @@ public void onCreate() { logger = new KitKitLogger(getPackageName(), getApplicationContext()); dbHandler = new KitkitDBHandler(getApplicationContext()); - - if (dbHandler.numUser() == 0) { - //make users in DB - for (int i = 0; i < 100; i++) { - User user = new User("user" + i, 0); -// user.setNumStars(i*50); -// user.setFinishTutorial(true); - dbHandler.addUser(user); - - if (i == 0) { - dbHandler.setCurrentUser(user); - currentUser = user; - currentUsername = user.getUserName(); - } - } - - } - if (currentUser == null) { - currentUser = dbHandler.getCurrentUser(); - currentUsername = currentUser.getUserName(); - } - - defaultExceptionHandler = Thread.getDefaultUncaughtExceptionHandler(); - - // Setup handler for uncaught exceptions. - Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { - @Override - public void uncaughtException(Thread thread, Throwable e) { - handleUncaughtException(thread, e); - } - }); - } - - public void handleUncaughtException(Thread thread, Throwable e) { - e.printStackTrace(); // not all Android versions will print the stack trace automatically - - logger.extractLogToFile(); - - defaultExceptionHandler.uncaughtException(thread, e); } public KitKitLogger getLogger() { @@ -120,5 +80,4 @@ public String getCurrentUsername() { public KitkitDBHandler getDbHandler() { return dbHandler; } - -} +} \ No newline at end of file diff --git a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/MainActivity.java b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/MainActivity.java index 0362ea05a..934a85ba0 100644 --- a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/MainActivity.java +++ b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/MainActivity.java @@ -1,5 +1,6 @@ package com.maq.xprize.kitkitlauncher.hindi; +import android.app.Dialog; import android.app.DialogFragment; import android.app.KeyguardManager; import android.content.BroadcastReceiver; @@ -10,6 +11,8 @@ import android.content.SharedPreferences; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; import android.graphics.Rect; import android.graphics.Typeface; import android.graphics.drawable.Drawable; @@ -25,6 +28,7 @@ import android.preference.PreferenceManager; import android.provider.Settings; import android.support.annotation.RequiresApi; +import android.support.v4.view.ViewPager; import android.util.Log; import android.view.KeyEvent; import android.view.MotionEvent; @@ -32,6 +36,7 @@ import android.view.WindowManager; import android.widget.Button; import android.widget.ImageButton; +import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; @@ -42,6 +47,7 @@ import org.apache.commons.io.filefilter.WildcardFileFilter; +import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileFilter; import java.io.FileInputStream; @@ -73,10 +79,11 @@ public class MainActivity extends KitKitLoggerActivity implements PasswordDialog private static Thread ftpConnector = null; private static Thread logUploader = null; private static Thread imageUploader = null; - + Dialog selectUserDialog; private Context cntx = null; private Button mTitle; private TextView mTvUserName; + private ImageView picture; /*private _batteryinfo = new PowerConnectionReceiver() { @Override @@ -153,6 +160,8 @@ protected void onCreate(Bundle savedInstanceState) { Util.hideSystemUI(this); cntx = getBaseContext(); Util.setScale(this, findViewById(R.id.main_content)); + selectUserDialog = new Dialog(this); + selectUserDialog.setContentView(R.layout.activity_select_user); /*if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) { @@ -240,14 +249,26 @@ public void onClick(View view) { } }); + mTitle = findViewById(R.id.launcher_title_button); Typeface face = Typeface.createFromAsset(getAssets(), "TodoMainCurly.ttf"); mTitle.setTypeface(face); mTitle.setOnTouchListener(mLongTouchListener); + KitkitDBHandler dbHandler = new KitkitDBHandler(getApplicationContext()); + User user = dbHandler.getCurrentUser(); - mTvUserName = findViewById(R.id.textView_currentUserId); - mTvUserName.setOnTouchListener(mLongTouchListener); + picture = findViewById(R.id.userImage); + picture.setImageBitmap(converToBitmap(user.getImage())); + // mTvUserName = findViewById(R.id.textView_currentUserId); + picture.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Intent intent = new Intent(MainActivity.this, MultiUserActivity.class); + startActivity(intent); + finish(); + } + }); registerLockscreenReceiver(); @@ -255,7 +276,7 @@ public void onClick(View view) { Typeface f = Typeface.createFromAsset(getAssets(), "TodoMainCurly.ttf"); textViewCoinNum.setTypeface(f); - displayCurrentUser(); +// displayCurrentUser(); ftpclient = new FtpClient(); @@ -341,6 +362,12 @@ public void onWindowFocusChanged(boolean hasFocus) { } } + public Bitmap converToBitmap(byte[] image){ + ByteArrayInputStream imageStream = new ByteArrayInputStream(image); + Bitmap theImage = BitmapFactory.decodeStream(imageStream); + return theImage; + } + private void refreshUI() { User currentUser = ((LauncherApplication) getApplication()).getDbHandler().getCurrentUser(); @@ -788,7 +815,7 @@ private boolean uploadFtpImageFile(File file) { } private void displayCurrentUser() { - Util.displayUserName(this, mTvUserName); +// Util.displayUserName(this, mTvUserName); } public static File[] getImageFolderList(File folder) { diff --git a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/MultiUserActivity.java b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/MultiUserActivity.java new file mode 100644 index 000000000..86d5f01d0 --- /dev/null +++ b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/MultiUserActivity.java @@ -0,0 +1,403 @@ +package com.maq.xprize.kitkitlauncher.hindi; + +import android.app.Dialog; +import android.content.ActivityNotFoundException; +import android.content.Context; +import android.content.Intent; +import android.content.SharedPreferences; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.net.Uri; +import android.os.Build; +import android.provider.MediaStore; +import android.support.v4.view.ViewPager; +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; +import android.util.Log; +import android.view.View; +import android.view.Window; +import android.view.WindowManager; +import android.widget.ArrayAdapter; +import android.widget.Button; +import android.widget.EditText; +import android.widget.ImageButton; +import android.widget.ImageView; +import android.widget.Spinner; +import android.widget.TextView; +import android.widget.Toast; + +import com.maq.kitkitProvider.KitkitDBHandler; +import com.maq.kitkitProvider.User; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.util.ArrayList; + +public class MultiUserActivity extends AppCompatActivity { + + + Dialog addUserDialog; + EditText userAge; + Button submit; + ImageButton btnTakePic; + Button close; + static final int REQUEST_IMAGE_CAPTURE = 1; + static final int REQUEST_UPDATE = 2; + private byte imageInByte[]; + private Context schoolContext; + private SharedPreferences schoolPref; + public static Dialog selectUserDialog; + public static ViewPager imagePager; + public static int currentUserId; + Dialog editPurpose; + Button exit; + ImageView picture; + ImageButton pic; + Button takeBack; + EditText updateage; + Button update; + Button delete; + Button goback; + ArrayList users; + Button goToDashboard; + Button nextimage; + Button previousimage; + Dialog updateUserDialog; + int k =0; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + this.requestWindowFeature(Window.FEATURE_NO_TITLE); + this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); + if (Build.VERSION.SDK_INT > 11 && Build.VERSION.SDK_INT < 19) { // lower api + View v = this.getWindow().getDecorView(); + v.setSystemUiVisibility(View.GONE); + } else if (Build.VERSION.SDK_INT >= 19) { + //for new api versions. + View decorView = this.getWindow().getDecorView(); + int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; + decorView.setSystemUiVisibility(uiOptions); + } + setContentView(R.layout.activity_multi_user); + editPurpose = new Dialog(this); + editPurpose.setContentView(R.layout.sliding_images); + addUserDialog = new Dialog(this,android.R.style.Theme_Black_NoTitleBar_Fullscreen); + updateUserDialog =new Dialog(this,android.R.style.Theme_Black_NoTitleBar_Fullscreen); + updateUserDialog.setContentView(R.layout.activity_update_user); + selectUserDialog = new Dialog(this,android.R.style.Theme_Black_NoTitleBar_Fullscreen); + selectUserDialog.setContentView(R.layout.activity_select_user); + imagePager = (ViewPager) selectUserDialog.findViewById(R.id.viewpager); + + + } + + public Bitmap converToBitmap(byte[] image){ + ByteArrayInputStream imageStream = new ByteArrayInputStream(image); + Bitmap theImage = BitmapFactory.decodeStream(imageStream); + return theImage; + } + + public void editUser(View vv){ + updateage = (EditText) updateUserDialog.findViewById(R.id.updateAge); + update = (Button) updateUserDialog.findViewById(R.id.updateUser); + goback = (Button) updateUserDialog.findViewById(R.id.goBack); + delete = (Button) updateUserDialog.findViewById(R.id.deleteUser); + pic = (ImageButton) updateUserDialog.findViewById(R.id.updatepic); + takeBack = (Button) updateUserDialog.findViewById(R.id.back); + + + int edituserId = imagePager.getCurrentItem(); + KitkitDBHandler dbHandler = new KitkitDBHandler(getApplicationContext()); + User user = dbHandler.findUser(users.get(edituserId).getUserName()); + + pic.setImageBitmap(converToBitmap(user.getImage())); + updateage.setText(user.getAge()); + Window window = updateUserDialog.getWindow(); + window.setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT); + if (Build.VERSION.SDK_INT > 11 && Build.VERSION.SDK_INT < 19) { // lower api + View v = window.getDecorView(); + v.setSystemUiVisibility(View.GONE); + } else if (Build.VERSION.SDK_INT >= 19) { + //for new api versions. + View decorView = window.getDecorView(); + int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; + decorView.setSystemUiVisibility(uiOptions); + } + updateUserDialog.show(); + // Go Back listener + goback.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + updateUserDialog.dismiss(); + } + }); + + takeBack.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + updateUserDialog.dismiss(); + } + }); + + // Code to click picture + + pic.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + + Intent takepic = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); + startActivityForResult(takepic, REQUEST_UPDATE); + takepic.setType("image/*"); + takepic.putExtra("crop", "true"); + takepic.putExtra("aspectX", 0); + takepic.putExtra("aspectY", 0); + takepic.putExtra("outputX", 250); + takepic.putExtra("outputY", 200); + + } + }); + + update.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + int edituserId = imagePager.getCurrentItem(); + KitkitDBHandler dbHandler = new KitkitDBHandler(getApplicationContext()); + User user = dbHandler.findUser(users.get(edituserId).getUserName()); + if (user != null) { + user.setImage(imageInByte); + user.setAge(updateage.getText().toString()); + dbHandler.updateUser(user); + dbHandler.setCurrentUser(user); + } + + Intent intent = new Intent(MultiUserActivity.this, MainActivity.class); + startActivity(intent); + finish(); + + } + }); + + delete.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + KitkitDBHandler dbHandler = new KitkitDBHandler(getApplicationContext()); + int edituserId = imagePager.getCurrentItem(); + dbHandler.deleteUser(users.get(edituserId).getUserName()); + Intent intent = new Intent(MultiUserActivity.this, MultiUserActivity.class); + startActivity(intent); + finish(); + } + }); + } + + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + super.onActivityResult(requestCode, resultCode, data); + + if(resultCode == RESULT_OK){ + if(requestCode == REQUEST_IMAGE_CAPTURE) { + Bundle extras = data.getExtras(); + + if (extras != null) { + Bitmap yourImage = extras.getParcelable("data"); + picture.setImageBitmap(yourImage); + + ByteArrayOutputStream stream = new ByteArrayOutputStream(); + yourImage.compress(Bitmap.CompressFormat.PNG, 100, stream); + imageInByte = stream.toByteArray(); + Log.e("out before conversion", imageInByte.toString()); + } + } + else if(requestCode == REQUEST_UPDATE){ + Bundle extras = data.getExtras(); + + if (extras != null) { + Bitmap yourImage = extras.getParcelable("data"); + pic.setImageBitmap(yourImage); + + //convert Bitmap to byte + ByteArrayOutputStream stream = new ByteArrayOutputStream(); + yourImage.compress(Bitmap.CompressFormat.PNG, 100, stream); + imageInByte = stream.toByteArray(); + Log.e("out before conversion", imageInByte.toString()); + } + } + } + } + + public void AddAllUser(View v) { + + try { + addUserDialog.setContentView(R.layout.add_all_user); + close = (Button) addUserDialog.findViewById(R.id.close); + btnTakePic = (ImageButton) addUserDialog.findViewById(R.id.imageView); + userAge = (EditText) addUserDialog.findViewById(R.id.ageInput); + submit = (Button) addUserDialog.findViewById(R.id.register); + picture = (ImageView) addUserDialog.findViewById(R.id.updatepic); + + // to show the Add user dialog + addUserDialog.show(); + Window window = addUserDialog.getWindow(); + window.setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT); + if (Build.VERSION.SDK_INT > 11 && Build.VERSION.SDK_INT < 19) { // lower api + View vv = window.getDecorView(); + vv.setSystemUiVisibility(View.GONE); + } else if (Build.VERSION.SDK_INT >= 19) { + //for new api versions. + View decorView = window.getDecorView(); + int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; + decorView.setSystemUiVisibility(uiOptions); + } + + // Go Back listener + close.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + addUserDialog.dismiss(); + } + }); + + // Code to click picture + btnTakePic.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + + Intent takepic = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); + startActivityForResult(takepic, REQUEST_IMAGE_CAPTURE); + takepic.setType("image/*"); + takepic.putExtra("crop", "true"); + takepic.putExtra("aspectX", 0); + takepic.putExtra("aspectY", 0); + takepic.putExtra("outputX", 250); + takepic.putExtra("outputY", 200); + + } + }); + + //Register user. + submit.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + try { + int result = Integer.parseInt(userAge.getText().toString()); + KitkitDBHandler dbHandler = new KitkitDBHandler(getApplicationContext()); + if(dbHandler.numUser() == 0){ + k = 0; + } + else { + k = dbHandler.lastRowId(); + } + if (imageInByte != null) { + if( result>= 1) { + User user = new User("user-" + Integer.toString(k), userAge.getText().toString(), imageInByte); + dbHandler.addUser(user); + dbHandler.setCurrentUser(user); + + Intent intent = new Intent(MultiUserActivity.this, MainActivity.class); + startActivity(intent); + finish(); + } + //else{ + // Toast.makeText(getApplicationContext(), "Invalid Age",Toast.LENGTH_LONG).show(); + //} + } + else{ + Toast.makeText(getApplicationContext(), "Age or Image missing",Toast.LENGTH_LONG).show(); + } + + } catch (Exception e) { + + System.out.println("Error in adding user " + e.getMessage()); + } + } + }); + } + catch (Exception ne){ + Toast.makeText(this, "Age or Image missing",Toast.LENGTH_LONG).show(); + } + } + + public void SelectUser(View view) { + try { + KitkitDBHandler dbHandler = ((LauncherApplication) getApplication()).getDbHandler(); + users = dbHandler.getUserList(); + exit = (Button) selectUserDialog.findViewById(R.id.close); + goToDashboard = (Button) selectUserDialog.findViewById(R.id.gotodashboard); + previousimage = (Button) selectUserDialog.findViewById(R.id.previousImage); + nextimage = (Button) selectUserDialog.findViewById(R.id.nextImage); + + schoolContext = getApplicationContext().createPackageContext("com.maq.xprize.kitkitschool.hindi", 0); + schoolPref = schoolContext.getSharedPreferences("Cocos2dxPrefsFile", Context.MODE_PRIVATE); + for (User u:users) { + u.setGamesClearedInTotal_L(schoolPref.getInt((u.getUserName() + "_gamesClearedInTotal_en-US_L"), 0)); + u.setGamesClearedInTotal_M(schoolPref.getInt((u.getUserName() + "_gamesClearedInTotal_en-US_M"), 0)); + } + + imagePager.setAdapter(new SlidingPagerAdapter(MultiUserActivity.this, users)); + + selectUserDialog.show(); + Window window = selectUserDialog.getWindow(); + window.setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT); + if (Build.VERSION.SDK_INT > 11 && Build.VERSION.SDK_INT < 19) { // lower api + View v = window.getDecorView(); + v.setSystemUiVisibility(View.GONE); + } else if (Build.VERSION.SDK_INT >= 19) { + //for new api versions. + View decorView = window.getDecorView(); + int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; + decorView.setSystemUiVisibility(uiOptions); + } + + previousimage.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + imagePager.setCurrentItem(-1, true); + + } + }); + + nextimage.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + imagePager.setCurrentItem(+1,true); + } + }); + + goToDashboard.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + try { + KitkitDBHandler dbHandler = new KitkitDBHandler(getApplicationContext()); + currentUserId = imagePager.getCurrentItem(); + User user = dbHandler.findUser(users.get(currentUserId).getUserName()); + if(user != null){ + dbHandler.setCurrentUser(user); + } + Intent intent = new Intent(MultiUserActivity.this, MainActivity.class); + startActivity(intent); + finish(); + } + catch (Exception e) { + System.out.println("Error in setting User " + e.getMessage()); + } + } + }); + + exit.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + selectUserDialog.dismiss(); + } + }); + } + catch (Exception ne) { + Toast.makeText(this, "No user exist", + Toast.LENGTH_LONG).show(); + } + } + + private int getItem(int i) { + return imagePager.getCurrentItem() + i; + } +} \ No newline at end of file diff --git a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/SettingActivity.java b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/SettingActivity.java index 1a747c1db..548b832ec 100644 --- a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/SettingActivity.java +++ b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/SettingActivity.java @@ -450,6 +450,9 @@ public void onClickUserName(View v) { startActivity(i); } + + + public static class LanguageDialogFragment extends DialogFragment { @Override public Dialog onCreateDialog(Bundle savedInstanceState) { diff --git a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/SlidingPagerAdapter.java b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/SlidingPagerAdapter.java new file mode 100644 index 000000000..6dac86d0e --- /dev/null +++ b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/SlidingPagerAdapter.java @@ -0,0 +1,74 @@ +package com.maq.xprize.kitkitlauncher.hindi; + +import android.app.Dialog; +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.support.annotation.NonNull; +import android.support.constraint.ConstraintLayout; +import android.support.v4.view.PagerAdapter; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.TextView; + +import com.maq.kitkitProvider.KitkitDBHandler; +import com.maq.kitkitProvider.User; + +import java.io.ByteArrayInputStream; +import java.util.ArrayList; + +public class SlidingPagerAdapter extends PagerAdapter { + + private Context mContext; + private ArrayList mData; + private LayoutInflater layoutInflater; + Dialog dialog; + + public SlidingPagerAdapter(@NonNull Context context, ArrayList users) { + + mContext = context; + mData = users; + + if (mData != null && mData.get(0).getUserName().equals("user0")) { + User user0 = mData.remove(0); + mData.add(user0); + } + } + @Override + public int getCount() { + return mData.size(); + } + @Override + public Object instantiateItem(ViewGroup container, int position) { + User item = mData.get(position); + layoutInflater = (LayoutInflater) mContext.getSystemService(mContext.LAYOUT_INFLATER_SERVICE); + View view = layoutInflater.inflate(R.layout.sliding_images,container,false); + ImageView imageView = (ImageView) view.findViewById(R.id.finaluserimage); + TextView username = (TextView) view.findViewById(R.id.userN); + TextView english = (TextView) MultiUserActivity.selectUserDialog.findViewById(R.id.engprogress); + TextView math = (TextView) MultiUserActivity.selectUserDialog.findViewById(R.id.mathprogress); + imageView.setImageBitmap(converToBitmap(item.getImage())); + username.setText(item.getDisplayName()); + english.setText(String.valueOf(item.getGamesClearedInTotal_L())); + math.setText(String.valueOf(item.getGamesClearedInTotal_M())); + container.addView(view); + return view; + } + @Override + public boolean isViewFromObject(View view, Object object) { + return view.equals(object); + } + @Override + public void destroyItem(ViewGroup container, int position, Object object) { + container.removeView((ConstraintLayout)object); + } + + public Bitmap converToBitmap(byte[] image){ + ByteArrayInputStream imageStream = new ByteArrayInputStream(image); + Bitmap theImage = BitmapFactory.decodeStream(imageStream); + return theImage; + } + +} diff --git a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/UserNameActivity.java b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/UserNameActivity.java index 8db89d6d8..1903b601f 100644 --- a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/UserNameActivity.java +++ b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/UserNameActivity.java @@ -1,8 +1,12 @@ package com.maq.xprize.kitkitlauncher.hindi; +import android.content.Context; +import android.content.SharedPreferences; +import android.content.pm.PackageManager; import android.graphics.Color; import android.graphics.Rect; import android.os.Bundle; +import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.widget.TextView; @@ -23,6 +27,9 @@ public class UserNameActivity extends KitKitLoggerActivity { private TextView mTvUserName; private View mVRename; + private Context schoolContext; + private SharedPreferences schoolPref; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -38,10 +45,9 @@ public void onClick(View v) { } }); - mTvUserNo = (TextView) findViewById(R.id.tvUserNo); - mTvUserName = (TextView) findViewById(R.id.tvUserName); + mTvUserNo = findViewById(R.id.tvUserNo); + mTvUserName = findViewById(R.id.tvUserName); mTvUserName.setOnClickListener(mOnClickListener); - mVRename = findViewById(R.id.vRename); mVRename.setOnClickListener(mOnClickListener); findViewById(R.id.vSelectUserNumber).setOnClickListener(mOnClickListener); @@ -84,16 +90,10 @@ public void refreshUI() { User user = ((LauncherApplication) getApplication()).getDbHandler().getCurrentUser(); mTvUserNo.setText(getString(R.string.user_no) + " " + user.getUserName().replace("user", "")); String displayName = user.getDisplayName(); - if (displayName == null || displayName.isEmpty()) { - mTvUserName.setBackgroundResource(R.drawable.rounded_line_blue); - mTvUserName.setText(""); - mVRename.setVisibility(View.INVISIBLE); - - } else { - mTvUserName.setBackgroundColor(Color.WHITE); - mTvUserName.setText(displayName); - mVRename.setVisibility(View.VISIBLE); - } + + mTvUserName.setBackgroundColor(Color.WHITE); + mTvUserName.setText(displayName); + mVRename.setVisibility(View.VISIBLE); } private View.OnClickListener mOnClickListener = new View.OnClickListener() { @@ -125,8 +125,7 @@ public void onSubmit(String name) { registerUserDialog.show(); } break; - case R.id.vSelectUserNumber: - { + case R.id.vSelectUserNumber: { SelectNumberDialog selectNumberDialog = new SelectNumberDialog(UserNameActivity.this, SelectNumberDialog.MODE.USER_NO, new SelectNumberDialog.Callback() { @Override public void onSelectedNumber(int number) { @@ -142,15 +141,24 @@ public void onSelectedNumber(int number) { selectNumberDialog.show(); } - break; - case R.id.vUserNameList: - { + break; + case R.id.vUserNameList: { KitkitDBHandler dbHandler = ((LauncherApplication) getApplication()).getDbHandler(); ArrayList users = dbHandler.getUserList(); + try { + schoolContext = getApplicationContext().createPackageContext("com.maq.xprize.kitkitschool.hindi", 0); + schoolPref = schoolContext.getSharedPreferences("Cocos2dxPrefsFile", Context.MODE_PRIVATE); + for (User u : users) { + u.setGamesClearedInTotal_L(schoolPref.getInt((u.getUserName() + "_gamesClearedInTotal_en-US_L"), 0)); + u.setGamesClearedInTotal_M(schoolPref.getInt((u.getUserName() + "_gamesClearedInTotal_en-US_M"), 0)); + } + } catch (PackageManager.NameNotFoundException ne) { + Log.e(TAG, ne.toString()); + } UserNameListDialog userNameListDialog = new UserNameListDialog(UserNameActivity.this, users); userNameListDialog.show(); } - break; + break; } } }; diff --git a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/UserNameListDialog.java b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/UserNameListDialog.java index b788ede39..4f88b3587 100644 --- a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/UserNameListDialog.java +++ b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/UserNameListDialog.java @@ -43,7 +43,7 @@ public UserNameListDialog(@NonNull Context context, ArrayList users) { setContentView(R.layout.dialog_user_list); Util.setScale(((Activity) context), findViewById(R.id.root)); - mRecyclerView = (RecyclerView) findViewById(R.id.recycler_view); + mRecyclerView = findViewById(R.id.recycler_view); mRecyclerView.setLayoutManager(new LinearLayoutManager(mContext, LinearLayoutManager.VERTICAL, false)); mRecyclerView.setAdapter(new RecyclerAdapter()); @@ -63,8 +63,6 @@ public void onClick(View view) { }); } - //////////////////////////////////////////////////////////////////////////////// - public class RecyclerAdapter extends RecyclerView.Adapter { @Override @@ -78,6 +76,10 @@ public void onBindViewHolder(ViewHolder holder, final int position) { User item = mData.get(position); holder.mTvNumber.setText(item.getUserName()); holder.mTvName.setText(item.getDisplayName()); + holder.mTvEnglish.setText(String.valueOf(item.getGamesClearedInTotal_L())); + holder.mTvMath.setText(String.valueOf(item.getGamesClearedInTotal_M())); + holder.mTvTotal.setText(String.valueOf(item.getGamesClearedInTotal_L() + item.getGamesClearedInTotal_M())); + holder.mTvCoins.setText(String.valueOf(item.getNumStars())); holder.itemView.setBackgroundColor(position % 2 == 0 ? Color.LTGRAY : 0xd5d5d5); } @@ -92,11 +94,19 @@ public int getItemCount() { public class ViewHolder extends RecyclerView.ViewHolder { private TextView mTvNumber; private TextView mTvName; + private TextView mTvEnglish; + private TextView mTvMath; + private TextView mTvTotal; + private TextView mTvCoins; public ViewHolder(View itemView) { super(itemView); - mTvNumber = (TextView) itemView.findViewById(R.id.tv_number); - mTvName = (TextView) itemView.findViewById(R.id.tv_name); + mTvNumber = itemView.findViewById(R.id.tv_number); + mTvName = itemView.findViewById(R.id.tv_name); + mTvEnglish = itemView.findViewById(R.id.tv_english); + mTvMath = itemView.findViewById(R.id.tv_math); + mTvTotal = itemView.findViewById(R.id.tv_total); + mTvCoins = itemView.findViewById(R.id.tv_coins); } } } diff --git a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/Util.java b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/Util.java index d24820a1d..68714160e 100644 --- a/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/Util.java +++ b/launcher/app/src/main/java/com/maq/xprize/kitkitlauncher/hindi/Util.java @@ -191,7 +191,7 @@ public static void displayUserName(Activity activity, TextView tvUserName) { result += ("-t" + tabletNumber); } - tvUserName.setText(result); +// tvUserName.setText(displayName); } else { tvUserName.setText(""); @@ -227,4 +227,4 @@ public static void copyDBFileToSDCard(Context context) { System.out.println("Can't copy database. Database not created."); } } -} +} \ No newline at end of file diff --git a/launcher/app/src/main/res/drawable/adduser.png b/launcher/app/src/main/res/drawable/adduser.png new file mode 100644 index 000000000..6ce12f1bc Binary files /dev/null and b/launcher/app/src/main/res/drawable/adduser.png differ diff --git a/launcher/app/src/main/res/drawable/back_arrow_inactive.png b/launcher/app/src/main/res/drawable/back_arrow_inactive.png new file mode 100644 index 000000000..5f976a20e Binary files /dev/null and b/launcher/app/src/main/res/drawable/back_arrow_inactive.png differ diff --git a/launcher/app/src/main/res/drawable/bestplus.png b/launcher/app/src/main/res/drawable/bestplus.png new file mode 100644 index 000000000..31314cbd9 Binary files /dev/null and b/launcher/app/src/main/res/drawable/bestplus.png differ diff --git a/launcher/app/src/main/res/drawable/bestuser.png b/launcher/app/src/main/res/drawable/bestuser.png new file mode 100644 index 000000000..b71a9c2c7 Binary files /dev/null and b/launcher/app/src/main/res/drawable/bestuser.png differ diff --git a/launcher/app/src/main/res/drawable/camera.png b/launcher/app/src/main/res/drawable/camera.png new file mode 100644 index 000000000..c92fec7f7 Binary files /dev/null and b/launcher/app/src/main/res/drawable/camera.png differ diff --git a/launcher/app/src/main/res/drawable/circle.xml b/launcher/app/src/main/res/drawable/circle.xml new file mode 100644 index 000000000..a81942446 --- /dev/null +++ b/launcher/app/src/main/res/drawable/circle.xml @@ -0,0 +1,18 @@ + + + + + + + \ No newline at end of file diff --git a/launcher/app/src/main/res/drawable/circlr_shape.xml b/launcher/app/src/main/res/drawable/circlr_shape.xml new file mode 100644 index 000000000..b6b275063 --- /dev/null +++ b/launcher/app/src/main/res/drawable/circlr_shape.xml @@ -0,0 +1,11 @@ + + + + + + \ No newline at end of file diff --git a/launcher/app/src/main/res/drawable/edit.png b/launcher/app/src/main/res/drawable/edit.png new file mode 100644 index 000000000..0b111f4ac Binary files /dev/null and b/launcher/app/src/main/res/drawable/edit.png differ diff --git a/launcher/app/src/main/res/drawable/editround.png b/launcher/app/src/main/res/drawable/editround.png new file mode 100644 index 000000000..d97f9f7c2 Binary files /dev/null and b/launcher/app/src/main/res/drawable/editround.png differ diff --git a/launcher/app/src/main/res/drawable/kitkit_background.png b/launcher/app/src/main/res/drawable/kitkit_background.png new file mode 100644 index 000000000..10e415b46 Binary files /dev/null and b/launcher/app/src/main/res/drawable/kitkit_background.png differ diff --git a/launcher/app/src/main/res/drawable/left_arrow.png b/launcher/app/src/main/res/drawable/left_arrow.png new file mode 100644 index 000000000..0ee64d647 Binary files /dev/null and b/launcher/app/src/main/res/drawable/left_arrow.png differ diff --git a/launcher/app/src/main/res/drawable/path.png b/launcher/app/src/main/res/drawable/path.png new file mode 100644 index 000000000..3c0334f79 Binary files /dev/null and b/launcher/app/src/main/res/drawable/path.png differ diff --git a/launcher/app/src/main/res/drawable/right_arrow.png b/launcher/app/src/main/res/drawable/right_arrow.png new file mode 100644 index 000000000..57ca407a7 Binary files /dev/null and b/launcher/app/src/main/res/drawable/right_arrow.png differ diff --git a/launcher/app/src/main/res/drawable/roundbutton.xml b/launcher/app/src/main/res/drawable/roundbutton.xml new file mode 100644 index 000000000..6223937fe --- /dev/null +++ b/launcher/app/src/main/res/drawable/roundbutton.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/launcher/app/src/main/res/drawable/roundedit.xml b/launcher/app/src/main/res/drawable/roundedit.xml new file mode 100644 index 000000000..c89bb9ed1 --- /dev/null +++ b/launcher/app/src/main/res/drawable/roundedit.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/launcher/app/src/main/res/drawable/roundtextview.xml b/launcher/app/src/main/res/drawable/roundtextview.xml new file mode 100644 index 000000000..d15da13fa --- /dev/null +++ b/launcher/app/src/main/res/drawable/roundtextview.xml @@ -0,0 +1,12 @@ + + + + + + + + + \ No newline at end of file diff --git a/launcher/app/src/main/res/drawable/selectuser.png b/launcher/app/src/main/res/drawable/selectuser.png new file mode 100644 index 000000000..0aaac35ca Binary files /dev/null and b/launcher/app/src/main/res/drawable/selectuser.png differ diff --git a/launcher/app/src/main/res/drawable/user_name_list_selector.xml b/launcher/app/src/main/res/drawable/user_name_list_selector.xml deleted file mode 100755 index 7460af6c6..000000000 --- a/launcher/app/src/main/res/drawable/user_name_list_selector.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/launcher/app/src/main/res/layout/activity_administration.xml b/launcher/app/src/main/res/layout/activity_administration.xml index bacdc69f5..87c902f1d 100755 --- a/launcher/app/src/main/res/layout/activity_administration.xml +++ b/launcher/app/src/main/res/layout/activity_administration.xml @@ -52,7 +52,8 @@ android:layout_marginRight="30px" android:text="@string/user_default_id" android:textColor="#ffffff" - android:textSize="60px" /> + android:textSize="60px" + tools:visibility="invisible" /> diff --git a/launcher/app/src/main/res/layout/activity_main.xml b/launcher/app/src/main/res/layout/activity_main.xml index 638f1476c..2d8a18576 100644 --- a/launcher/app/src/main/res/layout/activity_main.xml +++ b/launcher/app/src/main/res/layout/activity_main.xml @@ -15,20 +15,17 @@ android:background="@drawable/launcher_topbar" android:elevation="8px"> - + android:gravity="left" /> +