Skip to content
Snippets Groups Projects
Select Git revision
  • 825e1f093d903e3f8d9c5161f059df85794bafca
  • master default
2 results

TeacherActivity.java

Blame
  • TeacherActivity.java 5.06 KiB
    package com.darshanbshah.odsystem;
    
    import android.content.Intent;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.ListView;
    import android.widget.TextView;
    import android.widget.Toast;
    
    import com.google.firebase.auth.FirebaseAuth;
    import com.google.firebase.database.ChildEventListener;
    import com.google.firebase.database.DataSnapshot;
    import com.google.firebase.database.DatabaseError;
    import com.google.firebase.database.DatabaseReference;
    import com.google.firebase.database.FirebaseDatabase;
    import com.google.firebase.database.ValueEventListener;
    
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    
    public class TeacherActivity extends AppCompatActivity {
    
        FirebaseAuth mAuth;
        FirebaseDatabase database = FirebaseDatabase.getInstance();
    
        DatabaseReference root;
        DatabaseReference od;
        DatabaseReference adv;
        DatabaseReference student;
    
        List<String> uid_list = new ArrayList<String>();
        HashMap<String, String> uid_map = new HashMap<String, String>();
    
        ListView listView;
    
        CustomListAdapter adapter;
    
        String adv_name;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_teacher);
            mAuth = FirebaseAuth.getInstance();
            root = database.getReference();
            od = root.child("OD");
            adv = root.child("Advisors");
            student = root.child("Student");
            listView = (ListView)findViewById(R.id.listView);
    
            adv.addChildEventListener(new ChildEventListener() {
                @Override
                public void onChildAdded(DataSnapshot dataSnapshot, String s) {
                    for (DataSnapshot data : dataSnapshot.getChildren()) {
                        if (mAuth.getCurrentUser().getEmail().equals(data.getValue().toString())) {
                            Log.e("DATA_KEY", dataSnapshot.getKey());
                            adv_name = dataSnapshot.getKey();
    
                        }
                    }
                }
    
                @Override
                public void onChildChanged(DataSnapshot dataSnapshot, String s) {
    
                }
    
                @Override
                public void onChildRemoved(DataSnapshot dataSnapshot) {
    
                }
    
                @Override
                public void onChildMoved(DataSnapshot dataSnapshot, String s) {
    
                }
    
                @Override
                public void onCancelled(DatabaseError databaseError) {
    
                }
            });
    
            od.addChildEventListener(new ChildEventListener() {
                @Override
                public void onChildAdded(DataSnapshot dataSnapshot, String s) {
                    if (dataSnapshot.getKey().equals(adv_name)) {
                        Log.e("SNAP", dataSnapshot.getKey());
                        for (DataSnapshot data : dataSnapshot.getChildren()) {
                            Log.e("OD_LIST", data.getKey() + " " + data.getValue());
                            uid_map.put(data.getKey(), data.getValue().toString());
                            uid_list.add(data.getKey());
                        }
                    }
                    adapter = new CustomListAdapter(getApplicationContext(), R.layout.list_item);
                    listView.setAdapter(adapter);
    
                    Log.e("UIDLIST_SIZE", String.valueOf(uid_list.size()));
                    for (String value: uid_list) {
                        DataProvider provider = new DataProvider(value);
                        adapter.add(provider);
                    }
                }
    
                @Override
                public void onChildChanged(DataSnapshot dataSnapshot, String s) {
    
                }
    
                @Override
                public void onChildRemoved(DataSnapshot dataSnapshot) {
    
                }
    
                @Override
                public void onChildMoved(DataSnapshot dataSnapshot, String s) {
    
                }
    
                @Override
                public void onCancelled(DatabaseError databaseError) {
    
                }
            });
    
            student.addChildEventListener(new ChildEventListener() {
                @Override
                public void onChildAdded(DataSnapshot dataSnapshot, String s) {
    //                for(DataSnapshot dsp : dataSnapshot.getChildren()){
    //                    if (uid_list.contains(dataSnapshot.getKey())) {
    //                        if (dsp.getKey().toString().equals("RollNumber"))  {
    //                            t.setText(dsp.getValue().toString());
    //                        }
    //                    }
    //                }
                }
    
                @Override
                public void onChildChanged(DataSnapshot dataSnapshot, String s) {
    
                }
    
                @Override
                public void onChildRemoved(DataSnapshot dataSnapshot) {
    
                }
    
                @Override
                public void onChildMoved(DataSnapshot dataSnapshot, String s) {
    
                }
    
                @Override
                public void onCancelled(DatabaseError databaseError) {
    
                }
            });
    
        }
    
        public void signOut(View view) {
            mAuth.signOut();
            startActivity(new Intent(this, Login.class));
            finish();
        }
    }