Android Open Source - jotform-api-android Create Form Properties Activity






From Project

Back to project page jotform-api-android.

License

The source code is released under:

GNU General Public License

If you think the Android project jotform-api-android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.jotform.jotformapisample.list;
/*ww  w .  j  av a 2 s.com*/
import java.util.HashMap;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;

import com.jotform.api.JotformAPIClient;
import com.jotform.jotformapisample.R;
import com.jotform.jotformapisample.model.SharedData;
import com.loopj.android.http.JsonHttpResponseHandler;

public class CreateFormPropertiesActivity extends Activity {

  private static final long FORM_ID = 0L;

  private Spinner        mActiveRedirectSpinner;
  private EditText      mThankUrlEditText;
  private EditText      mFormWidthEditText;
  private EditText      mLabelWidthEditText;
  private Spinner        mStylesSpinner;
  private ProgressDialog    mProgressDialog;
  private Context        mContext;

  @Override
  public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_createformproperty);

    mContext = this;

    initData();
    initUI();
  }

  private void initData() {

  }

  private void initUI() {

    Button createFormPropertiesButton = (Button) findViewById(R.id.button_createformproperty);

    createFormPropertiesButton.setOnClickListener(new OnClickListener(){

      @Override
      public void onClick(View v) {
        // TODO Auto-generated method stub
        createFormProperties();
      }

    });

    mActiveRedirectSpinner = (Spinner) findViewById(R.id.spinner_activeredirect);

    mThankUrlEditText = (EditText) findViewById(R.id.edittext_thankurl);
    mFormWidthEditText = (EditText) findViewById(R.id.edittext_formWidth);
    mLabelWidthEditText = (EditText) findViewById(R.id.edittext_labelWidth);

    mStylesSpinner = (Spinner) findViewById(R.id.spinner_styles);
  }

  private void createFormProperties() {

    // check if FORM_ID is specified
    if ( FORM_ID == 0L ) {

      AlertDialog.Builder builder = new AlertDialog.Builder(mContext);

      builder.setTitle("JotformAPISample");
      builder.setCancelable(false);
      builder.setMessage("Please put Form's id in line 28, CreateFormPropertiesActivity.java");
      builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int item) {

        }
      });

      AlertDialog alert = builder.create();
      alert.show();

      return;
    }

    mProgressDialog = ProgressDialog.show(this, "", "Creating form properties...", true, false);

    SharedData sharedData = (SharedData) getApplicationContext();

    JotformAPIClient apiClient = sharedData.getJotformAPIClient();

    HashMap<String, String> formProperties = new HashMap<String, String>();

    if ( mThankUrlEditText.getText().length() > 0 )
      formProperties.put("thankurl", mThankUrlEditText.getText().toString());

    if ( mFormWidthEditText.getText().length() > 0 )
      formProperties.put("formWidth", mFormWidthEditText.getText().toString());

    if ( mLabelWidthEditText.getText().length() > 0 )
      formProperties.put("labelWidth", mLabelWidthEditText.getText().toString());

    formProperties.put("activeRedirect", mActiveRedirectSpinner.getSelectedItem().toString());
    formProperties.put("styles", mStylesSpinner.getSelectedItem().toString());

    apiClient.setFormProperties(FORM_ID, formProperties, new JsonHttpResponseHandler(){

      @Override
      public void onSuccess(JSONObject data) {

        int responseCode;

        try {

          // check if result is success or fail
          responseCode = data.getInt("responseCode");

          if ( responseCode == 200 || responseCode == 206 ) {

            // show alert dialog for success
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);

            builder.setTitle("JotformAPISample");
            builder.setCancelable(false);
            builder.setMessage("You added form properties successfully.");
            builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
              public void onClick(DialogInterface dialog, int item) {

              }
            });

            AlertDialog alert = builder.create();
            alert.show();

          }

        } catch (JSONException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
        }

        // dismiss loading dialog
        mProgressDialog.dismiss();
      }

      @Override
      public void onFailure(Throwable e, JSONObject data) {

        int responseCode;

        try {

          // check what the error is
          responseCode = data.getInt("responseCode");

          if ( responseCode == 401 ) {

            // show alert dialog
            String errMsg = data.getString("message") + "\n" + "Please check if your API Key's permission is 'Read Access' or 'Full Access'. You can create form with API key for 'Full Access'.";

            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);

            builder.setTitle("JotformAPISample");
            builder.setCancelable(false);
            builder.setMessage(errMsg);
            builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
              public void onClick(DialogInterface dialog, int item) {

              }
            });

            AlertDialog alert = builder.create();
            alert.show();
          }

        } catch (JSONException e1) {
          e1.printStackTrace();
        }

        mProgressDialog.dismiss();
      }

      @Override
      public void onFailure(Throwable e, JSONArray errorResponse) {

        mProgressDialog.dismiss();
      }

      @Override
      public void onFailure(Throwable e, String response) {

        mProgressDialog.dismiss();
      }

    });
  }

}




Java Source Code List

com.jotform.api.JotformAPIClient.java
com.jotform.api.JotformAPIException.java
com.jotform.api.JsonHelper.java
com.jotform.api.SubmissionFilter.java
com.jotform.jotformapisample.MainActivity.java
com.jotform.jotformapisample.SampleListActivity.java
com.jotform.jotformapisample.list.CreateFormActivity.java
com.jotform.jotformapisample.list.CreateFormPropertiesActivity.java
com.jotform.jotformapisample.list.CreateQuestionActivity.java
com.jotform.jotformapisample.list.CreateReportActivity.java
com.jotform.jotformapisample.list.CreateSubmissionActivity.java
com.jotform.jotformapisample.list.GetAllFormsActivity.java
com.jotform.jotformapisample.list.GetAllReportsActivity.java
com.jotform.jotformapisample.list.GetAllSubmissionsActivity.java
com.jotform.jotformapisample.list.GetFormPropertiesActivity.java
com.jotform.jotformapisample.list.GetHistoryActivity.java
com.jotform.jotformapisample.list.HistoryListActivity.java
com.jotform.jotformapisample.list.RegisterUserActivity.java
com.jotform.jotformapisample.list.SubmissionListActivity.java
com.jotform.jotformapisample.list.UpdateSettingActivity.java
com.jotform.jotformapisample.model.CommonInfo.java
com.jotform.jotformapisample.model.SharedData.java
com.jotform.jotformapisample.utils.DateTimePicker.java
com.jotform.jotformapisample.utils.PrettyDate.java
com.jotform.jotformapisample.utils.PrettyFormat.java