// Path: app/src/main/java/com/ghn/android/BoilerplateApplication.java
// public class BoilerplateApplication extends Application {
//   private static final String CANARO_EXTRA_BOLD_PATH = "fonts/canaro_extra_bold.otf";
//   public static Typeface canaroExtraBold;
//   public static com.ghn.android.data.Preference preference;
// 
//   public static BoilerplateApplication get(Context context) {
//     return (BoilerplateApplication) context.getApplicationContext();
//   }
// 
//   @Override
//   public void onCreate() {
//     super.onCreate();
//     Base.initialize(this);
//     if (BuildConfig.DEBUG) {
//     //  Timber.plant(new Timber.DebugTree());
// //            Fabric.with(this, new Crashlytics());
//     }
//     initTypefaceAndPreference();
//   //  Log.e("sshfingerPrint",getCertificateSHA1Fingerprint());
//   }
// 
//   public static void showToast(Context context, String message) {
//     SuperToast superToast = new SuperToast(context);
//     SuperToast.cancelAllSuperToasts();
//     superToast.setAnimations(SuperToast.Animations.POPUP);
//     superToast.setDuration(SuperToast.Duration.SHORT);
//     superToast.setText(" " + message);
//     superToast.setTextColor(context.getResources().getColor(R.color.primary_dark));
//     superToast.setBackground(R.drawable.border_toast);
//     superToast.show();
//   }
//   private String getCertificateSHA1Fingerprint() {
//     PackageManager pm = this.getPackageManager();
//     String packageName = this.getPackageName();
//     int flags = PackageManager.GET_SIGNATURES;
//     PackageInfo packageInfo = null;
//     try {
//       packageInfo = pm.getPackageInfo(packageName, flags);
//     } catch (PackageManager.NameNotFoundException e) {
//       e.printStackTrace();
//     }
//     Signature[] signatures = packageInfo.signatures;
//     byte[] cert = signatures[0].toByteArray();
//     InputStream input;
//     input = new ByteArrayInputStream(cert);
//     CertificateFactory cf = null;
//     try {
//       cf = CertificateFactory.getInstance("X509");
//     } catch (CertificateException e) {
//       e.printStackTrace();
//     }
//     X509Certificate c = null;
//     try {
//       c = (X509Certificate) cf.generateCertificate(input);
//     } catch (CertificateException e) {
//       e.printStackTrace();
//     }
//     String hexString = null;
//     try {
//       MessageDigest md = MessageDigest.getInstance("SHA1");
//       byte[] publicKey = md.digest(c.getEncoded());
//       hexString = byte2HexFormatted(publicKey);
//     } catch (NoSuchAlgorithmException e1) {
//       e1.printStackTrace();
//     } catch (CertificateEncodingException e) {
//       e.printStackTrace();
//     }
//     return hexString;
//   }
// 
//   public static String byte2HexFormatted(byte[] arr) {
//     StringBuilder str = new StringBuilder(arr.length * 2);
//     for (int i = 0; i < arr.length; i++) {
//       String h = Integer.toHexString(arr[i]);
//       int l = h.length();
//       if (l == 1) h = "0" + h;
//       if (l > 2) h = h.substring(l - 2, l);
//       str.append(h.toUpperCase());
//       if (i < (arr.length - 1)) str.append(':');
//     }
//     return str.toString();
//   }
//   private void initTypefaceAndPreference() {
//     canaroExtraBold = Typeface.createFromAsset(getAssets(), CANARO_EXTRA_BOLD_PATH);
//     preference = new com.ghn.android.data.Preference(getSharedPreferences(com.ghn.android.data.Preference.RETAIL_SHARED_PREFERENCES_FILE, Context.MODE_PRIVATE));
//   }
// 
// 
// }


