导航菜单

页面标题

页面副标题

St.John's v1.0.9 - SummativeExamResultsActivity.java 源代码

正在查看: St.John's v1.0.9 应用的 SummativeExamResultsActivity.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.mcb.stjohnsemschool.activity;

import android.app.Activity;
import android.content.Context;
import android.graphics.Typeface;
import android.net.ConnectivityManager;
import android.os.Build;
import android.os.Bundle;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.TextView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.google.firebase.analytics.FirebaseAnalytics;
import com.mcb.stjohnsemschool.adapter.DetailAdapter;
import com.mcb.stjohnsemschool.model.FilePathModelClass;
import com.mcb.stjohnsemschool.model.SummativeExamAnswerFilesModel;
import com.mcb.stjohnsemschool.services.ApiClient;
import com.mcb.stjohnsemschool.services.ApiInterface;
import com.mcb.stjohnsemschool.utils.ExpandedListViewCustom;
import com.mcb.stjohnsemschool.utils.Filename;
import com.mcb.stjohnsemschool.utils.TransparentProgressDialog;
import com.mcb.stjohnsemschool.utils.Utility;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;

public class SummativeExamResultsActivity extends BaseActivity {
    private ArrayList<FilePathModelClass> ansVideoOrImgList;
    private int examId;
    private int lastScrollPosition;
    private ExpandedListViewCustom mAnsListFiles;
    private ExpandedListViewCustom mAnsListImagesOrVideos;
    private TextView mDuration;
    private TextView mExamDate;
    private TextView mExamName;
    private Typeface mLatoFont;
    private LinearLayout mMainLL;
    private TextView mMaxMarks;
    private TextView mObtainedMarks;
    private TransparentProgressDialog mProgressbar;
    private TextView mStaffCorrectionsHeader;
    private String mStudentEnrollmentID;
    private LinearLayout mSubmittedFilesLL;
    private TextView mTime;
    private AppCompatActivity myActivity;

