package com.liferay.ldxdemo.fragments;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.liferay.ldxdemo.R;
import com.liferay.ldxdemo.activities.MenuActivity;
import com.liferay.mobile.android.callback.typed.JSONObjectCallback;
import com.liferay.mobile.android.service.Session;
import com.liferay.mobile.android.v62.ddlrecordset.DDLRecordSetService;
import com.liferay.mobile.screens.base.list.BaseListListener;
import com.liferay.mobile.screens.base.list.BaseListScreenlet;
import com.liferay.mobile.screens.context.SessionContext;
import com.liferay.mobile.screens.context.storage.CredentialsStorageBuilder;
import com.liferay.mobile.screens.ddl.list.DDLListScreenlet;
import com.liferay.mobile.screens.ddl.model.Record;
import com.liferay.mobile.screens.util.LiferayLogger;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.List;
/**
* @author Javier Gamarra
*/
public class WalletFragment extends NamedFragment implements BaseListListener<Record> {
public static WalletFragment newInstance() {
return new WalletFragment();
}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.content_wallet, container, false);
DDLListScreenlet ddlList = (DDLListScreenlet) view.findViewById(R.id.wallet_default);
ddlList.setListener(this);
return view;
}
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (!SessionContext.isLoggedIn()) {
SessionContext.loadStoredCredentials(CredentialsStorageBuilder.StorageType.SHARED_PREFERENCES);
((MenuActivity) getActivity()).loadPortrait();
}
}
@Override
public void onListPageFailed(int startRow, Exception e) {
}
@Override
public void onListPageReceived(int startRow, int endRow, List<Record> entries, int rowCount) {
}
@Override
public void onListItemSelected(Record element, View view) {
//loadDDLForm(element);
getFragmentManager().
beginTransaction().
replace(R.id.content_frame, CouponFragment.newInstance()).
addToBackStack(null).
commit();
}
// private void loadDDLForm(Record element) {
// final String recordId = (String) (element.getModelAttributes().get("recordId"));
// final String recordSetId = (String) (element.getModelAttributes().get("recordSetId"));
//
// try {
// Session session = SessionContext.createSessionFromCurrentSession();
// session.setCallback(getCallback(recordId, recordSetId));
//
// new DDLRecordSetService(session).getRecordSet(Long.valueOf(recordSetId));
// } catch (Exception e) {
// LiferayLogger.e("error loading structuare id", e);
// }
// }
//
// private JSONObjectCallback getCallback(final String recordId, final String recordSetId) {
// return new JSONObjectCallback() {
//
// @Override
// public void onSuccess(JSONObject result) {
// try {
// getFragmentManager().
// beginTransaction().
// replace(R.id.content_frame, CouponFragment.newInstance(recordId, recordSetId, result.getInt("DDMStructureId"))).
// addToBackStack(null).
// commit();
//
// } catch (JSONException e) {
// LiferayLogger.e("error parsing JSON", e);
// }
// }
//
// @Override
// public void onFailure(Exception e) {
// LiferayLogger.e("error loading structure id", e);
// }
// };
// }
@Override
public String getName() {
return "My Wallet";
}
@Override
public void error(Exception e, String userAction) {
}
}