Commit 3e17c83d authored by ruvisenarthna's avatar ruvisenarthna

Create a method to generate 4 digit OTP number and verification UI

parent f18812f9
......@@ -38,7 +38,7 @@ android {
// python.exe file path *********** please change this according to your file path
python{
buildPython "C:/Users/Cool/AppData/Local/Programs/Python/Python39/python.exe"
buildPython "C:/Users/Ruvi/AppData/Local/Programs/Python/Python39/python.exe"
}
}
......@@ -82,7 +82,7 @@ dependencies {
implementation 'de.hdodenhof:circleimageview:3.1.0'
implementation 'com.theartofdev.edmodo:android-image-cropper:2.6.0'
implementation 'com.opencsv:opencsv:4.6'
//implementation 'javax.mail:javax.mail-api:1.5.3'
......
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.elearning.probabilityandstatisticsanalyserandeducator" >
package="com.elearning.probabilityandstatisticsanalyserandeducator">
<uses-feature
android:name="android.hardware.camera2"
......@@ -31,6 +31,17 @@
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-feature
android:name="android.hardware.camera2"
android:required="true" />
<uses-feature
android:name="android.hardware.camera2"
android:required="true" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@mipmap/app_logo"
......@@ -38,12 +49,11 @@
android:requestLegacyExternalStorage="true"
android:roundIcon="@mipmap/app_logo"
android:supportsRtl="true"
android:theme="@style/Theme.ProbabilityAndStatisticsAnalyserAndEducator" >
android:theme="@style/Theme.ProbabilityAndStatisticsAnalyserAndEducator">
<activity android:name=".verification_screen"
android:theme="@style/Theme.AppCompat.Light.NoActionBar"></activity>
<activity android:name=".inputMethod.StandardDeviationInputMethod" />
<activity android:name=".calculationfunction.StandaradDeviationCalculation"/>
<activity android:name=".calculationfunction.StandaradDeviationCalculation" />
<activity android:name=".inputMethod.ProbabilityDistributionsIM" />
<activity android:name=".adaptiveLearning.QuizActivity" />
<activity android:name=".adaptiveLearning.StartingScreen" />
......@@ -53,7 +63,6 @@
<activity android:name=".Sign_up_part2" />
<activity android:name=".calculationfunction.DescriptiveStatisticsCalcuation" />
<activity android:name=".inputMethod.ProbabilityCalculationIM" />
<activity
android:name="com.theartofdev.edmodo.cropper.CropImageActivity"
android:theme="@style/Theme.AppCompat.DayNight.DarkActionBar" />
......@@ -63,7 +72,7 @@
<activity android:name=".SignUp" />
<activity
android:name=".MainActivity"
android:theme="@style/AppTheme.NoActionBar" >
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
......@@ -75,24 +84,11 @@
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.provider"
android:exported="false"
android:grantUriPermissions="true" >
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provider_paths" />
</provider>
</application>
<uses-feature
android:name="android.hardware.camera2"
android:required="true" />
<uses-feature
android:name="android.hardware.camera2"
android:required="true" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
</manifest>
\ No newline at end of file
......@@ -28,6 +28,7 @@ public class SessionManager {
public static final String KRY_STATUS = "status";
public static final String KEY_ANYEXPERIENCE = "anyExperience";
public static final String KEY_RESONTOCHOOSE = "resonToChoose";
public static final String KEY_OTP = "otp";
//creating constructer
public SessionManager(Context context){
......@@ -63,6 +64,8 @@ public class SessionManager {
editor.commit();
}
// funtion to get user details from session
public HashMap<String, String> getUserDetailsFromSession(){
HashMap<String, String> userData = new HashMap<String, String>();
......@@ -100,4 +103,10 @@ public class SessionManager {
editor.commit();
}
public void SetUserOTP(int otp){
editor.putInt(KEY_OTP,otp);
editor.commit();
}
}
......@@ -17,6 +17,7 @@ import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearnin
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Random;
public class Sign_up_part3 extends AppCompatActivity {
......@@ -50,6 +51,8 @@ public class Sign_up_part3 extends AppCompatActivity {
// class Initialization
dbConnection = new DBConnection();
// find the radiobutton by returned id
/* Intent intent = getIntent();
......@@ -80,6 +83,14 @@ public class Sign_up_part3 extends AppCompatActivity {
int selectId2 = radioGroup1ResonToUse.getCheckedRadioButtonId();
Q3radioButton3 = findViewById(selectId2);
// ------------------------------ Generating OTP number ----------------------------------------
System.out.println("before calling register");
RegisterUser reg = new RegisterUser();
reg.execute("");
......@@ -111,8 +122,10 @@ public class Sign_up_part3 extends AppCompatActivity {
finish();
}
Intent intent = new Intent(Sign_up_part3.this,Welcome.class);
startActivity(intent);
startActivity(intent);
}
......
......@@ -84,7 +84,7 @@ public class UserDashBoard extends AppCompatActivity implements NavigationView.O
startActivity(intent);
break;
case R.id.nav_message:
Intent intent2 = new Intent(UserDashBoard.this, StartingScreen.class);
Intent intent2 = new Intent(UserDashBoard.this, verification_screen.class);
startActivity(intent2);
break;
}
......
package com.elearning.probabilityandstatisticsanalyserandeducator;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import java.sql.Connection;
import java.util.HashMap;
import java.util.Properties;
import java.util.Random;
//import javax.mail.Authenticator;
//import javax.mail.Message;
//import javax.mail.MessagingException;
//import javax.mail.PasswordAuthentication;
//import javax.mail.Session;
//import javax.mail.internet.InternetAddress;
//import javax.mail.internet.MimeMessage;
public class verification_screen extends AppCompatActivity {
String eSubject, eMessage, sEmail, sPassword, eUserEmail;
int OTP =0;
Connection con;
DBConnection dbConnection;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_verification_screen);
//----------- OTP number generate method ------------------------
final Random myRandom = new Random();
OTP = myRandom.nextInt(10000);
System.out.println("OTP"+OTP);
SessionManager sessionManager = new SessionManager(this);
sessionManager.SetUserOTP(OTP);
//------------------------- Creating Hash Map---------------------------------
HashMap<String,String> userDetails = sessionManager.getUserDetailsFromSession();
//tacking userID from session manager and it come as a string
//we convert userID int by using parseInt and asssin it into userID
eUserEmail = userDetails.get(SessionManager.KEY_EMAIL);
//sender(our system) email credential
sEmail = "probabilitystatitcs.corner@gmail.com";
sPassword = "admin121";
//Initialize Properties
Properties properties = new Properties();
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true");
properties.put("mail.smtp.host", "smtp.gmail.com");
properties.put("mail.smtp.port", "587");
/* //Initialize session
Session session = Session.getInstance(properties, new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(sEmail,sPassword);
}
});
try{
//Initialize email content
Message message = new MimeMessage(session);
//Sender email
message.setFrom(new InternetAddress(sEmail));
//Recipient email
message.setRecipients(Message.RecipientType.TO,InternetAddress.parse(eUserEmail.trim()));
System.out.println("userEmail"+eUserEmail);
//Email subject
message.setText(eSubject.toString().trim());
//Email message
message.setText(eMessage.toString().trim());
//send email
new SendMail().execute(message);
}catch (MessagingException e){
e.printStackTrace();
}
// class Initialization
dbConnection = new DBConnection();
//getting DB connection
con = dbConnection.getConnection();
}
private class SendMail {
public void execute(Message message) {
}*/
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/purple_500"
tools:context=".verification_screen">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:gravity="center"
android:text="Verification Code"
android:textColor="@color/ic_launcher_uploadPhoto_background"
android:textSize="30dp"
android:textStyle="bold" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:gravity="center"
android:text="Please type the verification code sent\n to +7722989"
android:textColor="@color/ic_launcher_uploadPhoto_background"
android:textSize="18dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:orientation="horizontal"
android:paddingLeft="25dp"
android:paddingRight="25dp">
<EditText
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_weight="1"
android:background="#00FFFFFF "
android:focusable="true"
android:inputType="number"
android:maxLength="1"
android:textSize="30dp"
android:gravity="center"
android:textStyle="bold"
android:textColor="@android:color/white" />
<EditText
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginLeft="8dp"
android:layout_weight="1"
android:background="#00FFFFFF "
android:focusable="true"
android:inputType="number"
android:maxLength="1"
android:textSize="30dp"
android:gravity="center"
android:textStyle="bold"
android:textColor="@android:color/white" />
<EditText
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginLeft="8dp"
android:layout_weight="1"
android:background="#00FFFFFF "
android:focusable="true"
android:inputType="number"
android:maxLength="1"
android:textSize="30dp"
android:gravity="center"
android:textStyle="bold"
android:textColor="@android:color/white" />
<EditText
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginLeft="8dp"
android:layout_weight="1"
android:background="#00FFFFFF "
android:focusable="true"
android:inputType="number"
android:maxLength="1"
android:textStyle="bold"
android:textSize="30dp"
android:gravity="center"
android:textColor="@android:color/white" />
</LinearLayout>
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment