- package com.example.garella.kftta;
- import android.content.Intent;
- import android.os.Bundle;
- import android.support.design.widget.FloatingActionButton;
- import android.support.design.widget.Snackbar;
- import android.support.v7.widget.LinearLayoutManager;
- import android.support.v7.widget.RecyclerView;
- import android.view.View;
- import android.support.design.widget.NavigationView;
- import android.support.v4.view.GravityCompat;
- import android.support.v4.widget.DrawerLayout;
- import android.support.v7.app.ActionBarDrawerToggle;
- import android.support.v7.app.AppCompatActivity;
- import android.support.v7.widget.Toolbar;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.widget.TextView;
- import android.widget.Toast;
- import com.example.garella.kftta.Common.Common;
- import com.example.garella.kftta.Interface.ItemClickListener;
- import com.example.garella.kftta.Model.Food;
- import com.example.garella.kftta.Model.FoodTruck;
- import com.example.garella.kftta.ViewHolder.FoodTruckViewHolder;
- import com.firebase.ui.database.FirebaseRecyclerAdapter;
- import com.google.firebase.database.DatabaseReference;
- import com.google.firebase.database.FirebaseDatabase;
- import com.squareup.picasso.Picasso;
- public class Home extends AppCompatActivity
- implements NavigationView.OnNavigationItemSelectedListener {
- FirebaseDatabase database;
- DatabaseReference foodtruck;
- TextView txtFullName;
- RecyclerView recycler_foodtruck;
- RecyclerView.LayoutManager layoutManager;
- FirebaseRecyclerAdapter<FoodTruck,FoodTruckViewHolder> adapter;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate (savedInstanceState);
- setContentView (R.layout.activity_home);
- Toolbar toolbar = (Toolbar) findViewById (R.id.toolbar);
- toolbar.setTitle ("Food Truck Name");
- setSupportActionBar (toolbar);
- //Init Firebase
- database = FirebaseDatabase.getInstance ();
- foodtruck = database.getReference ("FoodTruck");
- FloatingActionButton fab = (FloatingActionButton) findViewById (R.id.fab);
- fab.setOnClickListener (new View.OnClickListener () {
- @Override
- public void onClick(View view) {
- Snackbar.make (view, "Replace with your own action", Snackbar.LENGTH_LONG)
- .setAction ("Action", null).show ();
- }
- });
- DrawerLayout drawer = (DrawerLayout) findViewById (R.id.drawer_layout);
- ActionBarDrawerToggle toggle = new ActionBarDrawerToggle (
- this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
- drawer.addDrawerListener (toggle);
- toggle.syncState ();
- NavigationView navigationView = (NavigationView) findViewById (R.id.nav_view);
- navigationView.setNavigationItemSelectedListener (this);
- //Set Name for User
- View headerView = navigationView.getHeaderView (0);
- txtFullName = (TextView)headerView.findViewById (R.id.txtFullName);
- txtFullName.setText (Common.currentUser.getName ());
- //Load Foodtruck
- recycler_foodtruck = (RecyclerView)findViewById (R.id.recyclerviewfoodtruck);
- recycler_foodtruck.setHasFixedSize (true);
- layoutManager = new LinearLayoutManager (this);
- recycler_foodtruck.setLayoutManager (layoutManager);
- loadMenu();
- }
- private void loadMenu() {
- adapter = new FirebaseRecyclerAdapter<FoodTruck, FoodTruckViewHolder> (FoodTruck.class,R.layout.foodtruckname,FoodTruckViewHolder.class,foodtruck) {
- @Override
- protected void populateViewHolder(FoodTruckViewHolder viewHolder, FoodTruck model, int position) {
- viewHolder.txtFoodtruckName.setText (model.getName ());
- Picasso.with(getBaseContext ()).load (model.getImage ())
- .into (viewHolder.imageView);
- final FoodTruck clickItem = model;
- viewHolder.setItemClickListener (new ItemClickListener () {
- @Override
- public void onClick(View view, int position, boolean isLongClick) {
- //Get Food truck Id and send to new Activity
- Intent foodList = new Intent (Home.this, FoodList.class);
- //FoodTruck Id is key
- foodList.putExtra ("FoodTruckID",adapter.getRef (position).getKey ());
- startActivity (foodList);
- }
- });
- }
- };
- recycler_foodtruck.setAdapter (adapter);
- }
- @Override
- public void onBackPressed() {
- DrawerLayout drawer = (DrawerLayout) findViewById (R.id.drawer_layout);
- if (drawer.isDrawerOpen (GravityCompat.START)) {
- drawer.closeDrawer (GravityCompat.START);
- } else {
- super.onBackPressed ();
- }
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater ().inflate (R.menu.home, menu);
- return true;
- }
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- return super.onOptionsItemSelected (item);
- }
- @SuppressWarnings("StatementWithEmptyBody")
- @Override
- public boolean onNavigationItemSelected(MenuItem item) {
- // Handle navigation view item clicks here.
- int id = item.getItemId ();
- if (id == R.id.nav_foodtruck) {
- } else if (id == R.id.nav_cart) {
- } else if (id == R.id.nav_order) {
- } else if (id == R.id.nav_location) {
- } else if (id == R.id.nav_logout) {
- }
- DrawerLayout drawer = (DrawerLayout) findViewById (R.id.drawer_layout);
- drawer.closeDrawer (GravityCompat.START);
- return true;
- }
- }