diff --git a/addon/widgets/widget_friends.php b/addon/widgets/widget_friends.php
index d794f7d26..2286f68ca 100644
--- a/addon/widgets/widget_friends.php
+++ b/addon/widgets/widget_friends.php
@@ -1,28 +1,32 @@
profile = $r[0];
+ $o = "";
$o .= "";
$o .= _abs_url(contact_block());
$o .= "profile['nickname']."'>". t('Connect on Friendika!') ."";
-}
\ No newline at end of file
+ return $o;
+}
diff --git a/addon/widgets/widget_like.php b/addon/widgets/widget_like.php
index 001ec9c62..9b54212a8 100644
--- a/addon/widgets/widget_like.php
+++ b/addon/widgets/widget_like.php
@@ -1,13 +1,22 @@
Shows likes
Search ";
+function like_widget_name() {
+ return "Shows likes";
+}
+function like_widget_help() {
+ return "Search first item wich contains KEY and print like/dislike count";
}
-function widget_args(){
+function like_widget_args(){
return Array("KEY");
}
-function widget_content(&$a, &$o, $conf){
- $o .= " #TODO# ";
-}
\ No newline at end of file
+function like_widget_content(&$a, $conf){
+ $args = explode(",",$_GET['a']);
+
+ if ($args[0]!=""){
+ return " #TODO like/dislike count for item with " .$args[0]. " # ";
+ } else {
+ return " #TODO# ";
+ }
+}
diff --git a/addon/widgets/widgets.js b/addon/widgets/widgets.js
index 7a6cdeb0a..45d36c4d7 100644
--- a/addon/widgets/widgets.js
+++ b/addon/widgets/widgets.js
@@ -2,10 +2,11 @@
* @author Fabio Comuni
*/
-var f9a_widget = {
+var f9a_widget_$widget_id = {
entrypoint : "$entrypoint",
key : "$key",
widgetid: "$widget_id",
+ argstr: "$args",
xmlhttp : null,
getXHRObj : function(){
@@ -22,6 +23,7 @@ var f9a_widget = {
if (args===null) args = new Array();
args['k']=this.key;
args['s']=window.location;
+ args['a']=this.argstr;
var urlencodedargs = new Array();
for(k in args){ urlencodedargs.push( encodeURIComponent(k)+"="+encodeURIComponent(args[k]) ); }
@@ -29,20 +31,21 @@ var f9a_widget = {
this.xmlhttp.open("GET", url ,true);
this.xmlhttp.send();
+ this.xmlhttp.obj = this;
this.xmlhttp.onreadystatechange=function(){
if (this.readyState==4){
if (this.status==200) {
- cb(this.responseText);
+ cb(this.obj, this.responseText);
} else {
- document.getElementById(f9a_widget.widgetid).innerHTML="Error loading widget.";
+ document.getElementById(this.obj.widgetid).innerHTML="Error loading widget.";
}
}
}
},
- requestcb: function(responseText) {
- document.getElementById(f9a_widget.widgetid).innerHTML=responseText;
+ requestcb: function(obj, responseText) {
+ document.getElementById(obj.widgetid).innerHTML=responseText;
},
load : function (){
@@ -53,7 +56,7 @@ var f9a_widget = {
};
(function() {
- f9a_widget.load();
+ f9a_widget_$widget_id.load();
})();
document.writeln("
"; var_dump($a->argv); die(); if ($a->argv[2]=="cb"){ - if (!local_user()){ + /*if (!local_user()){ if (!isset($_GET['s'])) {header('HTTP/1.0 400 Bad Request'); killme();} if (substr($_GET['s'],0,strlen($conf['site'])) !== $conf['site']) {header('HTTP/1.0 400 Bad Request'); killme();} - } - widget_content($a, $o, $conf); + } */ + $o .= call_user_func($a->argv[1].'_widget_content',$a, $conf); } else { @@ -122,8 +118,9 @@ function widgets_content(&$a) { $o .= ""; $o .= "Preview Widget
"; $o .= ''. t("Plugin Settings") .''; - $o .= "
"; - widget_help($a, $o, $conf); + + $o .= "".call_user_func($a->argv[1].'_widget_name')."
"; + $o .= call_user_func($a->argv[1].'_widget_help'); $o .= "
"; $o .= "