]> git.mxchange.org Git - friendica-addons.git/blobdiff - dwpost/dwpost.php
wppost: Better title detection
[friendica-addons.git] / dwpost / dwpost.php
index 0bf420e5eacde2d34ef7e7534b7faedf4df1f71c..25f7ac87484e56c3a3f87746bd9f11755314a1a0 100644 (file)
@@ -4,8 +4,9 @@
  * Name: Dreamwidth Post Connector
  * Description: Post to dreamwidth
  * Version: 1.0
- * Author: Tony Baldwin <http://tonybaldwin.me/friendica/profile/tony>
+ * Author: Tony Baldwin <https://free-haven.org/profile/tony>
  * Author: Michael Johnston
+ * Author: Cat Gray <https://free-haven.org/profile/catness>
  */
 
 function dwpost_install() {
@@ -65,8 +66,14 @@ function dwpost_settings(&$a,&$s) {
 
     /* Add some HTML to the existing form */
 
-    $s .= '<div class="settings-block">';
-    $s .= '<h3>' . t('Dreamwidth Post Settings') . '</h3>';
+    $s .= '<span id="settings_dwpost_inflated" class="settings-block fakelink" style="display: block;" onclick="openClose(\'settings_dwpost_expanded\'); openClose(\'settings_dwpost_inflated\');">';
+    $s .= '<img class="connector" src="images/dreamwidth.png" /><h3 class="connector">'. t("Dreamwidth Export").'</h3>';
+    $s .= '</span>';
+    $s .= '<div id="settings_dwpost_expanded" class="settings-block" style="display: none;">';
+    $s .= '<span class="fakelink" onclick="openClose(\'settings_dwpost_expanded\'); openClose(\'settings_dwpost_inflated\');">';
+    $s .= '<img class="connector" src="images/dreamwidth.png" /><h3 class="connector">'. t("Dreamwidth Export").'</h3>';
+    $s .= '</span>';
+
     $s .= '<div id="dwpost-enable-wrapper">';
     $s .= '<label id="dwpost-enable-label" for="dwpost-checkbox">' . t('Enable dreamwidth Post Plugin') . '</label>';
     $s .= '<input id="dwpost-checkbox" type="checkbox" name="dwpost" value="1" ' . $checked . '/>';
@@ -89,7 +96,7 @@ function dwpost_settings(&$a,&$s) {
 
     /* provide a submit button */
 
-    $s .= '<div class="settings-submit-wrapper" ><input type="submit" id="dwpost-submit" name="dwpost-submit" class="settings-submit" value="' . t('Submit') . '" /></div></div>';
+    $s .= '<div class="settings-submit-wrapper" ><input type="submit" id="dwpost-submit" name="dwpost-submit" class="settings-submit" value="' . t('Save Settings') . '" /></div></div>';
 
 }
 
@@ -173,6 +180,7 @@ function dwpost_send(&$a,&$b) {
                $title = $b['title'];
                $post = bbcode($b['body']);
                $post = xmlify($post);
+               $tags = dwpost_get_tags($b['tag']);
 
                $date = datetime_convert('UTC',$tz,$b['created'],'Y-m-d H:i:s');
                $year = intval(substr($date,0,4));
@@ -191,7 +199,6 @@ function dwpost_send(&$a,&$b) {
 <member><name>day</name><value><int>$day</int></value></member>
 <member><name>hour</name><value><int>$hour</int></value></member>
 <member><name>min</name><value><int>$min</int></value></member>
-<member><name>usejournal</name><value><string>$dw_username</string></value></member>
 <member><name>event</name><value><string>$post</string></value></member>
 <member><name>username</name><value><string>$dw_username</string></value></member>
 <member><name>password</name><value><string>$dw_password</string></value></member>
@@ -201,7 +208,7 @@ function dwpost_send(&$a,&$b) {
 <member><name>props</name>
 <value><struct>
 <member><name>useragent</name><value><string>Friendica</string></value></member>
-<member><name>taglist</name><value><string>friendica</string></value></member>
+<member><name>taglist</name><value><string>$tags</string></value></member>
 </struct></value></member>
 </struct></value>
 </param></params>
@@ -212,9 +219,15 @@ EOT;
                logger('dwpost: data: ' . $xml, LOGGER_DATA);
 
                if($dw_blog !== 'test')
-                       $x = post_url($dw_blog,$xml);
+                       $x = post_url($dw_blog,$xml,array("Content-Type: text/xml"));
                logger('posted to dreamwidth: ' . ($x) ? $x : '', LOGGER_DEBUG);
 
        }
 }
 
+function dwpost_get_tags($post)
+{
+       preg_match_all("/\]([^\[#]+)\[/",$post,$matches);
+       $tags = implode(', ',$matches[1]);
+       return $tags;
+}