diff --git a/doc/Home.md b/doc/Home.md index cd8752c1ef..b37c76417c 100644 --- a/doc/Home.md +++ b/doc/Home.md @@ -46,6 +46,7 @@ Friendica Documentation and Resources * [Plugin Development](help/Plugins) * [Theme Development](help/themes) * [Smarty 3 Templates](help/smarty3-templates) +* [Code - Reference(Doxygen generated - sets cookies)](doc/html/) **External Resources** diff --git a/doc/de/Home.md b/doc/de/Home.md index 2a9ea091ed..44ebfc0285 100644 --- a/doc/de/Home.md +++ b/doc/de/Home.md @@ -50,6 +50,7 @@ Friendica - Dokumentation und Ressourcen * [Plugin Development](help/Plugins) * [Theme Development](help/themes) * [Smarty 3 Templates](help/smarty3-templates) +* [Code-Referenz (mit doxygen generiert - setzt Cookies)](doc/html/) **Externe Ressourcen** diff --git a/doc/html/index.php b/doc/html/index.php new file mode 100644 index 0000000000..2e1b4277cf --- /dev/null +++ b/doc/html/index.php @@ -0,0 +1,16 @@ + + + + $Projectname Doxygen API Documentation + + +

$Projectname Doxygen API Documentation not rendered

+ +To get the Doxygen API Documentation you must render it with the program Doxygen (included in most distributions). +
+$ doxygen util/Doxyfile
+
+
+back + + diff --git a/include/group.php b/include/group.php index 862d06818d..fd1c97dfde 100644 --- a/include/group.php +++ b/include/group.php @@ -340,3 +340,30 @@ function groups_containing($uid,$c) { return $ret; } +/** + * @brief count unread group items + * + * Count unread items of each groups + * + * @return array + * 'id' => group id + * 'name' => group name + * 'count' => counted unseen group items + * + */ +function groups_count_unseen() { + + $r = q("SELECT `group`.`id`, `group`.`name`, COUNT(`item`.`id`) AS `count` FROM `group`, `group_member`, `item` + WHERE `group`.`uid` = %d + AND `item`.`uid` = %d + AND `item`.`unseen` AND `item`.`visible` + AND NOT `item`.`deleted` + AND `item`.`contact-id` = `group_member`.`contact-id` + AND `group_member`.`gid` = `group`.`id` + GROUP BY `group`.`id` ", + intval(local_user()), + intval(local_user()) + ); + + return $r; +} \ No newline at end of file diff --git a/mod/ping.php b/mod/ping.php index 967555881c..57728d3294 100644 --- a/mod/ping.php +++ b/mod/ping.php @@ -2,6 +2,7 @@ require_once("include/datetime.php"); require_once('include/bbcode.php'); require_once('include/forums.php'); +require_once('include/group.php'); require_once("mod/proxy.php"); function ping_init(&$a) { @@ -34,7 +35,7 @@ function ping_init(&$a) { $home = 0; $network = 0; - $network_group = array(); + $groups_unseen = array(); $forums_unseen = array(); $r = q("SELECT `item`.`id`,`item`.`parent`, `item`.`verb`, `item`.`wall`, `item`.`author-name`, @@ -88,20 +89,11 @@ function ping_init(&$a) { } } - if ( $network ) - { - # Find out how unseen network posts are spread across groups - $sql = "SELECT g.id, g.name, count(i.id) count " . - "FROM `group` g, group_member gm, item i " . - "WHERE g.uid = %d " . - "AND i.uid = %d " . - "AND i.unseen AND i.visible " . - "AND NOT i.deleted " . - "AND i.`contact-id` = gm.`contact-id` " . - "AND gm.gid = g.id GROUP BY g.id"; - #echo '' . $sql . ''; - $network_group = q($sql, intval(local_user()), intval(local_user())); - #echo ''; + if($network) { + if(intval(feature_enabled(local_user(),'groups'))) { + // Find out how unseen network posts are spread across groups + $groups_unseen = groups_count_unseen(); + } if(intval(feature_enabled(local_user(),'forumlist_widget'))) { $forums_unseen = forums_count_unseen(); @@ -227,9 +219,9 @@ function ping_init(&$a) { $home\r\n"; if ($register!=0) echo "$register"; - if ( count($network_group) ) { + if ( count($groups_unseen) ) { echo ''; - foreach ($network_group as $it) { + foreach ($groups_unseen as $it) { echo '' . $it['count'] . ""; } echo ""; diff --git a/util/Doxyfile b/util/Doxyfile new file mode 100644 index 0000000000..4527c4ca67 --- /dev/null +++ b/util/Doxyfile @@ -0,0 +1,23 @@ +INPUT = README.md index.php boot.php testargs.php update.php mod/ object/ include/ js/ util/ view/ version.inc +RECURSIVE = YES +PROJECT_NAME = "Friendica" +PROJECT_LOGO = images/friendica-64.jpg +EXCLUDE = .htconfig.php library/ doc/ .git/ log/ util/zotsh/easywebdav/ addon/ report/ privacy_image_cache/ photo/ proxy/ local/ +EXCLUDE_PATTERNS = *smarty3* *strings.php*.log *.out *test* +OUTPUT_DIRECTORY = doc +GENERATE_HTML = YES +HTML_OUTPUT = html/ +HTML_FILE_EXTENSION = .html +GENERATE_LATEX = NO +EXTRACT_ALL = YES +EXTRACT_PRIVATE = YES +GENERATE_TODOLIST = YES +USE_MDFILE_AS_MAINPAGE = README.md +REFERENCED_BY_RELATION = YES +GENERATE_TREEVIEW = YES +HTML_FOOTER = util/Doxygen.footer +ALIASES += "license=@par License:\n" +ALIASES += "fixme=\xrefitem fixme \"Fixme\" \"Fixme List\"" +ALIASES += "FIXME=\fixme" +ALIASES += "TODO=\todo" +ALIASES += "BUG=\bug" diff --git a/util/Doxygen.footer b/util/Doxygen.footer new file mode 100644 index 0000000000..fd40910d9e --- /dev/null +++ b/util/Doxygen.footer @@ -0,0 +1,4 @@ + + + +