    protected void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        setContentView(R.layout.activity_summative_exam_results);
        getWindow().addFlags(128);
        getSupportActionBar().setTitle("Summative Exam Results");
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        this.mLatoFont = Typeface.createFromAsset(getAssets(), "Roboto-Regular.ttf");
        this.mStudentEnrollmentID = getSharedPreferences("", 0).getString("studentEnrollmentIdKey", "0");
        this.myActivity = this;
        if (Build.VERSION.SDK_INT >= 23) {
            getMultiplePermissions();
        }
        setUpIds();
        getExamAnswerDetails();
    }

    private void setUpIds() {
        this.mProgressbar = new TransparentProgressDialog(this, R.drawable.spinner_loading_imag);
        this.mMainLL = (LinearLayout) findViewById(R.id.ll_main);
        this.mAnsListFiles = findViewById(R.id.ans_list_files);
        this.mAnsListImagesOrVideos = findViewById(R.id.ans_list_images_videos);
        this.mMaxMarks = (TextView) findViewById(R.id.max_marks_tv);
        this.mObtainedMarks = (TextView) findViewById(R.id.obtained_marks_tv);
        this.mSubmittedFilesLL = (LinearLayout) findViewById(R.id.ll_submitted_files);
        this.mStaffCorrectionsHeader = (TextView) findViewById(R.id.txv_staff_corrections_header);
        this.mExamName = (TextView) findViewById(R.id.txv_exam_name);
        this.mExamDate = (TextView) findViewById(R.id.txv_date);
        this.mTime = (TextView) findViewById(R.id.txv_time);
        this.mDuration = (TextView) findViewById(R.id.txv_duration);
        this.mMainLL.setVisibility(8);
        final ScrollView scrollView = (ScrollView) findViewById(R.id.scroll_view);
        scrollView.getViewTreeObserver().addOnScrollChangedListener(new ViewTreeObserver.OnScrollChangedListener() {
            @Override
            public void onScrollChanged() {
                int scrollY = scrollView.getScrollY();
                int i = SummativeExamResultsActivity.this.lastScrollPosition > scrollY ? SummativeExamResultsActivity.this.lastScrollPosition - scrollY : 0;
                if (scrollY > SummativeExamResultsActivity.this.lastScrollPosition) {
                    i = scrollY - SummativeExamResultsActivity.this.lastScrollPosition;
                }
                if (i > 150) {
                    SummativeExamResultsActivity.this.lastScrollPosition = scrollY;
                    SummativeExamResultsActivity.this.resetVideos();
                }
            }
        });
        Bundle extras = getIntent().getExtras();
        this.examId = extras.getInt("ExamId", 0);
        String string = extras.getString("ExamName", "");
        String string2 = extras.getString("ExamDate", "");
        String string3 = extras.getString("ExamTime", "");
        String string4 = extras.getString("ExamDuration", "");
        String string5 = extras.getString("MaxMarks", "");
        String string6 = extras.getString("Marks", "");
        this.mExamName.setText(string);
        this.mExamDate.setText(string2);
        this.mTime.setText("Time: " + string3);
        this.mDuration.setText("Duration: " + string4);
        this.mMaxMarks.setText("Max Marks : " + string5);
        this.mObtainedMarks.setText("Obtained Marks : " + string6);
    }

    public void createSubmittedFilesUI(List<SummativeExamAnswerFilesModel> list) {
        boolean z;
        this.mSubmittedFilesLL.removeAllViews();
        if (list != null && list.size() > 0) {
            for (SummativeExamAnswerFilesModel summativeExamAnswerFilesModel : list) {
                View inflate = LayoutInflater.from(getApplicationContext()).inflate(R.layout.ll_online_assignment_submitted_files, (ViewGroup) null);
                TextView textView = (TextView) inflate.findViewById(R.id.txv_staff_remarks_heading);
                TextView textView2 = (TextView) inflate.findViewById(R.id.txv_staff_remarks);
                ExpandedListViewCustom findViewById = inflate.findViewById(R.id.staff_upload);
                summativeExamAnswerFilesModel.getSubmittedFilePath();
                String teacherRemarks = summativeExamAnswerFilesModel.getTeacherRemarks();
                String staffUploadedFilePath = summativeExamAnswerFilesModel.getStaffUploadedFilePath();
                boolean z2 = true;
                if (teacherRemarks != null && teacherRemarks.length() > 0 && !teacherRemarks.equalsIgnoreCase("null")) {
                    textView.setVisibility(0);
                    textView2.setVisibility(0);
                    textView2.setText(Html.fromHtml(teacherRemarks));
                    z = true;
                } else {
                    textView.setVisibility(8);
                    textView2.setVisibility(8);
                    textView2.setText("--");
                    z = false;
                }
                if (staffUploadedFilePath != null && staffUploadedFilePath.length() > 0 && !staffUploadedFilePath.equalsIgnoreCase("null")) {
                    findViewById.setVisibility(0);
                    ArrayList arrayList = new ArrayList();
                    String replace = staffUploadedFilePath.replace("\\", "/").replace(" ", "%20");
                    String substring = replace.substring(replace.lastIndexOf("/") + 1);
                    FilePathModelClass filePathModelClass = new FilePathModelClass();
                    filePathModelClass.setFileName(substring);
                    filePathModelClass.setFilePath(replace);
                    filePathModelClass.setDisplayFileName(substring);
                    arrayList.add(filePathModelClass);
                    findViewById.setAdapter(new DetailAdapter(this, this, arrayList, "Assignments"));
                } else {
                    findViewById.setVisibility(8);
                    z2 = false;
                }
                if (z || z2) {
                    this.mSubmittedFilesLL.addView(inflate);
                }
            }
        }
        if (this.mSubmittedFilesLL.getChildCount() == 0) {
            this.mStaffCorrectionsHeader.setText(Html.fromHtml("<b>Staff Corrections : </b>Yet to correct"));
        } else {
            this.mStaffCorrectionsHeader.setText(Html.fromHtml("<b>Staff Corrections : </b>"));
        }
    }

    protected void onPause() {
        resetVideos();
        super.onPause();
    }

    public void resetVideos() {
        ArrayList<FilePathModelClass> arrayList = this.ansVideoOrImgList;
        if (arrayList == null || arrayList.size() <= 0) {
            return;
        }
        Iterator<FilePathModelClass> it = this.ansVideoOrImgList.iterator();
        while (it.hasNext()) {
            FilePathModelClass next = it.next();
            if (next.getPlayerView() != null && next.getPlayerView().getPlayer() != null) {
                next.getPlayerView().getPlayer().setPlayWhenReady(false);
                next.getDownloadImage().setVisibility(0);
                next.getImage().setVisibility(0);
                next.getVideoView().setVisibility(8);
            }
        }
    }

    private void releaseVideos() {
        ArrayList<FilePathModelClass> arrayList = this.ansVideoOrImgList;
        if (arrayList == null || arrayList.size() <= 0) {
            return;
        }
        Iterator<FilePathModelClass> it = this.ansVideoOrImgList.iterator();
        while (it.hasNext()) {
            FilePathModelClass next = it.next();
            if (next.getPlayerView() != null && next.getPlayerView().getPlayer() != null) {
                next.getPlayerView().getPlayer().release();
                next.getDownloadImage().setVisibility(0);
                next.getImage().setVisibility(0);
                next.getVideoView().setVisibility(8);
            }
        }
    }

    protected void onDestroy() {
        releaseVideos();
        super.onDestroy();
    }

    public boolean onOptionsItemSelected(MenuItem menuItem) {
        if (menuItem.getItemId() == 16908332) {
            finish();
        }
        return super.onOptionsItemSelected(menuItem);
    }

    private void getExamAnswerDetails() {
        ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService("connectivity");
        if (connectivityManager.getActiveNetworkInfo() != null && connectivityManager.getActiveNetworkInfo().isAvailable() && connectivityManager.getActiveNetworkInfo().isConnected()) {
            getStudentOnlineSummativeExamAnswers();
        } else {
            Toast.makeText(getApplicationContext(), "Check your Network Connection", 0).show();
        }
    }

    private void getStudentOnlineSummativeExamAnswers() {
        TransparentProgressDialog transparentProgressDialog = this.mProgressbar;
        if (transparentProgressDialog != null && !transparentProgressDialog.isShowing()) {
            this.mProgressbar.show();
        }
        ((ApiInterface) ApiClient.getClient1(getApplicationContext()).create(ApiInterface.class)).GetStudentOnlineSummativeExamAnswers(this.mStudentEnrollmentID, this.examId, Utility.getSchoolApiKey(this)).enqueue(new Callback<ArrayList<SummativeExamAnswerFilesModel>>() {
            public void onResponse(Call<ArrayList<SummativeExamAnswerFilesModel>> call, Response<ArrayList<SummativeExamAnswerFilesModel>> response) {
                if (SummativeExamResultsActivity.this.mProgressbar != null && SummativeExamResultsActivity.this.mProgressbar.isShowing()) {
                    SummativeExamResultsActivity.this.mProgressbar.dismiss();
                }
                if (response == null || response.body() == null) {
                    Utility.showAlertDialog(SummativeExamResultsActivity.this.myActivity);
                    return;
                }
                ArrayList arrayList = (ArrayList) response.body();
                if (arrayList != null && arrayList.size() > 0) {
                    ArrayList arrayList2 = new ArrayList();
                    SummativeExamResultsActivity.this.ansVideoOrImgList = new ArrayList();
                    for (int i = 0; i < arrayList.size(); i++) {
                        SummativeExamAnswerFilesModel summativeExamAnswerFilesModel = (SummativeExamAnswerFilesModel) arrayList.get(i);
                        String submittedFilePath = summativeExamAnswerFilesModel.getSubmittedFilePath();
                        if (submittedFilePath != null && submittedFilePath.length() > 0 && !submittedFilePath.equalsIgnoreCase("null")) {
                            String replace = submittedFilePath.replace("\\", "/").replace(" ", "%20");
                            String substring = replace.substring(replace.lastIndexOf("/") + 1);
                            FilePathModelClass filePathModelClass = new FilePathModelClass();
                            filePathModelClass.setFileName(substring);
                            filePathModelClass.setFilePath(replace);
                            filePathModelClass.setDisplayFileName(summativeExamAnswerFilesModel.getSubmittedFileName());
                            String extension = new Filename(replace, '/', '.').extension();
                            if (extension.equalsIgnoreCase("AVI") || extension.equalsIgnoreCase("MP4") || extension.equalsIgnoreCase("M4P") || extension.equalsIgnoreCase("M4V") || extension.equalsIgnoreCase("WMV") || extension.equalsIgnoreCase("MOV") || extension.equalsIgnoreCase("WEBM") || extension.equalsIgnoreCase("MPG") || extension.equalsIgnoreCase("MP2") || extension.equalsIgnoreCase("MPEG") || extension.equalsIgnoreCase("MPE") || extension.equalsIgnoreCase("MPV") || extension.equalsIgnoreCase("OGG") || extension.equalsIgnoreCase("FLV") || extension.equalsIgnoreCase("MKV") || extension.equalsIgnoreCase("png") || extension.equalsIgnoreCase("jpg") || extension.equalsIgnoreCase("jpeg") || extension.equalsIgnoreCase("heic") || extension.equalsIgnoreCase("heif")) {
                                SummativeExamResultsActivity.this.ansVideoOrImgList.add(filePathModelClass);
                            } else {
                                arrayList2.add(filePathModelClass);
                            }
                        }
                    }
                    if (arrayList2.size() > 0) {
                        SummativeExamResultsActivity.this.mAnsListFiles.setVisibility(0);
                        AppCompatActivity appCompatActivity = SummativeExamResultsActivity.this;
                        SummativeExamResultsActivity.this.mAnsListFiles.setAdapter(new DetailAdapter(appCompatActivity, appCompatActivity, arrayList2, "Assignments"));
                    } else {
                        SummativeExamResultsActivity.this.mAnsListFiles.setVisibility(8);
                    }
                    if (SummativeExamResultsActivity.this.ansVideoOrImgList == null || SummativeExamResultsActivity.this.ansVideoOrImgList.size() <= 0) {
                        SummativeExamResultsActivity.this.mAnsListImagesOrVideos.setVisibility(8);
                    } else {
                        SummativeExamResultsActivity.this.mAnsListImagesOrVideos.setVisibility(0);
                        ?? r1 = SummativeExamResultsActivity.this;
                        SummativeExamResultsActivity.this.mAnsListImagesOrVideos.setAdapter(new DetailAdapter((Context) r1, (Activity) r1, ((SummativeExamResultsActivity) r1).ansVideoOrImgList, "Assignments"));
                    }
                }
                SummativeExamResultsActivity.this.createSubmittedFilesUI(arrayList);
                SummativeExamResultsActivity.this.mMainLL.setVisibility(0);
            }

            public void onFailure(Call<ArrayList<SummativeExamAnswerFilesModel>> call, Throwable th) {
                if (SummativeExamResultsActivity.this.mProgressbar != null && SummativeExamResultsActivity.this.mProgressbar.isShowing()) {
                    SummativeExamResultsActivity.this.mProgressbar.dismiss();
                }
                Utility.showAlertDialog(SummativeExamResultsActivity.this.myActivity);
            }
        });
    }

    protected void onResume() {
        super.onResume();
        String string = getSharedPreferences("", 0).getString("usernamekey", "");
        Bundle bundle = new Bundle();
        bundle.putString("user_name", string);
        FirebaseAnalytics.getInstance(this).logEvent("PAGE_SUMMATIVE_EXAM_RESULTS", bundle);
    }
}