private void shareOnFB() { // Create an object Set<String> permissions = AccessToken.getCurrentAccessToken().getPermissions(); if (!permissions.contains("publish_actions")) { LoginManager.getInstance() .registerCallback( callbackManager, new FacebookCallback<LoginResult>() { @Override public void onSuccess(LoginResult loginResult) { if (AccessToken.getCurrentAccessToken() .getPermissions() .contains("publish_actions")) { shareOnFB(); } } @Override public void onCancel() {} @Override public void onError(FacebookException e) {} }); LoginManager.getInstance() .logInWithPublishPermissions(PaymentActivity.this, Arrays.asList("publish_actions")); } else { String dateString = ""; String dateString2 = ""; try { Date date = new Date(mEventData.getSchedule().getStart_date()); SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.ENGLISH); dateString = sdf2.format(date); date.setTime(mEventData.getSchedule().getEnd_date()); dateString2 = sdf2.format(date); } catch (Exception e) { e.printStackTrace(); Crashlytics.logException(e); } String url = "http://purplesq.com/event/" + mEventData.get_id(); ShareOpenGraphObject eventObject = new ShareOpenGraphObject.Builder() .putString("fb:app_id", "852292264845107") .putString("og:type", "purplesquirrel:event") .putString("og:title", mEventData.getName()) .putString("og:description", mEventData.getSummary()) .putString("og:url", url) .putString("og:image", mEventData.getThumbnail()) .build(); ShareOpenGraphAction action = new ShareOpenGraphAction.Builder() .setActionType("purplesquirrel:attend") .putString("start_time", dateString) .putString("expires_time", dateString2) .putObject("event", eventObject) .build(); ShareOpenGraphContent content = new ShareOpenGraphContent.Builder() .setPreviewPropertyName("event") .setAction(action) .build(); if (ShareDialog.canShow(ShareOpenGraphContent.class)) { ShareDialog shareDialog = new ShareDialog(this); shareDialog.registerCallback( callbackManager, new FacebookCallback<Result>() { @Override public void onSuccess(Result result) { if (!TextUtils.isEmpty(result.getPostId())) { if (Config.DEBUG) { Log.i("Nish", "FB Share Success : " + result.getPostId()); } findViewById(R.id.activity_payment_coupon_cardview).setVisibility(View.GONE); } else { if (Config.DEBUG) { Log.i("Nish", "FB Share Success without postId "); } } } @Override public void onCancel() {} @Override public void onError(FacebookException e) {} }); shareDialog.show(content); } } }
private void populateUI() { LinearLayout participantslayout = (LinearLayout) findViewById(R.id.activity_payment_layout_participants); Button btnPay = (Button) findViewById(R.id.activity_payment_btn_pay); Button btnCod = (Button) findViewById(R.id.activity_payment_btn_cod); TextView tvAmount = (TextView) findViewById(R.id.activity_payment_tv_eventamount); TextView tvHeading = (TextView) findViewById(R.id.activity_payment_tv_eventname); TextView tvDate = (TextView) findViewById(R.id.activity_payment_tv_eventdate); tvDiscount = (TextView) findViewById(R.id.activity_payment_tv_coupon_applied); final EditText etCoupons = (EditText) findViewById(R.id.activity_payment_et_coupon); String eventDay = ""; try { Date date = new Date(mEventData.getSchedule().getStart_date()); SimpleDateFormat sdf2 = new SimpleDateFormat("dd MMM", Locale.ENGLISH); eventDay = sdf2.format(date); } catch (Exception e) { e.printStackTrace(); Crashlytics.logException(e); } tvHeading.setText(mEventData.getName()); tvDate.setText(eventDay + ", " + mEventData.getLocation().getCity()); for (int i = 0; i < mParticipantList.size(); i++) { View participantView = getLayoutInflater() .inflate(R.layout.item_payment_participants, participantslayout, false); ((TextView) participantView.findViewById(R.id.item_payment_participants_tv_name)) .setText( mParticipantList.get(i).getFirstname() + " " + mParticipantList.get(i).getLastname()); ((TextView) participantView.findViewById(R.id.item_payment_participants_tv_insitute)) .setText(mParticipantList.get(i).getInstitute()); ((TextView) participantView.findViewById(R.id.item_payment_participants_tv_number)) .setText((i + 1) + ""); participantslayout.addView(participantView); } Typeface font = Typeface.createFromAsset(getAssets(), "fontawesome.ttf"); tvAmount.setTypeface(font); tvAmount.setText(PSQConsts.UNICODE_RUPEE + " " + (int) mAmount); btnPay.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { if (authVo != null) { PurpleSQ.showLoadingDialog(PaymentActivity.this); new RegisterParticipantsTask( mEventId, authVo.getToken(), couponCode, mParticipantList, PaymentActivity.this) .execute((Void) null); } } }); btnCod.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(mActivity, CodActivity.class); intent.putExtra(PSQConsts.EXTRAS_EVENT_POSITION, position); intent.putExtra("discount", discountedPrice); intent.putExtra("coupon", couponCode); intent.putExtra("discount-string", tvDiscount.getText()); intent.putParcelableArrayListExtra(PSQConsts.EXTRAS_PARTICIPANTS, mParticipantList); startActivity(intent); } }); findViewById(R.id.activity_payment_tv_coupon_apply) .setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { couponCode = etCoupons.getText().toString(); if (!TextUtils.isEmpty(couponCode)) { new CheckCouponTask( authVo.getToken(), couponCode, mEventData.getId(), (int) mAmount, PaymentActivity.this) .execute(); } } }); findViewById(R.id.activity_payment_fbshare_cardview) .setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { shareOnFB(); } }); etCoupons.addTextChangedListener( new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) {} @Override public void onTextChanged(CharSequence s, int start, int before, int count) { etCoupons.setError(null); } @Override public void afterTextChanged(Editable s) {} }); findViewById(R.id.activity_payment_coupon_cardview).setVisibility(View.VISIBLE); }