aboutsummaryrefslogtreecommitdiffstats
path: root/view/theme/diabook-red/fpostit
diff options
context:
space:
mode:
Diffstat (limited to 'view/theme/diabook-red/fpostit')
-rw-r--r--view/theme/diabook-red/fpostit/README8
-rw-r--r--view/theme/diabook-red/fpostit/fpostit.js6
-rw-r--r--view/theme/diabook-red/fpostit/fpostit.php135
-rw-r--r--view/theme/diabook-red/fpostit/friendika-32.pngbin0 -> 1593 bytes
4 files changed, 149 insertions, 0 deletions
diff --git a/view/theme/diabook-red/fpostit/README b/view/theme/diabook-red/fpostit/README
new file mode 100644
index 000000000..39b7c5761
--- /dev/null
+++ b/view/theme/diabook-red/fpostit/README
@@ -0,0 +1,8 @@
+fpostit
+
+original author: Devlon Duthied
+
+see his blog posting:
+http://blog.duthied.com/2011/09/13/node-agnostic-friendika-bookmarklet/
+
+original published at github https://github.com/duthied/Friendika-Bookmarklet
diff --git a/view/theme/diabook-red/fpostit/fpostit.js b/view/theme/diabook-red/fpostit/fpostit.js
new file mode 100644
index 000000000..d183c7573
--- /dev/null
+++ b/view/theme/diabook-red/fpostit/fpostit.js
@@ -0,0 +1,6 @@
+javascript: (function() {
+ the_url = 'localhost/view/theme/diabook/fpostit/fpostit.php?url=' + encodeURIComponent(window.location.href) + '&title=' + encodeURIComponent(document.title) + '&text=' + encodeURIComponent(''+(window.getSelection ? window.getSelection() : document.getSelection ? document.getSelection() : document.selection.createRange().text));
+ a_funct = function() {
+ if (!window.open(the_url, 'fpostit', 'location=yes,links=no,scrollbars=no,toolbar=no,width=600,height=300')) location.href = the_url};
+ if (/Firefox/.test(navigator.userAgent)) {setTimeout(a_funct, 0)}
+ else {a_funct()}})()" \ No newline at end of file
diff --git a/view/theme/diabook-red/fpostit/fpostit.php b/view/theme/diabook-red/fpostit/fpostit.php
new file mode 100644
index 000000000..4505c9946
--- /dev/null
+++ b/view/theme/diabook-red/fpostit/fpostit.php
@@ -0,0 +1,135 @@
+<?php
+if (!isset($_POST["friendika_acct_name"])) $_POST["friendika_acct_name"] = '';
+if (!isset($_COOKIE['username'])) $_COOKIE['username'] = '';
+if (!isset($_COOKIE['password'])) $_COOKIE['password'] = '';
+if (!isset($hostname)) $hostname = '';
+if (!isset($username)) $username = '';
+
+
+if (($_POST["friendika_acct_name"] != '') && ($_POST["friendika_password"] != '')) {
+ setcookie("username", $_POST["friendika_acct_name"], time()+60*60*24*300);
+ setcookie("password", $_POST["friendika_password"], time()+60*60*24*300);
+}
+
+?>
+<html>
+<head>
+ <style>
+ body {
+ font-family: arial, Helvetica,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["friendika_acct_name"] != '') && ($_POST["friendika_password"] != '')) {
+ $acctname = $_POST["friendika_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["friendika_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...try again please";
+ 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='friendika-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="friendika_acct_name" value="{$username_cookie}" size="50"/><br />
+ Password: <input type="password" name="friendika_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" />&nbsp;&nbsp;<span class='error'>$error</span>
+ </form>
+ <p></p>
+ </div>
+EOF;
+
+}
+?>
+
+</body>
+</html> \ No newline at end of file
diff --git a/view/theme/diabook-red/fpostit/friendika-32.png b/view/theme/diabook-red/fpostit/friendika-32.png
new file mode 100644
index 000000000..61764bf20
--- /dev/null
+++ b/view/theme/diabook-red/fpostit/friendika-32.png
Binary files differ