package etelligens.com.foodsafety.fragments; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.TextView; import android.widget.Toast; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import com.google.gson.Gson; import org.json.JSONException; import org.json.JSONObject; import java.util.ArrayList; import etelligens.com.foodsafety.R; import etelligens.com.foodsafety.activities.ItemSelection; import etelligens.com.foodsafety.activities.settings.NotificationSettingsActivity; import etelligens.com.foodsafety.adapter.SettingsA; import etelligens.com.foodsafety.model.SettingsM; import etelligens.com.foodsafety.utils.BaseFragment; public class SettingsFrag extends BaseFragment implements View.OnClickListener { RecyclerView recyclerView; ArrayList settingsModels = new ArrayList<>(); SettingsA settingsAdapter; TextView tvchoosepartner, tvchooseOutlet, dashboardtxt; String mySettingsArra[] = {"Notification"}; String childArra[] = {"Choose One"}; private static int REQUEST_PATNER=1; private static int REQUEST_OUTLET=2; String keyButton, oID = "empty", pID = "empty", idValue, itemName, ooID, ppID; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } View view; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment view = inflater.inflate(R.layout.fragment_settings, container, false); getSavedData(); recyclerView = view.findViewById(R.id.settings_recylerview); tvchoosepartner = view.findViewById(R.id.tv_choose_partner); tvchooseOutlet = view.findViewById(R.id.tv_choose_outlet); dashboardtxt = view.findViewById(R.id.dashboard_txt); recyclerView.setHasFixedSize(true); LinearLayoutManager layoutManager = new LinearLayoutManager(getContext(), LinearLayoutManager.VERTICAL, false); recyclerView.setLayoutManager(layoutManager); if (roleID.equals("3")) { pID = partnerID; idValue = partnerID; tvchoosepartner.setVisibility(View.INVISIBLE); } settingsAdapter = new SettingsA(getContext(), settingsModels, m -> { if (!oID.equals("empty")) { Intent i = new Intent(getContext(), NotificationSettingsActivity.class); i.putExtra("outID", oID); i.putExtra("partID", pID); // i.putExtra("partName",) startActivity(i); } else { Toast.makeText(getContext(), getString(R.string.choose_patner_n_outlet), Toast.LENGTH_SHORT).show(); } }); recyclerView.setAdapter(settingsAdapter); for (int i = 0; i < mySettingsArra.length; i++) { String name = mySettingsArra[i]; String subname = childArra[i]; int id = i + 1; settingArr(id, name, subname); } tvchoosepartner.setOnClickListener(this); tvchooseOutlet.setOnClickListener(this); dashboardtxt.setOnClickListener(this); return view; } private void settingArr(final int id, final String name, final String subname) { JSONObject jsonObject = new JSONObject(); try { jsonObject.put("id", id); jsonObject.put("name", name); jsonObject.put("subname", subname); Gson gson = new Gson(); SettingsM settingsModel = gson.fromJson(String.valueOf(jsonObject), SettingsM.class); settingsModels.add(settingsModel); settingsAdapter.notifyDataSetChanged(); } catch (JSONException e) { e.printStackTrace(); } } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == Activity.RESULT_OK) { if (requestCode==REQUEST_PATNER) { idValue = data.getStringExtra("idValue"); itemName = data.getStringExtra("itemName"); tvchoosepartner.setText(itemName); pID = idValue; ppID = pID; } if (requestCode==REQUEST_OUTLET) { idValue = data.getStringExtra("idValue"); itemName = data.getStringExtra("itemName"); tvchooseOutlet.setText(itemName); oID = idValue; ooID = oID; } } } @Override public void onClick(View view) { switch (view.getId()) { case R.id.tv_choose_partner: { Intent i = new Intent(getContext(), ItemSelection.class); /*i.putExtra("change_type", "locationList");*/ i.putExtra("selection_type",getString(R.string.tv_patner)); startActivityForResult(i, REQUEST_PATNER); } break; case R.id.tv_choose_outlet: { if (!pID.equals("empty")) { System.out.println(idValue + " ....iddd"); Intent i = new Intent(getContext(), ItemSelection.class); i.putExtra("selection_type", getString(R.string.tv_outlet)); i.putExtra("id", pID); startActivityForResult(i, REQUEST_OUTLET); } else { Toast.makeText(getContext(), R.string.choose_partner, Toast.LENGTH_SHORT).show(); } } break; case R.id.dashboard_txt: { gotoDashboard(getActivity()); } break; } } }