import android.Manifest;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.design.widget.TextInputLayout;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.telephony.TelephonyManager;
import android.util.Log;
import android.view.MenuItem;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.ImageView;
import com.afollestad.materialdialogs.MaterialDialog;
import com.ghn.android.BoilerplateApplication;
import com.ghn.android.R;
import java.io.File;
import java.io.IOException;
import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;
import nl.changer.polypicker.Config;
import nl.changer.polypicker.ImagePickerActivity;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.MediaType;
import okhttp3.MultipartBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
                System.arraycopy(parcelableUris, 0, uris, 0, parcelableUris.length);

                if (uris != null) {
                    uri = uris[0];
                    ivNewsImage.setImageURI(uri);
                }
            }
        }
    }

    private void hitCreateNewsApi() {
        showProgressDialog();
        OkHttpClient client = new OkHttpClient();
        Request request = new Request.Builder()
                .url("http://216.158.225.126/~androidapp/index.php/api/uploadNews")
                .post(createNews())
                .build();
        client.newCall(request).enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                materialDialog.dismiss();
                e.printStackTrace();
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                Log.e("response=", response.body().string());
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
// Path: app/src/main/java/com/ghn/android/BoilerplateApplication.java
// public class BoilerplateApplication extends Application {
//   private static final String CANARO_EXTRA_BOLD_PATH = "fonts/canaro_extra_bold.otf";
//   public static Typeface canaroExtraBold;
//   public static com.ghn.android.data.Preference preference;
// 
//   public static BoilerplateApplication get(Context context) {
//     return (BoilerplateApplication) context.getApplicationContext();
//   }
// 
//   @Override
//   public void onCreate() {
//     super.onCreate();
//     Base.initialize(this);
//     if (BuildConfig.DEBUG) {
//     //  Timber.plant(new Timber.DebugTree());
// //            Fabric.with(this, new Crashlytics());
//     }
//     initTypefaceAndPreference();
//   //  Log.e("sshfingerPrint",getCertificateSHA1Fingerprint());
//   }
// 
//   public static void showToast(Context context, String message) {
//     SuperToast superToast = new SuperToast(context);
//     SuperToast.cancelAllSuperToasts();
//     superToast.setAnimations(SuperToast.Animations.POPUP);
//     superToast.setDuration(SuperToast.Duration.SHORT);
//     superToast.setText(" " + message);
//     superToast.setTextColor(context.getResources().getColor(R.color.primary_dark));
//     superToast.setBackground(R.drawable.border_toast);
//     superToast.show();
//   }
//   private String getCertificateSHA1Fingerprint() {
//     PackageManager pm = this.getPackageManager();
//     String packageName = this.getPackageName();
//     int flags = PackageManager.GET_SIGNATURES;
//     PackageInfo packageInfo = null;
//     try {
//       packageInfo = pm.getPackageInfo(packageName, flags);
//     } catch (PackageManager.NameNotFoundException e) {
//       e.printStackTrace();
//     }
//     Signature[] signatures = packageInfo.signatures;
//     byte[] cert = signatures[0].toByteArray();
//     InputStream input;
//     input = new ByteArrayInputStream(cert);
//     CertificateFactory cf = null;
//     try {
//       cf = CertificateFactory.getInstance("X509");
//     } catch (CertificateException e) {
//       e.printStackTrace();
//     }
//     X509Certificate c = null;
//     try {
//       c = (X509Certificate) cf.generateCertificate(input);
//     } catch (CertificateException e) {
//       e.printStackTrace();
//     }
//     String hexString = null;
//     try {
//       MessageDigest md = MessageDigest.getInstance("SHA1");
//       byte[] publicKey = md.digest(c.getEncoded());
//       hexString = byte2HexFormatted(publicKey);
//     } catch (NoSuchAlgorithmException e1) {
//       e1.printStackTrace();
//     } catch (CertificateEncodingException e) {
//       e.printStackTrace();
//     }
//     return hexString;
//   }
// 
//   public static String byte2HexFormatted(byte[] arr) {
//     StringBuilder str = new StringBuilder(arr.length * 2);
//     for (int i = 0; i < arr.length; i++) {
//       String h = Integer.toHexString(arr[i]);
//       int l = h.length();
//       if (l == 1) h = "0" + h;
//       if (l > 2) h = h.substring(l - 2, l);
//       str.append(h.toUpperCase());
//       if (i < (arr.length - 1)) str.append(':');
//     }
//     return str.toString();
//   }
//   private void initTypefaceAndPreference() {
//     canaroExtraBold = Typeface.createFromAsset(getAssets(), CANARO_EXTRA_BOLD_PATH);
//     preference = new com.ghn.android.data.Preference(getSharedPreferences(com.ghn.android.data.Preference.RETAIL_SHARED_PREFERENCES_FILE, Context.MODE_PRIVATE));
//   }
// 
// 
// }


// Path: app/src/main/java/com/ghn/android/ui/feeds/UploadNewsActivity.java
import android.Manifest;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.design.widget.TextInputLayout;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.telephony.TelephonyManager;
import android.util.Log;
import android.view.MenuItem;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.ImageView;
import com.afollestad.materialdialogs.MaterialDialog;
import com.ghn.android.BoilerplateApplication;
import com.ghn.android.R;
import java.io.File;
import java.io.IOException;
import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;
import nl.changer.polypicker.Config;
import nl.changer.polypicker.ImagePickerActivity;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.MediaType;
import okhttp3.MultipartBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;

                System.arraycopy(parcelableUris, 0, uris, 0, parcelableUris.length);

                if (uris != null) {
                    uri = uris[0];
                    ivNewsImage.setImageURI(uri);
                }
            }
        }
    }

    private void hitCreateNewsApi() {
        showProgressDialog();
        OkHttpClient client = new OkHttpClient();
        Request request = new Request.Builder()
                .url("http://216.158.225.126/~androidapp/index.php/api/uploadNews")
                .post(createNews())
                .build();
        client.newCall(request).enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                materialDialog.dismiss();
                e.printStackTrace();
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                Log.e("response=", response.body().string());
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        BoilerplateApplication.showToast(UploadNewsActivity.this, "News added successfully!");