Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.regalnine.virtualclocking.ui.menu.fragment;
- import android.annotation.SuppressLint;
- import android.content.Intent;
- import android.os.Bundle;
- import android.support.annotation.NonNull;
- import android.support.v4.app.Fragment;
- import android.support.v7.widget.LinearLayoutManager;
- import android.support.v7.widget.RecyclerView;
- import android.view.LayoutInflater;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.LinearLayout;
- import android.widget.TextView;
- import android.widget.Toast;
- import com.google.firebase.auth.FirebaseAuth;
- import com.google.firebase.auth.FirebaseUser;
- 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 com.regalnine.virtualclocking.R;
- import com.regalnine.virtualclocking.ui.menu.MainActivity;
- import com.regalnine.virtualclocking.ui.next.PojoNextDaysPlan;
- import com.regalnine.virtualclocking.ui.today.MyPlanActivity;
- import com.regalnine.virtualclocking.util.PrefManager;
- import java.util.ArrayList;
- import java.util.Calendar;
- import io.github.fentonmartin.aappz.util.DateZ;
- /**
- * A simple {@link Fragment} subclass.
- */
- public class SBNextDayFragment extends Fragment {
- private RecyclerView mRecyclerView;
- DatabaseReference mDatabase;
- FirebaseUser user;
- SBNextDayFragment.ListAdapter adapter;
- ArrayList<PojoNextDaysPlan> list = new ArrayList<>();
- public SBNextDayFragment() {
- // Required empty public constructor
- }
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- // Inflate the layout for this fragment
- setHasOptionsMenu(true);
- View view = inflater.inflate(R.layout.fragment_sbnext_day, container, false);
- ((MainActivity) getActivity()).getSupportActionBar().setTitle("Next Days Plan");
- //getAccess
- user = FirebaseAuth.getInstance().getCurrentUser();
- final String current_uid = user.getUid();
- mDatabase = FirebaseDatabase.getInstance().getReference().child("user").child(current_uid);
- mDatabase.keepSynced(true);
- mRecyclerView = view.findViewById(R.id.rc_next_day);
- mRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
- mDatabase = FirebaseDatabase.getInstance().getReference().child("user");
- mDatabase.addValueEventListener(new ValueEventListener() {
- @Override
- public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
- for (DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()) {
- final String id = dataSnapshot1.getKey();
- mDatabase = FirebaseDatabase.getInstance().getReference().child("user").child(id).child("today");
- mDatabase.addListenerForSingleValueEvent(new ValueEventListener() {
- @Override
- public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
- list = new ArrayList<>();
- for (DataSnapshot data : dataSnapshot.getChildren()) {
- PojoNextDaysPlan p = data.getValue(PojoNextDaysPlan.class);
- list.add(p);
- adapter = new ListAdapter(list);
- mRecyclerView.setAdapter(adapter);
- }
- }
- @Override
- public void onCancelled(@NonNull DatabaseError databaseError) {
- Toast.makeText(getActivity(), "Error : " + databaseError, Toast.LENGTH_SHORT).show();
- }
- });
- }
- }
- @Override
- public void onCancelled(@NonNull DatabaseError databaseError) {
- Toast.makeText(getActivity(), "Opsss.... Something is wrong", Toast.LENGTH_SHORT).show();
- }
- });
- return view;
- }
- public class ListAdapter extends RecyclerView.Adapter<ListAdapter.ViewHolder> {
- private ArrayList<PojoNextDaysPlan> list;
- public ListAdapter(ArrayList<PojoNextDaysPlan> data) {
- this.list = data;
- }
- public class ViewHolder extends RecyclerView.ViewHolder {
- TextView tvToday, tvDate, tvTitle, tvTime;
- LinearLayout container;
- String dateToday, dateTomorrow, dateFirebase, isi;
- public ViewHolder(View itemView) {
- super(itemView);
- this.tvToday = itemView.findViewById(R.id.tv_next_day);
- this.tvDate = itemView.findViewById(R.id.tv_next_day_date);
- this.tvTitle = itemView.findViewById(R.id.tv_next_day_title);
- this.tvTime = itemView.findViewById(R.id.tv_next_day_time);
- this.container = itemView.findViewById(R.id.row_item_next_day);
- }
- }
- @Override
- public void onBindViewHolder(ListAdapter.ViewHolder holder, @SuppressLint("RecyclerView") final int position) {
- final String total_today = String.valueOf(list.size());
- new PrefManager(getContext()).setTotalToday(total_today);
- holder.tvDate.setText(list.get(position).getDate());
- holder.tvTitle.setText(list.get(position).getPlan_title());
- holder.tvTime.setText(list.get(position).getStart_time());
- final Calendar c = Calendar.getInstance();
- int date = c.get(Calendar.DAY_OF_MONTH);
- int mount = c.get(Calendar.MONTH);
- int year = c.get(Calendar.YEAR);
- holder.dateFirebase = list.get(position).getDate();
- holder.dateToday = date + "/" + (mount+1) + "/" + year;
- holder.dateTomorrow = (date+1) + "/" + (mount+1) + "/" + year;
- if (holder.dateToday == holder.dateFirebase){
- holder.isi = "Today";
- } else if (holder.dateTomorrow == holder.dateFirebase){
- holder.isi = "Tomorrow";
- } else {
- holder.isi = "iseh sui";
- }
- holder.tvToday.setText(holder.isi);
- holder.container.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Intent i = new Intent(getActivity(), MyPlanActivity.class);
- i.putExtra("today", list.get(position).getProject());
- i.putExtra("date_plan", list.get(position).getDate());
- i.putExtra("title", list.get(position).getPlan_title());
- i.putExtra("start_time", list.get(position).getStart_time());
- i.putExtra("end_time", list.get(position).getEnd_time());
- i.putExtra("description", list.get(position).getDescription());
- i.putExtra("project", list.get(position).getProject());
- i.putExtra("uid", list.get(position).getUid());
- startActivity(i);
- Toast.makeText(getActivity(), "Item " + (position + 1) + " is clicked.", Toast.LENGTH_SHORT).show();
- }
- });
- }
- @Override
- public ListAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
- View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.row_item_next_day, parent, false);
- SBNextDayFragment.ListAdapter.ViewHolder viewHolder = new ListAdapter.ViewHolder(view);
- return viewHolder;
- }
- @Override
- public int getItemCount() {
- return list.size();
- }
- }
- @Override
- public void onPrepareOptionsMenu(Menu menu) {
- MenuItem item = menu.findItem(R.id.logout);
- if (item != null)
- item.setVisible(false);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement