Commit 971eef79 authored by ruvisenarthna's avatar ruvisenarthna

Course handler function completed with Video Controller

parent 832d46af
......@@ -78,6 +78,7 @@ dependencies {
implementation files('libs\\activation.jar')
implementation files('libs\\mail.jar')
implementation files('libs\\additional.jar')
implementation files('libs\\YouTubeAndroidPlayerApi.jar')
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
......
<?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"
......@@ -22,17 +22,14 @@
android:requestLegacyExternalStorage="true"
android:roundIcon="@mipmap/app_logo"
android:supportsRtl="true"
android:theme="@style/Theme.ProbabilityAndStatisticsAnalyserAndEducator" >
android:theme="@style/Theme.ProbabilityAndStatisticsAnalyserAndEducator">
<activity android:name=".adaptiveLearning.VideoController"></activity>
<activity android:name=".adaptiveLearning.CourseHandler" />
<activity android:name=".inputMethod.StandardDeviationInputMethod" />
<activity android:name=".calculationfunction.StandaradDeviationCalculation"/>
<activity android:name=".calculationfunction.StandaradDeviationCalculation" />
<activity android:name=".calculationfunction.EssayTypeStdQuestionActivity" />
<activity android:name=".calculationfunction.ProbabilityDistributionCalculation" />
<activity android:name=".calculationfunction.EssayTypeProDistributionActivity" />
<activity android:name=".inputMethod.ProbabilityDistributionsIM" />
<activity android:name=".adaptiveLearning.QuizActivity" />
<activity android:name=".adaptiveLearning.StartingScreen" />
......@@ -43,7 +40,6 @@
<activity android:name=".calculationfunction.DescriptiveStatisticsCalcuation" />
<activity android:name=".calculationfunction.EssayTypeDescriptiveStaticQuestion" />
<activity android:name=".inputMethod.ProbabilityCalculationIM" />
<activity
android:name="com.theartofdev.edmodo.cropper.CropImageActivity"
android:theme="@style/Theme.AppCompat.DayNight.DarkActionBar" />
......@@ -52,11 +48,9 @@
<activity android:name=".Welcome" />
<activity android:name=".SignUp" />
<activity android:name=".verification_screen" />
<activity
android:name=".MainActivity"
android:theme="@style/AppTheme.NoActionBar" >
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
......@@ -68,12 +62,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>
</manifest>
\ No newline at end of file
......@@ -2,11 +2,13 @@ package com.elearning.probabilityandstatisticsanalyserandeducator;
import androidx.annotation.NonNull;
import androidx.appcompat.app.ActionBarDrawerToggle;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import androidx.core.view.GravityCompat;
import androidx.drawerlayout.widget.DrawerLayout;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.MenuItem;
......@@ -53,6 +55,8 @@ public class UserDashBoard extends AppCompatActivity implements NavigationView.O
if (isInitialExamFinished == 0){
Intent intent = new Intent(UserDashBoard.this,StartingScreen.class);
// intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
intent.putExtra("isInitialExamFinished",isInitialExamFinished);
startActivity(intent);
}
......@@ -98,6 +102,27 @@ public class UserDashBoard extends AppCompatActivity implements NavigationView.O
if (drawer.isDrawerOpen(GravityCompat.START)){
drawer.closeDrawer(GravityCompat.START);
}
super.onBackPressed();
// super.onBackPressed();
AlertDialog.Builder builder = new AlertDialog.Builder(UserDashBoard.this);
builder.setTitle(R.string.app_name);
//builder.setIcon(R.mipmap.ic_launcher);
builder.setMessage("Do you want to exit?")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Intent intent = new Intent(UserDashBoard.this, Welcome.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
finish();
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
AlertDialog alert = builder.create();
alert.show();
}
}
\ No newline at end of file
......@@ -147,6 +147,7 @@ public class Welcome extends AppCompatActivity {
con.close();
if (is_Active == 1){
Intent intent = new Intent(Welcome.this, UserDashBoard.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
finish();
}else{
......
......@@ -57,7 +57,7 @@ public class AdaptiveQuestionGenarator {
questionList = dbHelper.NormalDistributionGetAllInitialQuestion();
easyQuestionList = dbHelper.NormalDistributionGenarateEasyQuestions();
moderateQuestionList = dbHelper.NormalDistributionGenarateModerateQuestions();
hardQuestionList = dbHelper.Z_ScoreGenarateHardQuestions();
hardQuestionList = dbHelper.NormalDistributionGenarateHardQuestions();
}
......
package com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import com.elearning.probabilityandstatisticsanalyserandeducator.MainActivity;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
import com.elearning.probabilityandstatisticsanalyserandeducator.SessionManager;
import com.elearning.probabilityandstatisticsanalyserandeducator.UserDashBoard;
import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses.DescriptiveCourse;
import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses.NormalDistributionCourse;
import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses.ProbabilityCourse;
import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses.ProbabilityDistrributionCourse;
import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses.StandardDeviationCourse;
import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses.Z_ScoreCourse;
import java.util.HashMap;
public class CourseHandler extends AppCompatActivity {
private int userID;
static int SELECT_QUESTION_TYPE = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_course_handler);
//By using session Manager we tacking user details
SessionManager sessionManager = new SessionManager(this);
//------------------------- 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
userID = Integer.parseInt(userDetails.get(SessionManager.KEY_UID));
Intent intent = getIntent();
SELECT_QUESTION_TYPE = intent.getIntExtra("Selected_Question_type",0);
if (SELECT_QUESTION_TYPE == 1){
// call the fragment manager
getSupportFragmentManager().beginTransaction().add(R.id.course_container,new DescriptiveCourse()).commit();
}else if (SELECT_QUESTION_TYPE == 2){
// call the fragment manager
getSupportFragmentManager().beginTransaction().add(R.id.course_container,new StandardDeviationCourse()).commit();
}else if (SELECT_QUESTION_TYPE == 3){
// call the fragment manager
getSupportFragmentManager().beginTransaction().add(R.id.course_container,new ProbabilityCourse()).commit();
}else if (SELECT_QUESTION_TYPE == 4){
// call the fragment manager
getSupportFragmentManager().beginTransaction().add(R.id.course_container,new ProbabilityDistrributionCourse()).commit();
}else if (SELECT_QUESTION_TYPE == 5){
// call the fragment manager
getSupportFragmentManager().beginTransaction().add(R.id.course_container,new Z_ScoreCourse()).commit();
}else if (SELECT_QUESTION_TYPE == 6){
// call the fragment manager
getSupportFragmentManager().beginTransaction().add(R.id.course_container,new NormalDistributionCourse()).commit();
}else {
Intent intent1 = new Intent(this, UserDashBoard.class);
intent1.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent1);
finish();
}
}
}
\ No newline at end of file
......@@ -17,16 +17,24 @@ import android.widget.Button;
import android.widget.LinearLayout;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
import com.elearning.probabilityandstatisticsanalyserandeducator.SessionManager;
import com.elearning.probabilityandstatisticsanalyserandeducator.UserDashBoard;
import java.util.HashMap;
import static androidx.appcompat.content.res.AppCompatResources.getDrawable;
public class DashBoardHome extends Fragment {
LinearLayout descriptive_ststis, standard_dev, probability, probability_deistribu, z_score, normal_distribu;
Button dashbord_continur, dashboard_cancel;
Animation fade;
static int userID;
static int SELECTED_QUESTION_TYPE = 0;
static int PROGRESS_LEVEL = 0;
DbHelper dbHelper;
......@@ -54,6 +62,21 @@ public class DashBoardHome extends Fragment {
dashbord_continur.setAlpha(0);
dashboard_cancel.setAlpha(0);
dbHelper = new DbHelper();
//By using session Manager we tacking user details
SessionManager sessionManager = new SessionManager(getContext());
//------------------------- 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
userID = Integer.parseInt(userDetails.get(SessionManager.KEY_UID));
descriptive_ststis.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
......@@ -145,11 +168,24 @@ public class DashBoardHome extends Fragment {
@Override
public void onClick(View view) {
Intent intent = new Intent(getContext(),StartingScreen.class);
intent.putExtra("Selected_Question_type",SELECTED_QUESTION_TYPE);
PROGRESS_LEVEL = dbHelper.UserProgressChecker(userID,SELECTED_QUESTION_TYPE);
if (PROGRESS_LEVEL == 0){
Intent intent = new Intent(getContext(),StartingScreen.class);
intent.putExtra("Selected_Question_type",SELECTED_QUESTION_TYPE);
startActivity(intent);
startActivity(intent);
}else if (PROGRESS_LEVEL == 1){
Intent intent = new Intent(getContext(),CourseHandler.class);
intent.putExtra("Selected_Question_type",SELECTED_QUESTION_TYPE);
startActivity(intent);
}else{
Intent intent = new Intent(getContext(),UserDashBoard.class);
intent.putExtra("Selected_Question_type",SELECTED_QUESTION_TYPE);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
}
}
});
......
......@@ -3,8 +3,10 @@ package com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearni
import com.elearning.probabilityandstatisticsanalyserandeducator.DBConnection;
import java.sql.Connection;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Time;
public class DbHelper {
......@@ -12,6 +14,7 @@ public class DbHelper {
Connection con;
public int isInitialExamFinished = 0;
public int progressLevel = 0;
public int isInitialExamFinished(int userID){
......@@ -41,4 +44,57 @@ public class DbHelper {
}
public int saveUserProgress( int userID, int courseID, int progressLevel){
int checkQuery= 0;
//calling get connection into our con variable and passing values to DB
try {
con = dbConnection.getConnection();
if (con==null){
System.out.println("Connection Error");
}else {
String query = "INSERT INTO User_progress_log(userID, courseID, progressLevel)"
+"VALUES('"+userID+"','"+courseID+"','"+progressLevel+"')";
checkQuery = dbConnection.Save(query);
}
}catch (Exception e){
e.printStackTrace();
}
return checkQuery;
}
public int UserProgressChecker(int userID, int courseID){
try {
//Getting DB connection in to con variable
con = dbConnection.getConnection();
//if DB connection false show error message
if (con == null){
System.out.println("Connection Error");
}else {
//When DB connection works
//Execute SELECT query from DB
String query = "Select progressLevel from User_Progress_Log where userID = '"+userID+"' and courseID = '"+courseID+"'";
Statement st = con.createStatement();
ResultSet rst = st.executeQuery(query);
while(rst.next()){
progressLevel = rst.getInt("progressLevel");
}
}
}catch (Exception e){
e.printStackTrace();
}
return progressLevel;
}
}
......@@ -90,6 +90,7 @@ public class QuizActivity extends AppCompatActivity {
private long aveAnsewerdTime = 0;
private long totalExamTime = 0;
private DbHelper dbHelper;
@Override
......@@ -125,6 +126,10 @@ public class QuizActivity extends AppCompatActivity {
textColourDefaultRb = rb_QuizQ1.getTextColors();
textcolorDefaultCD = textViewCountDown.getTextColors();
//DBHelper object
dbHelper = new DbHelper();
//creating adaptive question genarator
adaptiveQuestionGenarator = new AdaptiveQuestionGenarator();
......@@ -247,6 +252,7 @@ public class QuizActivity extends AppCompatActivity {
questionCounter++;
// show next question to user
textViewQuestionCount.setText("Question: "+ questionCounter+ "/" + questionCountTotal);
answered = false;
btn_confirm_next.setText("Confirm");
......@@ -398,7 +404,9 @@ public class QuizActivity extends AppCompatActivity {
checkValue = quizDbHelper.createUser_ExamLog(KEY_EXAM_NAME,userID,examStartedTime,examFinishedTime,dateOfExam,score,numCorrectAns,numWrongAns,aveAnsTime,KEY_EXAM_CATEGORY);
quizDbHelper.UpdateIsInitialExam(userID);
if(SELECT_QUESTION_TYPE != 0){
dbHelper.saveUserProgress(userID, SELECT_QUESTION_TYPE,1);
}
}
......
......@@ -820,7 +820,7 @@ public class QuizDbHelper {
if (con == null){
System.out.println("Connection Error");
}else {
String query = "select * from ques_probability_distribution where dis_difficulty_index BETWEEN 0.3 AND 0.7;";
String query = "select * from ques_probability_distribution where dis_difficulty_index BETWEEN 0.3 AND 0.7";
Statement st = con.createStatement();
ResultSet rst = st.executeQuery(query);
......@@ -1188,7 +1188,7 @@ public class QuizDbHelper {
if (con == null){
System.out.println("Connection Error");
}else {
String query = "select * from ques_initial_Exam where ini_difficulty_index < 0.3";
String query = "select * from ques_normal_distribution where nor_difficulty_index < 0.3";
Statement st = con.createStatement();
ResultSet rst = st.executeQuery(query);
......@@ -1215,7 +1215,7 @@ public class QuizDbHelper {
e.printStackTrace();
}
// System.out.println("dbhelper "+questionList);
System.out.println("NormalDistributionHarddbhelper "+questionList);
return questionList;
}
}
......
......@@ -5,11 +5,19 @@ import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import com.elearning.probabilityandstatisticsanalyserandeducator.MainActivity;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
import com.elearning.probabilityandstatisticsanalyserandeducator.SessionManager;
import com.elearning.probabilityandstatisticsanalyserandeducator.SignUp;
import com.elearning.probabilityandstatisticsanalyserandeducator.UserDashBoard;
import com.elearning.probabilityandstatisticsanalyserandeducator.Welcome;
import java.util.HashMap;
public class StartingScreen extends AppCompatActivity {
private static final int REQUEST_CODE_QUIZ = 1;
......@@ -19,18 +27,40 @@ public class StartingScreen extends AppCompatActivity {
private TextView textViewHighscore;
Button button_back_quiz;
private int userID;
private int highscore;
static int SELECT_QUESTION_TYPE = 0;
static int isInitialExamFinished = 0;
DbHelper dbHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_starting_screen);
//By using session Manager we tacking user details
SessionManager sessionManager = new SessionManager(this);
//------------------------- 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
userID = Integer.parseInt(userDetails.get(SessionManager.KEY_UID));
Intent intent = getIntent();
SELECT_QUESTION_TYPE = intent.getIntExtra("Selected_Question_type",0);
SELECT_QUESTION_TYPE = intent.getIntExtra("Selected_Question_type",0);
System.out.println("Selected_Question_type "+SELECT_QUESTION_TYPE);
dbHelper = new DbHelper();
isInitialExamFinished = dbHelper.isInitialExamFinished(userID);
//assign text view
//we load the highscor from shared Prefrenc and set it value to textView
textViewHighscore = findViewById(R.id.text_view_highscore);
......@@ -43,11 +73,39 @@ public class StartingScreen extends AppCompatActivity {
Start();
}
});
button_back_quiz = findViewById(R.id.button_back_quiz);
button_back_quiz.setVisibility(View.INVISIBLE);
button_back_quiz.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (SELECT_QUESTION_TYPE != 0) {
Intent intent = new Intent(StartingScreen.this, CourseHandler.class);
intent.putExtra("Selected_Question_type", SELECT_QUESTION_TYPE);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
// finish();
} else {
Intent intent = new Intent(StartingScreen.this, UserDashBoard.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
finish();
}
}
});
}
private void Start() {
Intent intent = new Intent(StartingScreen.this, QuizActivity.class);
intent.putExtra("Selected_Question_type",SELECT_QUESTION_TYPE);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivityForResult(intent, REQUEST_CODE_QUIZ);
}
......@@ -59,9 +117,16 @@ public class StartingScreen extends AppCompatActivity {
int score = data.getIntExtra(QuizActivity.EXTRA_SCORE, 0);
if (score > highscore){
updateHighscore(score);
//finish();
}
isInitialExamFinished = dbHelper.isInitialExamFinished(userID);
if (isInitialExamFinished == 1){
button_back_quiz.setVisibility(View.VISIBLE);
}
}
}
}
......@@ -83,6 +148,39 @@ public class StartingScreen extends AppCompatActivity {
}
@Override
public void onBackPressed() {
super.onBackPressed();
isInitialExamFinished = dbHelper.isInitialExamFinished(userID);
if (isInitialExamFinished == 0){
Intent intent = new Intent(this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
finish();
}else {
Intent intent = new Intent(this, UserDashBoard.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
finish();
}
}
public void LoadNextScreen(){
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
if (SELECT_QUESTION_TYPE != 0){
Intent intent = new Intent(StartingScreen.this, CourseHandler.class);
intent.putExtra("Selected_Question_type",SELECT_QUESTION_TYPE);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
// finish();
}
}
},5000);
}
}
\ No newline at end of file
package com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
import com.google.android.youtube.player.YouTubeBaseActivity;
import com.google.android.youtube.player.YouTubeInitializationResult;
import com.google.android.youtube.player.YouTubePlayer;
import com.google.android.youtube.player.YouTubePlayerView;
import javax.mail.Message;
public class VideoController extends YouTubeBaseActivity {
Button btn_play;
YouTubePlayerView youTubePlayerView;
YouTubePlayer.OnInitializedListener onInitializedListener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video_player);
btn_play = findViewById(R.id.btn_play);
youTubePlayerView = findViewById(R.id.YoutubePlayerView);
onInitializedListener = new YouTubePlayer.OnInitializedListener() {
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
youTubePlayer.loadVideo("A1mQ9kD-i9I");
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
}
};
btn_play.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
youTubePlayerView.initialize("AIzaSyD5G-0hTA2rb3hMSQX7oiiUK6gI3VSkKd8",onInitializedListener);
}
});
}
}
\ No newline at end of file
package com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses;
import android.content.Intent;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.CourseHandler;
import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.StartingScreen;
import com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.VideoController;
public class DescriptiveCourse extends Fragment {
Button btn_1, btn_2, btn_3;
public DescriptiveCourse() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_descriptive_course, container, false);
btn_1 = view.findViewById(R.id.DecriptiveCourse_btn_1);
btn_2 = view.findViewById(R.id.DecriptiveCourse_btn_2);
btn_3 = view.findViewById(R.id.DecriptiveCourse_btn_3);
btn_1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(getContext(), VideoController.class);
// intent.putExtra("Selected_Question_type", SELECT_QUESTION_TYPE);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);
}
});
return view;
}
}
\ No newline at end of file
package com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
/**
* A simple {@link Fragment} subclass.
* Use the {@link NormalDistributionCourse#newInstance} factory method to
* create an instance of this fragment.
*/
public class NormalDistributionCourse extends Fragment {
// TODO: Rename parameter arguments, choose names that match
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private static final String ARG_PARAM1 = "param1";
private static final String ARG_PARAM2 = "param2";
// TODO: Rename and change types of parameters
private String mParam1;
private String mParam2;
public NormalDistributionCourse() {
// Required empty public constructor
}
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
*
* @param param1 Parameter 1.
* @param param2 Parameter 2.
* @return A new instance of fragment NormalDistributionCourse.
*/
// TODO: Rename and change types and number of parameters
public static NormalDistributionCourse newInstance(String param1, String param2) {
NormalDistributionCourse fragment = new NormalDistributionCourse();
Bundle args = new Bundle();
args.putString(ARG_PARAM1, param1);
args.putString(ARG_PARAM2, param2);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mParam1 = getArguments().getString(ARG_PARAM1);
mParam2 = getArguments().getString(ARG_PARAM2);
}
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_normal_distribution_course, container, false);
}
}
\ No newline at end of file
package com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
/**
* A simple {@link Fragment} subclass.
* Use the {@link ProbabilityCourse#newInstance} factory method to
* create an instance of this fragment.
*/
public class ProbabilityCourse extends Fragment {
// TODO: Rename parameter arguments, choose names that match
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private static final String ARG_PARAM1 = "param1";
private static final String ARG_PARAM2 = "param2";
// TODO: Rename and change types of parameters
private String mParam1;
private String mParam2;
public ProbabilityCourse() {
// Required empty public constructor
}
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
*
* @param param1 Parameter 1.
* @param param2 Parameter 2.
* @return A new instance of fragment ProbabilityCourse.
*/
// TODO: Rename and change types and number of parameters
public static ProbabilityCourse newInstance(String param1, String param2) {
ProbabilityCourse fragment = new ProbabilityCourse();
Bundle args = new Bundle();
args.putString(ARG_PARAM1, param1);
args.putString(ARG_PARAM2, param2);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mParam1 = getArguments().getString(ARG_PARAM1);
mParam2 = getArguments().getString(ARG_PARAM2);
}
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_probability_course, container, false);
}
}
\ No newline at end of file
package com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
/**
* A simple {@link Fragment} subclass.
* Use the {@link ProbabilityDistrributionCourse#newInstance} factory method to
* create an instance of this fragment.
*/
public class ProbabilityDistrributionCourse extends Fragment {
// TODO: Rename parameter arguments, choose names that match
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private static final String ARG_PARAM1 = "param1";
private static final String ARG_PARAM2 = "param2";
// TODO: Rename and change types of parameters
private String mParam1;
private String mParam2;
public ProbabilityDistrributionCourse() {
// Required empty public constructor
}
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
*
* @param param1 Parameter 1.
* @param param2 Parameter 2.
* @return A new instance of fragment ProbabilityDistrributionCourse.
*/
// TODO: Rename and change types and number of parameters
public static ProbabilityDistrributionCourse newInstance(String param1, String param2) {
ProbabilityDistrributionCourse fragment = new ProbabilityDistrributionCourse();
Bundle args = new Bundle();
args.putString(ARG_PARAM1, param1);
args.putString(ARG_PARAM2, param2);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mParam1 = getArguments().getString(ARG_PARAM1);
mParam2 = getArguments().getString(ARG_PARAM2);
}
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_probability_distrribution_course, container, false);
}
}
\ No newline at end of file
package com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
/**
* A simple {@link Fragment} subclass.
* Use the {@link StandardDeviationCourse#newInstance} factory method to
* create an instance of this fragment.
*/
public class StandardDeviationCourse extends Fragment {
// TODO: Rename parameter arguments, choose names that match
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private static final String ARG_PARAM1 = "param1";
private static final String ARG_PARAM2 = "param2";
// TODO: Rename and change types of parameters
private String mParam1;
private String mParam2;
public StandardDeviationCourse() {
// Required empty public constructor
}
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
*
* @param param1 Parameter 1.
* @param param2 Parameter 2.
* @return A new instance of fragment StandardDeviation.
*/
// TODO: Rename and change types and number of parameters
public static StandardDeviationCourse newInstance(String param1, String param2) {
StandardDeviationCourse fragment = new StandardDeviationCourse();
Bundle args = new Bundle();
args.putString(ARG_PARAM1, param1);
args.putString(ARG_PARAM2, param2);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mParam1 = getArguments().getString(ARG_PARAM1);
mParam2 = getArguments().getString(ARG_PARAM2);
}
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_standard_deviation, container, false);
}
}
\ No newline at end of file
package com.elearning.probabilityandstatisticsanalyserandeducator.adaptiveLearning.courses;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.elearning.probabilityandstatisticsanalyserandeducator.R;
/**
* A simple {@link Fragment} subclass.
* Use the {@link Z_ScoreCourse#newInstance} factory method to
* create an instance of this fragment.
*/
public class Z_ScoreCourse extends Fragment {
// TODO: Rename parameter arguments, choose names that match
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
private static final String ARG_PARAM1 = "param1";
private static final String ARG_PARAM2 = "param2";
// TODO: Rename and change types of parameters
private String mParam1;
private String mParam2;
public Z_ScoreCourse() {
// Required empty public constructor
}
/**
* Use this factory method to create a new instance of
* this fragment using the provided parameters.
*
* @param param1 Parameter 1.
* @param param2 Parameter 2.
* @return A new instance of fragment Z_ScoreCourse.
*/
// TODO: Rename and change types and number of parameters
public static Z_ScoreCourse newInstance(String param1, String param2) {
Z_ScoreCourse fragment = new Z_ScoreCourse();
Bundle args = new Bundle();
args.putString(ARG_PARAM1, param1);
args.putString(ARG_PARAM2, param2);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mParam1 = getArguments().getString(ARG_PARAM1);
mParam2 = getArguments().getString(ARG_PARAM2);
}
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_z__score_course, container, false);
}
}
\ No newline at end of file
......@@ -60,7 +60,7 @@ public class verification_screen extends AppCompatActivity {
final Random myRandom = new Random();
OTP = myRandom.nextInt(10000);
System.out.println("OTP"+OTP);
System.out.println("OTP"+OTP);
//Add OTP number into Session manger
SessionManager sessionManager = new SessionManager(this);
......
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
tools:context=".adaptiveLearning.CourseHandler">
<FrameLayout
android:id="@+id/course_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
</FrameLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
......@@ -38,5 +38,20 @@
android:background="@color/app_logo_background"
android:text="Start" />
<Button
android:id="@+id/button_back_quiz"
android:layout_width="wrap_content"
android:layout_height="51dp"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_alignParentBottom="true"
android:layout_marginStart="149dp"
android:layout_marginTop="398dp"
android:layout_marginEnd="144dp"
android:layout_marginBottom="194dp"
android:background="@color/app_logo_background"
android:text="Back" />
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:orientation="vertical"
tools:context=".adaptiveLearning.VideoController">
<com.google.android.youtube.player.YouTubePlayerView
android:id="@+id/YoutubePlayerView"
android:layout_width="match_parent"
android:layout_height="250dp"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Play"
android:id="@+id/btn_play"
android:layout_marginTop="20dp"
/>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
tools:context=".adaptiveLearning.courses.DescriptiveCourse">
<!-- TODO: Update blank fragment layout -->
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Wellcome to Descriptive Statics Course"
android:textSize="18sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.581"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.168" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" Mean, Median, Mode and Range"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.23"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.3" />
<Button
android:id="@+id/DecriptiveCourse_btn_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 1"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.226"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.378" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" Minimum and Maximum "
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.189"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.515" />
<Button
android:id="@+id/DecriptiveCourse_btn_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 2"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.226"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.605" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" First Quartile, Third Quartile and IQR "
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.265"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.721" />
<Button
android:id="@+id/DecriptiveCourse_btn_3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button 3"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.226"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.801" />
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".adaptiveLearning.courses.NormalDistributionCourse">
<!-- TODO: Update blank fragment layout -->
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Normal Distribution" />
</FrameLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".adaptiveLearning.courses.ProbabilityCourse">
<!-- TODO: Update blank fragment layout -->
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Probability" />
</FrameLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".adaptiveLearning.courses.ProbabilityDistrributionCourse">
<!-- TODO: Update blank fragment layout -->
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Probability Distribution" />
</FrameLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".adaptiveLearning.courses.StandardDeviationCourse">
<!-- TODO: Update blank fragment layout -->
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Standerd Deviation" />
</FrameLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".adaptiveLearning.courses.Z_ScoreCourse">
<!-- TODO: Update blank fragment layout -->
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Z Score" />
</FrameLayout>
\ 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