diff --git a/.idea/.name b/.idea/.name
deleted file mode 100644
index c6e7f40..0000000
--- a/.idea/.name
+++ /dev/null
@@ -1 +0,0 @@
-StormWaterUtilityAndroid
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 6b5108f..cf30795 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -12,11 +12,7 @@
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/AgencyID.java b/app/src/main/java/com/sf/stormwaterutilityandroid/AgencyID.java
new file mode 100644
index 0000000..c904463
--- /dev/null
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/AgencyID.java
@@ -0,0 +1,13 @@
+package com.sf.stormwaterutilityandroid;
+
+public class AgencyID {
+ private String agencyID;
+
+ public AgencyID(String agencyID) {
+ this.agencyID = agencyID;
+ }
+
+ public String getAgencyID() {
+ return agencyID;
+ }
+}
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/Login.java b/app/src/main/java/com/sf/stormwaterutilityandroid/Login.java
index e2fc838..3461202 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/Login.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/Login.java
@@ -18,6 +18,8 @@
import com.google.android.gms.tasks.Task;
import com.google.firebase.auth.AuthResult;
import com.google.firebase.auth.FirebaseAuth;
+import com.google.firebase.firestore.DocumentSnapshot;
+import com.google.firebase.firestore.FirebaseFirestore;
import com.sf.stormwaterutilityandroid.WaterWay.WaterWayNav;
public class Login extends AppCompatActivity {
@@ -55,7 +57,7 @@ public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
setContentView(R.layout.activity_login);
inputEmail = findViewById(R.id.email);
inputPassword = findViewById(R.id.password);
- progressBar = findViewById(R.id.progressBar);
+ progressBar = findViewById(R.id.progressBar3);
btnSignup = findViewById(R.id.btn_signup);
btnLogin = findViewById(R.id.btn_login);
btnReset = findViewById(R.id.btn_reset_password);
@@ -80,6 +82,7 @@ public void onClick(View v) {
btnLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
+
String email = inputEmail.getText().toString();
final String password = inputPassword.getText().toString();
@@ -113,11 +116,23 @@ public void onComplete(@NonNull Task task) {
}
} else {
if (auth.getCurrentUser().isEmailVerified()) {
- Intent intent = new Intent(Login.this, WaterWayNav.class);
+ FirebaseFirestore.getInstance().collection("Users").document(auth.getUid()).get().addOnCompleteListener(new OnCompleteListener() {
+ @Override
+ public void onComplete(@NonNull Task task) {
+ if (task.isSuccessful()) {
+ if (task.getResult().exists()) {
+ String agencyID = task.getResult().get("agencyID").toString();
+ AgencyID id = new AgencyID(agencyID);
+ }
+ }
+ }
+ });
+ Intent intent = new Intent(Login.this, MainMenu.class);
startActivity(intent);
progressBar.setVisibility(View.INVISIBLE);
finish();
} else {
+ progressBar.setVisibility(View.INVISIBLE);
AlertDialog.Builder builder;
builder = new AlertDialog.Builder(Login.this);
//builder.setIcon(R.drawable.open_browser);
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/MainMenu.java b/app/src/main/java/com/sf/stormwaterutilityandroid/MainMenu.java
index 6dd4920..75475d3 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/MainMenu.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/MainMenu.java
@@ -1,6 +1,7 @@
package com.sf.stormwaterutilityandroid;
import androidx.appcompat.app.AppCompatActivity;
+import androidx.cardview.widget.CardView;
import android.content.Intent;
import android.os.Bundle;
@@ -12,15 +13,40 @@
public class MainMenu extends AppCompatActivity {
Button launchWWF,launchCF, launchSettings;
+CardView cvWaterWay, cvConstruction, cvSettings;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main_menu);
- launchWWF = findViewById(R.id.wwf);
- launchCF = findViewById(R.id.cf);
- launchSettings = findViewById(R.id.settings);
- launchSettings.setOnClickListener(new View.OnClickListener() {
+ setContentView(R.layout.activity_menu2);
+ cvWaterWay = findViewById(R.id.cvWaterWay);
+ cvConstruction = findViewById(R.id.cvConstructionForm);
+ cvSettings = findViewById(R.id.cvSettings);
+ cvWaterWay.setOnClickListener(new View.OnClickListener() {
@Override
+ public void onClick(View v) {
+ Intent intent = new Intent(MainMenu.this, WaterWayNav.class);
+ startActivity(intent);
+ }
+ });
+ cvConstruction.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Intent intent = new Intent(MainMenu.this, ConstructionNav.class);
+ startActivity(intent);
+ }
+ });
+ cvSettings.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Intent intent = new Intent(MainMenu.this, Settings.class);
+ startActivity(intent);
+ }
+ });
+ // launchWWF = findViewById(R.id.wwf);
+ // launchCF = findViewById(R.id.cf);
+ // launchSettings = findViewById(R.id.settings);
+ // launchSettings.setOnClickListener(new View.OnClickListener() {
+ /* @Override
public void onClick(View v) {
Intent intent = new Intent(MainMenu.this, Settings.class);
startActivity(intent);
@@ -44,5 +70,6 @@ public void onClick(View v) {
}
});
+ */
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/SignUp.java b/app/src/main/java/com/sf/stormwaterutilityandroid/SignUp.java
index e0eaa03..48b04ae 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/SignUp.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/SignUp.java
@@ -1,5 +1,7 @@
package com.sf.stormwaterutilityandroid;
+import android.content.DialogInterface;
+import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
@@ -9,6 +11,7 @@
import android.widget.Toast;
import androidx.annotation.NonNull;
+import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import com.google.android.gms.tasks.OnCompleteListener;
@@ -34,16 +37,14 @@ protected void onCreate(Bundle savedInstanceState) {
//Get Firebase auth instance
auth = FirebaseAuth.getInstance();
- btnSignIn = findViewById(R.id.sign_in_button);
- btnSignUp = findViewById(R.id.sign_up_button);
+ btnSignUp = findViewById(R.id.signUp);
+
inputEmail = findViewById(R.id.email);
inputPassword = findViewById(R.id.password);
progressBar = findViewById(R.id.progressBar);
btnResetPassword = findViewById(R.id.btn_reset_password);
- inputGrade = findViewById(R.id.grade);
inputName = findViewById(R.id.name);
- inputID = findViewById(R.id.studentID);
- inputHR = findViewById(R.id.homeroom);
+ progressBar = findViewById(R.id.progressBar2);
/* btnResetPassword.setOnClickListener(new View.OnClickListener() {
@Override
@@ -52,12 +53,6 @@ public void onClick(View v) {
}
});
*/
- btnSignIn.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- finish();
- }
- });
btnSignUp.setOnClickListener(new View.OnClickListener() {
@Override
@@ -66,14 +61,13 @@ public void onClick(View v) {
final String email = inputEmail.getText().toString().trim();
final String password = inputPassword.getText().toString().trim();
final String name = inputName.getText().toString().trim();
- final String grade = inputGrade.getText().toString().trim();
- final String studentID = inputID.getText().toString().trim();
- final String homeroom = inputHR.getText().toString().trim();
+
if (TextUtils.isEmpty(email)) {
Toast.makeText(getApplicationContext(), "Enter a email address!", Toast.LENGTH_SHORT).show();
return;
}
-
+ int index = email.indexOf("@");
+ String agencyID = email.substring(index + 1);
if (TextUtils.isEmpty(password)) {
Toast.makeText(getApplicationContext(), "Enter a password!", Toast.LENGTH_SHORT).show();
return;
@@ -83,12 +77,21 @@ public void onClick(View v) {
Toast.makeText(getApplicationContext(), "Password too short, enter minimum 6 characters!", Toast.LENGTH_SHORT).show();
return;
}
- if (TextUtils.isEmpty(homeroom)) {
- Toast.makeText(getApplicationContext(), "Enter a homeroom!", Toast.LENGTH_SHORT).show();
- return;
- }
- if (TextUtils.isEmpty(studentID)) {
- Toast.makeText(getApplicationContext(), "Enter a StudentID!", Toast.LENGTH_SHORT).show();
+
+ if (!email.contains("in.gov") && !email.contains("purdue.edu")) {
+ //invalid email
+ AlertDialog.Builder builder;
+ builder = new AlertDialog.Builder(SignUp.this);
+ builder.setTitle("Incorrect Email");
+ builder.setMessage("You are not allowed to create an email with your current domain");
+ builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ dialog.dismiss();
+ }
+ });
+
+ builder.setCancelable(true);
+ builder.show();
return;
}
@@ -109,8 +112,10 @@ public void onComplete(@NonNull Task task) {
} else {
final String create_uid = FirebaseAuth.getInstance().getUid();
final FirebaseUser user2 = auth.getCurrentUser();
- user2.sendEmailVerification();
- User user = new User(name,email,create_uid);
+ // user2.sendEmailVerification();
+
+ System.out.println(agencyID);
+ User user = new User(name, email, create_uid, agencyID);
FirebaseFirestore.getInstance().collection("Users")
.document(create_uid)
@@ -122,10 +127,23 @@ public void onSuccess(Void aVoid) {
user2.sendEmailVerification();
-
// progressBar.setVisibility(View.GONE);
// Toast.makeText(SignupActivity.this, getString(R.string.registration_success), Toast.LENGTH_LONG).show();
- // startActivity(new Intent(SignupActivity.this, LoginActivity.class));
+ AlertDialog.Builder builder;
+ builder = new AlertDialog.Builder(SignUp.this);
+ builder.setTitle("Account created");
+ builder.setMessage("Your account has successfully been created. An email has been sent, so you can verify your email. You must verify your email before logging in.");
+ builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ startActivity(new Intent(SignUp.this, Login.class));
+ dialog.dismiss();
+ }
+ });
+
+ builder.setCancelable(true);
+ builder.show();
+
+
// finish();
}
@@ -149,7 +167,6 @@ public void onFailure(@NonNull Exception e) {
}
-
@Override
protected void onResume() {
super.onResume();
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/User.java b/app/src/main/java/com/sf/stormwaterutilityandroid/User.java
index 5671a58..efeb955 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/User.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/User.java
@@ -1,12 +1,13 @@
package com.sf.stormwaterutilityandroid;
class User {
- String name, email, uid;
+ String name, email, uid,agencyID;
- public User(String name, String email, String uid) {
+ public User(String name, String email, String uid, String agencyID) {
this.name = name;
this.email = email;
this.uid = uid;
+ this.agencyID = agencyID;
}
public String getName() {
@@ -32,4 +33,12 @@ public String getUid() {
public void setUid(String uid) {
this.uid = uid;
}
+
+ public String getAgencyID() {
+ return agencyID;
+ }
+
+ public void setAgencyID(String agencyID) {
+ this.agencyID = agencyID;
+ }
}
diff --git a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WQI.java b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WQI.java
index 72d7601..30c36f5 100644
--- a/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WQI.java
+++ b/app/src/main/java/com/sf/stormwaterutilityandroid/WaterWay/WQI.java
@@ -31,5 +31,5 @@ public static double getWQI(double tempChange, double turbidity, double pH, doub
}
-}
+
diff --git a/app/src/main/res/drawable/construction.png b/app/src/main/res/drawable/construction.png
new file mode 100644
index 0000000..62c9edb
Binary files /dev/null and b/app/src/main/res/drawable/construction.png differ
diff --git a/app/src/main/res/drawable/construction2.png b/app/src/main/res/drawable/construction2.png
new file mode 100644
index 0000000..6f9402b
Binary files /dev/null and b/app/src/main/res/drawable/construction2.png differ
diff --git a/app/src/main/res/drawable/settings.png b/app/src/main/res/drawable/settings.png
new file mode 100644
index 0000000..e9500e0
Binary files /dev/null and b/app/src/main/res/drawable/settings.png differ
diff --git a/app/src/main/res/drawable/settings2.png b/app/src/main/res/drawable/settings2.png
new file mode 100644
index 0000000..5b99d80
Binary files /dev/null and b/app/src/main/res/drawable/settings2.png differ
diff --git a/app/src/main/res/drawable/settings3.png b/app/src/main/res/drawable/settings3.png
new file mode 100644
index 0000000..ddb40d4
Binary files /dev/null and b/app/src/main/res/drawable/settings3.png differ
diff --git a/app/src/main/res/drawable/water.png b/app/src/main/res/drawable/water.png
new file mode 100644
index 0000000..9280884
Binary files /dev/null and b/app/src/main/res/drawable/water.png differ
diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml
index 61b3328..904aa6e 100644
--- a/app/src/main/res/layout/activity_login.xml
+++ b/app/src/main/res/layout/activity_login.xml
@@ -16,8 +16,10 @@
android:padding="@dimen/activity_horizontal_margin"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent">
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintVertical_bias="1.0">
+ android:textColor="@android:color/white" />
+ android:textColor="@android:color/white"
+ />
@@ -86,18 +90,14 @@
android:textColor="@android:color/white"
android:textSize="15dp"
tools:ignore="SpUsage" />
-
-
+
+
diff --git a/app/src/main/res/layout/activity_menu2.xml b/app/src/main/res/layout/activity_menu2.xml
new file mode 100644
index 0000000..b034775
--- /dev/null
+++ b/app/src/main/res/layout/activity_menu2.xml
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_reset_password.xml b/app/src/main/res/layout/activity_reset_password.xml
index 211baa5..2f05b67 100644
--- a/app/src/main/res/layout/activity_reset_password.xml
+++ b/app/src/main/res/layout/activity_reset_password.xml
@@ -69,7 +69,7 @@
android:layout_marginTop="20dip"
android:background="@color/colorAccent"
android:text="@string/btn_reset_password"
- android:textColor="@android:color/black" />
+ android:textColor="@color/White" />
+ android:textColor="@color/White" />
diff --git a/app/src/main/res/layout/activity_sign_up.xml b/app/src/main/res/layout/activity_sign_up.xml
index ff22e10..8524baa 100644
--- a/app/src/main/res/layout/activity_sign_up.xml
+++ b/app/src/main/res/layout/activity_sign_up.xml
@@ -26,8 +26,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="30dp"
- android:src="@drawable/ic_launcher_background"
- />
+ android:src="@drawable/ic_launcher_background" />
-
-
-
-
+ android:textColor="@android:color/white"
-
+ android:textColorHint="@color/white" />
+ android:textColor="@android:color/white"
+ android:textColorHint="@color/white" />
-
+ android:textColor="@android:color/white"
+ android:textColorHint="@color/white" />
-
-
-
-
+ android:id="@+id/progressBar2"
+ style="?android:attr/progressBarStyle"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center" />
+