/**
* This file is part of FileSpace for Android, an app for managing your server (files, talks...).
* <p/>
* Copyright (c) 2014-2015 FileSpace for Android contributors (http://mercandalli.com)
* <p/>
* LICENSE:
* <p/>
* FileSpace for Android is free software: you can redistribute it and/or modify it under the terms of the GNU General
* Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any
* later version.
* <p/>
* FileSpace for Android is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
*
* @author Jonathan Mercandalli
* @license http://www.gnu.org/licenses/gpl.html
* @copyright 2014-2015 FileSpace for Android contributors (http://mercandalli.com)
*/
package com.mercandalli.android.apps.files.common.dialog;
import android.app.Activity;
import android.app.Dialog;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import com.mercandalli.android.apps.files.R;
import com.mercandalli.android.apps.files.common.listener.IListener;
import com.mercandalli.android.apps.files.common.listener.IPostExecuteListener;
import com.mercandalli.android.apps.files.common.net.TaskPost;
import com.mercandalli.android.apps.files.common.util.StringPair;
import com.mercandalli.android.apps.files.main.Config;
import com.mercandalli.android.apps.files.main.Constants;
import org.json.JSONException;
import org.json.JSONObject;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import java.util.TimeZone;
public class DialogCreateArticle extends Dialog {
private static final String TAG = "DialogCreateArticle";
private Activity mActivity;
EditText article_title_1, article_content_1;
public DialogCreateArticle(
final Activity activity,
final IListener listener) {
super(activity);
this.mActivity = activity;
this.setContentView(R.layout.dialog_create_article);
this.setTitle("Create Article");
this.setCancelable(true);
this.article_title_1 = (EditText) this.findViewById(R.id.title);
this.article_content_1 = (EditText) this.findViewById(R.id.content);
this.findViewById(R.id.request).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SimpleDateFormat dateFormatGmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US);
dateFormatGmt.setTimeZone(TimeZone.getTimeZone("UTC"));
String nowAsISO = dateFormatGmt.format(new Date());
JSONObject json = new JSONObject();
try {
json.put("type", "article");
json.put("date_creation", nowAsISO);
json.put("article_title_1", article_title_1.getText().toString());
json.put("article_content_1", article_content_1.getText().toString());
SimpleDateFormat dateFormatGmtTZ = new SimpleDateFormat("yyyy-MM-dd'T'HH-mm'Z'", Locale.US);
dateFormatGmtTZ.setTimeZone(TimeZone.getTimeZone("UTC"));
nowAsISO = dateFormatGmtTZ.format(new Date());
List<StringPair> parameters = new ArrayList<>();
parameters.add(new StringPair("content", json.toString()));
parameters.add(new StringPair("name", "ARTICLE_" + nowAsISO));
new TaskPost(mActivity,
Constants.URL_DOMAIN + Config.ROUTE_FILE,
new IPostExecuteListener() {
@Override
public void onPostExecute(JSONObject json, String body) {
if (listener != null) {
listener.execute();
}
}
}
, parameters, "text/html; charset=utf-8").execute();
} catch (JSONException e) {
Log.e(TAG, "DialogCreateArticle: failed to convert Json", e);
}
DialogCreateArticle.this.dismiss();
}
});
DialogCreateArticle.this.show();
}
}