aboutsummaryrefslogtreecommitdiffstats
path: root/view/theme/dispy/fpostit/fpostit.php
diff options
context:
space:
mode:
Diffstat (limited to 'view/theme/dispy/fpostit/fpostit.php')
-rw-r--r--view/theme/dispy/fpostit/fpostit.php134
1 files changed, 134 insertions, 0 deletions
diff --git a/view/theme/dispy/fpostit/fpostit.php b/view/theme/dispy/fpostit/fpostit.php
new file mode 100644
index 000000000..d00182946
--- /dev/null
+++ b/view/theme/dispy/fpostit/fpostit.php
@@ -0,0 +1,134 @@
+<?php
+if (!isset($_POST["friendica_acct_name"])) $_POST["friendica_acct_name"] = '';
+if (!isset($_COOKIE['username'])) $_COOKIE['username'] = '';
+if (!isset($_COOKIE['password'])) $_COOKIE['password'] = '';
+if (!isset($hostname)) $hostname = '';
+if (!isset($username)) $username = '';
+
+
+if (($_POST["friendica_acct_name"] != '') && ($_POST["friendica_password"] != '')) {
+ setcookie("username", $_POST["friendica_acct_name"], time()+60*60*24*300);
+ setcookie("password", $_POST["friendica_password"], time()+60*60*24*300);
+}
+
+?>
+<html>
+<head>
+ <style>
+ body {
+ font-family: sans-serif;
+ margin: 0px;
+ }
+ .wrap1 {
+ padding: 2px 5px;
+ background-color: #000;
+ margin-bottom: 10px;
+ }
+ .wrap2 {
+ margin-left: 10px;
+ font-size: 12px;
+ }
+ .logo {
+ margin-left: 3px;
+ margin-right: 5px;
+ float: left;
+ }
+ h2 {
+ color: #ffffff;
+ }
+ .error {
+ background-color: #FFFF66;
+ font-size: 12px;
+ margin-left: 10px;
+ }
+ </style>
+</head>
+
+<body>
+<?php
+
+if (isset($_GET['title'])) {
+ $title = $_GET['title'];
+}
+if (isset($_GET['text'])) {
+ $text = $_GET['text'];
+}
+if (isset($_GET['url'])) {
+ $url = $_GET['url'];
+}
+
+if ((isset($title)) && (isset($text)) && (isset($url))) {
+ $content = "$title\nsource:$url\n\n$text";
+} else {
+ $content = $_POST['content'];
+}
+
+if (isset($_POST['submit'])) {
+
+ if (($_POST["friendica_acct_name"] != '') && ($_POST["friendica_password"] != '')) {
+ $acctname = $_POST["friendica_acct_name"];
+ $tmp_account_array = explode("@", $acctname);
+ if (isset($tmp_account_array[1])) {
+ $username = $tmp_account_array[0];
+ $hostname = $tmp_account_array[1];
+ }
+ $password = $_POST["friendica_password"];
+ $content = $_POST["content"];
+
+ $url = "http://" . $hostname . '/api/statuses/update';
+ $data = array('status' => $content);
+
+ // echo "posting to: $url<br/>";
+
+ $c = curl_init();
+ curl_setopt($c, CURLOPT_URL, $url);
+ curl_setopt($c, CURLOPT_USERPWD, "$username:$password");
+ curl_setopt($c, CURLOPT_POSTFIELDS, $data);
+ curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
+ curl_setopt($c, CURLOPT_FOLLOWLOCATION, true);
+ $c_result = curl_exec($c);
+ if(curl_errno($c)){
+ $error = curl_error($c);
+ showForm($error, $content);
+ }
+
+ curl_close($c);
+ if (!isset($error)) {
+ echo '<script language="javascript" type="text/javascript">window.close();</script>';
+ }
+
+ } else {
+ $error = "Missing account name and/or password. Please try again.";
+ showForm($error, $content);
+ }
+
+} else {
+ showForm(null, $content);
+}
+
+function showForm($error, $content) {
+ $username_cookie = $_COOKIE['username'];
+ $password_cookie = $_COOKIE['password'];
+
+ echo <<<EOF
+ <div class="wrap1">
+ <h2><img class="logo" src="friendica-32.png" align="middle" />Friendica Bookmarklet</h2>
+ </div>
+
+ <div class="wrap2">
+ <form method="post" action="{$_SERVER['PHP_SELF']}">
+ Enter the email address of the Friendica Account that you want to cross-post to: (example: user@friendica.org)<br /><br />
+ Account ID: <input type="text" name="friendica_acct_name" value="{$username_cookie}" size="50" /><br />
+ Password: <input type="password" name="friendica_password" value="{$password_cookie}" size="50" /><br />
+ <textarea name="content" id="content" rows="6" cols="70">{$content}</textarea><br />
+ <input type="submit" value="PostIt!" name="submit" />&#160;&#160;<span class="error">$error</span>
+ </form>
+ <p></p>
+ </div>
+EOF;
+
+}
+?>
+
+</body>
+</html>