Merge develop into 0602_contact_profile
This commit is contained in:
commit
0c764684bb
139 changed files with 2818 additions and 3106 deletions
101
doc/Plugins.md
101
doc/Plugins.md
|
@ -1,5 +1,7 @@
|
||||||
Friendica Addon/Plugin development
|
Friendica Addon/Plugin development
|
||||||
==========================
|
==============
|
||||||
|
|
||||||
|
* [Home](help)
|
||||||
|
|
||||||
Please see the sample addon 'randplace' for a working example of using some of these features.
|
Please see the sample addon 'randplace' for a working example of using some of these features.
|
||||||
Addons work by intercepting event hooks - which must be registered.
|
Addons work by intercepting event hooks - which must be registered.
|
||||||
|
@ -16,12 +18,12 @@ Future extensions may provide for "setup" amd "remove".
|
||||||
|
|
||||||
Plugins should contain a comment block with the four following parameters:
|
Plugins should contain a comment block with the four following parameters:
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Name: My Great Plugin
|
* Name: My Great Plugin
|
||||||
* Description: This is what my plugin does. It's really cool
|
* Description: This is what my plugin does. It's really cool.
|
||||||
* Version: 1.0
|
* Version: 1.0
|
||||||
* Author: John Q. Public <john@myfriendicasite.com>
|
* Author: John Q. Public <john@myfriendicasite.com>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Register your plugin hooks during installation.
|
Register your plugin hooks during installation.
|
||||||
|
|
||||||
|
@ -45,7 +47,7 @@ Your hook callback functions will be called with at least one and possibly two a
|
||||||
|
|
||||||
If you wish to make changes to the calling data, you must declare them as reference variables (with '&') during function declaration.
|
If you wish to make changes to the calling data, you must declare them as reference variables (with '&') during function declaration.
|
||||||
|
|
||||||
###$a
|
#### $a
|
||||||
$a is the Friendica 'App' class.
|
$a is the Friendica 'App' class.
|
||||||
It contains a wealth of information about the current state of Friendica:
|
It contains a wealth of information about the current state of Friendica:
|
||||||
|
|
||||||
|
@ -56,13 +58,13 @@ It contains a wealth of information about the current state of Friendica:
|
||||||
|
|
||||||
It is recommeded you call this '$a' to match its usage elsewhere.
|
It is recommeded you call this '$a' to match its usage elsewhere.
|
||||||
|
|
||||||
###$b
|
#### $b
|
||||||
$b can be called anything you like.
|
$b can be called anything you like.
|
||||||
This is information specific to the hook currently being processed, and generally contains information that is being immediately processed or acted on that you can use, display, or alter.
|
This is information specific to the hook currently being processed, and generally contains information that is being immediately processed or acted on that you can use, display, or alter.
|
||||||
Remember to declare it with '&' if you wish to alter it.
|
Remember to declare it with '&' if you wish to alter it.
|
||||||
|
|
||||||
Modules
|
Modules
|
||||||
--------
|
---
|
||||||
|
|
||||||
Plugins/addons may also act as "modules" and intercept all page requests for a given URL path.
|
Plugins/addons may also act as "modules" and intercept all page requests for a given URL path.
|
||||||
In order for a plugin to act as a module it needs to define a function "plugin_name_module()" which takes no arguments and needs not do anything.
|
In order for a plugin to act as a module it needs to define a function "plugin_name_module()" which takes no arguments and needs not do anything.
|
||||||
|
@ -72,15 +74,15 @@ These are parsed into an array $a->argv, with a corresponding $a->argc indicatin
|
||||||
So http://my.web.site/plugin/arg1/arg2 would look for a module named "plugin" and pass its module functions the $a App structure (which is available to many components).
|
So http://my.web.site/plugin/arg1/arg2 would look for a module named "plugin" and pass its module functions the $a App structure (which is available to many components).
|
||||||
This will include:
|
This will include:
|
||||||
|
|
||||||
$a->argc = 3
|
$a->argc = 3
|
||||||
$a->argv = array(0 => 'plugin', 1 => 'arg1', 2 => 'arg2');
|
$a->argv = array(0 => 'plugin', 1 => 'arg1', 2 => 'arg2');
|
||||||
|
|
||||||
Your module functions will often contain the function plugin_name_content(&$a), which defines and returns the page body content.
|
Your module functions will often contain the function plugin_name_content(&$a), which defines and returns the page body content.
|
||||||
They may also contain plugin_name_post(&$a) which is called before the _content function and typically handles the results of POST forms.
|
They may also contain plugin_name_post(&$a) which is called before the _content function and typically handles the results of POST forms.
|
||||||
You may also have plugin_name_init(&$a) which is called very early on and often does module initialisation.
|
You may also have plugin_name_init(&$a) which is called very early on and often does module initialisation.
|
||||||
|
|
||||||
Templates
|
Templates
|
||||||
----------
|
---
|
||||||
|
|
||||||
If your plugin needs some template, you can use the Friendica template system.
|
If your plugin needs some template, you can use the Friendica template system.
|
||||||
Friendica uses [smarty3](http://www.smarty.net/) as a template engine.
|
Friendica uses [smarty3](http://www.smarty.net/) as a template engine.
|
||||||
|
@ -104,140 +106,140 @@ See also the wiki page [Quick Template Guide](https://github.com/friendica/frien
|
||||||
Current hooks
|
Current hooks
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
###'authenticate'
|
### 'authenticate'
|
||||||
'authenticate' is called when a user attempts to login.
|
'authenticate' is called when a user attempts to login.
|
||||||
$b is an array containing:
|
$b is an array containing:
|
||||||
|
|
||||||
'username' => the supplied username
|
'username' => the supplied username
|
||||||
'password' => the supplied password
|
'password' => the supplied password
|
||||||
'authenticated' => set this to non-zero to authenticate the user.
|
'authenticated' => set this to non-zero to authenticate the user.
|
||||||
'user_record' => successful authentication must also return a valid user record from the database
|
'user_record' => successful authentication must also return a valid user record from the database
|
||||||
|
|
||||||
###'logged_in'
|
### 'logged_in'
|
||||||
'logged_in' is called after a user has successfully logged in.
|
'logged_in' is called after a user has successfully logged in.
|
||||||
$b contains the $a->user array.
|
$b contains the $a->user array.
|
||||||
|
|
||||||
###'display_item'
|
### 'display_item'
|
||||||
'display_item' is called when formatting a post for display.
|
'display_item' is called when formatting a post for display.
|
||||||
$b is an array:
|
$b is an array:
|
||||||
|
|
||||||
'item' => The item (array) details pulled from the database
|
'item' => The item (array) details pulled from the database
|
||||||
'output' => the (string) HTML representation of this item prior to adding it to the page
|
'output' => the (string) HTML representation of this item prior to adding it to the page
|
||||||
|
|
||||||
###'post_local'
|
### 'post_local'
|
||||||
* called when a status post or comment is entered on the local system
|
* called when a status post or comment is entered on the local system
|
||||||
* $b is the item array of the information to be stored in the database
|
* $b is the item array of the information to be stored in the database
|
||||||
* Please note: body contents are bbcode - not HTML
|
* Please note: body contents are bbcode - not HTML
|
||||||
|
|
||||||
###'post_local_end'
|
### 'post_local_end'
|
||||||
* called when a local status post or comment has been stored on the local system
|
* called when a local status post or comment has been stored on the local system
|
||||||
* $b is the item array of the information which has just been stored in the database
|
* $b is the item array of the information which has just been stored in the database
|
||||||
* Please note: body contents are bbcode - not HTML
|
* Please note: body contents are bbcode - not HTML
|
||||||
|
|
||||||
###'post_remote'
|
### 'post_remote'
|
||||||
* called when receiving a post from another source. This may also be used to post local activity or system generated messages.
|
* called when receiving a post from another source. This may also be used to post local activity or system generated messages.
|
||||||
* $b is the item array of information to be stored in the database and the item body is bbcode.
|
* $b is the item array of information to be stored in the database and the item body is bbcode.
|
||||||
|
|
||||||
###'settings_form'
|
### 'settings_form'
|
||||||
* called when generating the HTML for the user Settings page
|
* called when generating the HTML for the user Settings page
|
||||||
* $b is the (string) HTML of the settings page before the final '</form>' tag.
|
* $b is the (string) HTML of the settings page before the final '</form>' tag.
|
||||||
|
|
||||||
###'settings_post'
|
### 'settings_post'
|
||||||
* called when the Settings pages are submitted
|
* called when the Settings pages are submitted
|
||||||
* $b is the $_POST array
|
* $b is the $_POST array
|
||||||
|
|
||||||
###'plugin_settings'
|
### 'plugin_settings'
|
||||||
* called when generating the HTML for the addon settings page
|
* called when generating the HTML for the addon settings page
|
||||||
* $b is the (string) HTML of the addon settings page before the final '</form>' tag.
|
* $b is the (string) HTML of the addon settings page before the final '</form>' tag.
|
||||||
|
|
||||||
###'plugin_settings_post'
|
### 'plugin_settings_post'
|
||||||
* called when the Addon Settings pages are submitted
|
* called when the Addon Settings pages are submitted
|
||||||
* $b is the $_POST array
|
* $b is the $_POST array
|
||||||
|
|
||||||
###'profile_post'
|
### 'profile_post'
|
||||||
* called when posting a profile page
|
* called when posting a profile page
|
||||||
* $b is the $_POST array
|
* $b is the $_POST array
|
||||||
|
|
||||||
###'profile_edit'
|
### 'profile_edit'
|
||||||
'profile_edit' is called prior to output of profile edit page.
|
'profile_edit' is called prior to output of profile edit page.
|
||||||
$b is an array containing:
|
$b is an array containing:
|
||||||
|
|
||||||
'profile' => profile (array) record from the database
|
'profile' => profile (array) record from the database
|
||||||
'entry' => the (string) HTML of the generated entry
|
'entry' => the (string) HTML of the generated entry
|
||||||
|
|
||||||
###'profile_advanced'
|
### 'profile_advanced'
|
||||||
* called when the HTML is generated for the 'Advanced profile', corresponding to the 'Profile' tab within a person's profile page
|
* called when the HTML is generated for the 'Advanced profile', corresponding to the 'Profile' tab within a person's profile page
|
||||||
* $b is the (string) HTML representation of the generated profile
|
* $b is the (string) HTML representation of the generated profile
|
||||||
* The profile array details are in $a->profile.
|
* The profile array details are in $a->profile.
|
||||||
|
|
||||||
###'directory_item'
|
### 'directory_item'
|
||||||
'directory_item' is called from the Directory page when formatting an item for display.
|
'directory_item' is called from the Directory page when formatting an item for display.
|
||||||
$b is an array:
|
$b is an array:
|
||||||
|
|
||||||
'contact' => contact (array) record for the person from the database
|
'contact' => contact (array) record for the person from the database
|
||||||
'entry' => the (string) HTML of the generated entry
|
'entry' => the (string) HTML of the generated entry
|
||||||
|
|
||||||
###'profile_sidebar_enter'
|
### 'profile_sidebar_enter'
|
||||||
* called prior to generating the sidebar "short" profile for a page
|
* called prior to generating the sidebar "short" profile for a page
|
||||||
* $b is the person's profile array
|
* $b is the person's profile array
|
||||||
|
|
||||||
###'profile_sidebar'
|
### 'profile_sidebar'
|
||||||
'profile_sidebar is called when generating the sidebar "short" profile for a page.
|
'profile_sidebar is called when generating the sidebar "short" profile for a page.
|
||||||
$b is an array:
|
$b is an array:
|
||||||
|
|
||||||
'profile' => profile (array) record for the person from the database
|
'profile' => profile (array) record for the person from the database
|
||||||
'entry' => the (string) HTML of the generated entry
|
'entry' => the (string) HTML of the generated entry
|
||||||
|
|
||||||
###'contact_block_end'
|
### 'contact_block_end'
|
||||||
is called when formatting the block of contacts/friends on a profile sidebar has completed.
|
is called when formatting the block of contacts/friends on a profile sidebar has completed.
|
||||||
$b is an array:
|
$b is an array:
|
||||||
|
|
||||||
'contacts' => array of contacts
|
'contacts' => array of contacts
|
||||||
'output' => the (string) generated HTML of the contact block
|
'output' => the (string) generated HTML of the contact block
|
||||||
|
|
||||||
###'bbcode'
|
### 'bbcode'
|
||||||
* called during conversion of bbcode to html
|
* called during conversion of bbcode to html
|
||||||
* $b is a string converted text
|
* $b is a string converted text
|
||||||
|
|
||||||
###'html2bbcode'
|
### 'html2bbcode'
|
||||||
* called during conversion of html to bbcode (e.g. remote message posting)
|
* called during conversion of html to bbcode (e.g. remote message posting)
|
||||||
* $b is a string converted text
|
* $b is a string converted text
|
||||||
|
|
||||||
###'page_header'
|
### 'page_header'
|
||||||
* called after building the page navigation section
|
* called after building the page navigation section
|
||||||
* $b is a string HTML of nav region
|
* $b is a string HTML of nav region
|
||||||
|
|
||||||
###'personal_xrd'
|
### 'personal_xrd'
|
||||||
'personal_xrd' is called prior to output of personal XRD file.
|
'personal_xrd' is called prior to output of personal XRD file.
|
||||||
$b is an array:
|
$b is an array:
|
||||||
|
|
||||||
'user' => the user record for the person
|
'user' => the user record for the person
|
||||||
'xml' => the complete XML to be output
|
'xml' => the complete XML to be output
|
||||||
|
|
||||||
###'home_content'
|
### 'home_content'
|
||||||
* called prior to output home page content, shown to unlogged users
|
* called prior to output home page content, shown to unlogged users
|
||||||
* $b is (string) HTML of section region
|
* $b is (string) HTML of section region
|
||||||
|
|
||||||
###'contact_edit'
|
### 'contact_edit'
|
||||||
is called when editing contact details on an individual from the Contacts page.
|
is called when editing contact details on an individual from the Contacts page.
|
||||||
$b is an array:
|
$b is an array:
|
||||||
|
|
||||||
'contact' => contact record (array) of target contact
|
'contact' => contact record (array) of target contact
|
||||||
'output' => the (string) generated HTML of the contact edit page
|
'output' => the (string) generated HTML of the contact edit page
|
||||||
|
|
||||||
###'contact_edit_post'
|
### 'contact_edit_post'
|
||||||
* called when posting the contact edit page.
|
* called when posting the contact edit page.
|
||||||
* $b is the $_POST array
|
* $b is the $_POST array
|
||||||
|
|
||||||
###'init_1'
|
### 'init_1'
|
||||||
* called just after DB has been opened and before session start
|
* called just after DB has been opened and before session start
|
||||||
* $b is not used or passed
|
* $b is not used or passed
|
||||||
|
|
||||||
###'page_end'
|
### 'page_end'
|
||||||
* called after HTML content functions have completed
|
* called after HTML content functions have completed
|
||||||
* $b is (string) HTML of content div
|
* $b is (string) HTML of content div
|
||||||
|
|
||||||
###'avatar_lookup'
|
### 'avatar_lookup'
|
||||||
'avatar_lookup' is called when looking up the avatar.
|
'avatar_lookup' is called when looking up the avatar.
|
||||||
$b is an array:
|
$b is an array:
|
||||||
|
|
||||||
|
@ -245,11 +247,11 @@ $b is an array:
|
||||||
'email' => email to look up the avatar for
|
'email' => email to look up the avatar for
|
||||||
'url' => the (string) generated URL of the avatar
|
'url' => the (string) generated URL of the avatar
|
||||||
|
|
||||||
###'emailer_send_prepare'
|
### 'emailer_send_prepare'
|
||||||
'emailer_send_prepare' called from Emailer::send() before building the mime message.
|
'emailer_send_prepare' called from Emailer::send() before building the mime message.
|
||||||
$b is an array, params to Emailer::send()
|
$b is an array, params to Emailer::send()
|
||||||
|
|
||||||
'fromName' => name of the sender
|
'fromName' => name of the sender
|
||||||
'fromEmail' => email fo the sender
|
'fromEmail' => email fo the sender
|
||||||
'replyTo' => replyTo address to direct responses
|
'replyTo' => replyTo address to direct responses
|
||||||
'toEmail' => destination email address
|
'toEmail' => destination email address
|
||||||
|
@ -258,20 +260,20 @@ $b is an array, params to Emailer::send()
|
||||||
'textVersion' => text only version of the message
|
'textVersion' => text only version of the message
|
||||||
'additionalMailHeader' => additions to the smtp mail header
|
'additionalMailHeader' => additions to the smtp mail header
|
||||||
|
|
||||||
###'emailer_send'
|
### 'emailer_send'
|
||||||
is called before calling PHP's mail().
|
is called before calling PHP's mail().
|
||||||
$b is an array, params to mail()
|
$b is an array, params to mail()
|
||||||
|
|
||||||
'to'
|
'to'
|
||||||
'subject'
|
'subject'
|
||||||
'body'
|
'body'
|
||||||
'headers'
|
'headers'
|
||||||
|
|
||||||
###'nav_info'
|
### 'nav_info'
|
||||||
is called after the navigational menu is build in include/nav.php.
|
is called after the navigational menu is build in include/nav.php.
|
||||||
$b is an array containing $nav from nav.php.
|
$b is an array containing $nav from nav.php.
|
||||||
|
|
||||||
###'template_vars'
|
### 'template_vars'
|
||||||
is called before vars are passed to the template engine to render the page.
|
is called before vars are passed to the template engine to render the page.
|
||||||
The registered function can add,change or remove variables passed to template.
|
The registered function can add,change or remove variables passed to template.
|
||||||
$b is an array with:
|
$b is an array with:
|
||||||
|
@ -463,4 +465,3 @@ mod/cb.php: call_hooks('cb_afterpost');
|
||||||
mod/cb.php: call_hooks('cb_content', $o);
|
mod/cb.php: call_hooks('cb_content', $o);
|
||||||
|
|
||||||
mod/directory.php: call_hooks('directory_item', $arr);
|
mod/directory.php: call_hooks('directory_item', $arr);
|
||||||
|
|
||||||
|
|
|
@ -1,27 +1,28 @@
|
||||||
**Friendica Addon/Plugin-Entwicklung**
|
Friendica Addon/Plugin-Entwicklung
|
||||||
==============
|
==============
|
||||||
|
|
||||||
* [Zur Startseite der Hilfe](help)
|
* [Zur Startseite der Hilfe](help)
|
||||||
|
|
||||||
Bitte schau dir das Beispiel-Addon "randplace" für ein funktionierendes Beispiel für manche der hier aufgeführten Funktionen an.
|
Bitte schau dir das Beispiel-Addon "randplace" für ein funktionierendes Beispiel für manche der hier aufgeführten Funktionen an.
|
||||||
Das Facebook-Addon bietet ein Beispiel dafür, die "addon"- und "module"-Funktion gemeinsam zu integrieren.
|
Das Facebook-Addon bietet ein Beispiel dafür, die "addon"- und "module"-Funktion gemeinsam zu integrieren.
|
||||||
Addons arbeiten, indem sie Event Hooks abfangen. Module arbeiten, indem bestimmte Seitenanfragen (durch den URL-Pfad) abgefangen werden
|
Addons arbeiten, indem sie Event Hooks abfangen.
|
||||||
|
Module arbeiten, indem bestimmte Seitenanfragen (durch den URL-Pfad) abgefangen werden.
|
||||||
|
|
||||||
Plugin-Namen können keine Leerstellen oder andere Interpunktionen enthalten und werden als Datei- und Funktionsnamen genutzt.
|
Plugin-Namen können keine Leerstellen oder andere Interpunktionen enthalten und werden als Datei- und Funktionsnamen genutzt.
|
||||||
Du kannst einen lesbaren Namen im Kommentarblock eintragen.
|
Du kannst einen lesbaren Namen im Kommentarblock eintragen.
|
||||||
Jedes Addon muss beides beinhalten - eine Installations- und eine Deinstallationsfunktion, die auf dem Addon-/Plugin-Namen basieren; z.B. "plugin1name_install()".
|
Jedes Addon muss beides beinhalten - eine Installations- und eine Deinstallationsfunktion, die auf dem Addon-/Plugin-Namen basieren; z.B. "plugin1name_install()".
|
||||||
Diese beiden Funktionen haben keine Argumente und sind dafür verantwortlich, Event Hooks zu registrieren und abzumelden (unregistering), die dein Plugin benötigt.
|
Diese beiden Funktionen haben keine Argumente und sind dafür verantwortlich, Event Hooks zu registrieren und abzumelden (unregistering), die dein Plugin benötigt.
|
||||||
Die Installations- und Deinstallationsfunktionfunktionen werden auch ausgeführt (z.B. neu installiert), wenn sich das Plugin nach der Installation ändert - somit sollte deine Deinstallationsfunktion keine Daten zerstört und deine Installationsfunktion sollte bestehende Daten berücksichtigen.
|
Die Installations- und Deinstallationsfunktionfunktionen werden auch ausgeführt (z.B. neu installiert), wenn sich das Plugin nach der Installation ändert - somit sollte deine Deinstallationsfunktion keine Daten zerstört und deine Installationsfunktion sollte bestehende Daten berücksichtigen.
|
||||||
Zukünftige Extensions werden möglicherweise "Setup" und "Entfernen" anbieten.
|
Zukünftige Extensions werden möglicherweise "Setup" und "Entfernen" anbieten.
|
||||||
|
|
||||||
Plugins sollten einen Kommentarblock mit den folgenden vier Parametern enthalten:
|
Plugins sollten einen Kommentarblock mit den folgenden vier Parametern enthalten:
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Name: My Great Plugin
|
* Name: My Great Plugin
|
||||||
* Description: This is what my plugin does. It's really cool
|
* Description: This is what my plugin does. It's really cool.
|
||||||
* Version: 1.0
|
* Version: 1.0
|
||||||
* Author: John Q. Public <john@myfriendicasite.com>
|
* Author: John Q. Public <john@myfriendicasite.com>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Registriere deine Plugin-Hooks während der Installation.
|
Registriere deine Plugin-Hooks während der Installation.
|
||||||
|
|
||||||
|
@ -29,45 +30,50 @@ Registriere deine Plugin-Hooks während der Installation.
|
||||||
|
|
||||||
$hookname ist ein String und entspricht einem bekannten Friendica-Hook.
|
$hookname ist ein String und entspricht einem bekannten Friendica-Hook.
|
||||||
|
|
||||||
$file steht für den Pfadnamen, der relativ zum Top-Level-Friendicaverzeichnis liegt.
|
$file steht für den Pfadnamen, der relativ zum Top-Level-Friendicaverzeichnis liegt.
|
||||||
Das *sollte* "addon/plugin_name/plugin_name.php' sein.
|
Das *sollte* "addon/plugin_name/plugin_name.php' sein.
|
||||||
|
|
||||||
$function ist ein String und der Name der Funktion, die ausgeführt wird, wenn der Hook aufgerufen wird.
|
$function ist ein String und der Name der Funktion, die ausgeführt wird, wenn der Hook aufgerufen wird.
|
||||||
|
|
||||||
|
Argumente
|
||||||
|
---
|
||||||
|
|
||||||
Deine Hook-Callback-Funktion wird mit mindestens einem und bis zu zwei Argumenten aufgerufen
|
Deine Hook-Callback-Funktion wird mit mindestens einem und bis zu zwei Argumenten aufgerufen
|
||||||
|
|
||||||
function myhook_function(&$a, &$b) {
|
function myhook_function(&$a, &$b) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Wenn du Änderungen an den aufgerufenen Daten vornehmen willst, musst du diese als Referenzvariable (mit "&") während der Funktionsdeklaration deklarieren.
|
Wenn du Änderungen an den aufgerufenen Daten vornehmen willst, musst du diese als Referenzvariable (mit "&") während der Funktionsdeklaration deklarieren.
|
||||||
|
|
||||||
$a ist die Friendica "App"-Klasse, die eine Menge an Informationen über den aktuellen Friendica-Status beinhaltet, u.a. welche Module genutzt werden, Konfigurationsinformationen, Inhalte der Seite zum Zeitpunkt des Hook-Aufrufs.
|
$a ist die Friendica "App"-Klasse, die eine Menge an Informationen über den aktuellen Friendica-Status beinhaltet, u.a. welche Module genutzt werden, Konfigurationsinformationen, Inhalte der Seite zum Zeitpunkt des Hook-Aufrufs.
|
||||||
Es ist empfohlen, diese Funktion "$a" zu nennen, um seine Nutzung an den Gebrauch an anderer Stelle anzugleichen.
|
Es ist empfohlen, diese Funktion "$a" zu nennen, um seine Nutzung an den Gebrauch an anderer Stelle anzugleichen.
|
||||||
|
|
||||||
$b kann frei benannt werden.
|
$b kann frei benannt werden.
|
||||||
Diese Information ist speziell auf den Hook bezogen, der aktuell bearbeitet wird, und beinhaltet normalerweise Daten, die du sofort nutzen, anzeigen oder bearbeiten kannst.
|
Diese Information ist speziell auf den Hook bezogen, der aktuell bearbeitet wird, und beinhaltet normalerweise Daten, die du sofort nutzen, anzeigen oder bearbeiten kannst.
|
||||||
Achte darauf, diese mit "&" zu deklarieren, wenn du sie bearbeiten willst.
|
Achte darauf, diese mit "&" zu deklarieren, wenn du sie bearbeiten willst.
|
||||||
|
|
||||||
|
|
||||||
**Module**
|
Module
|
||||||
|
---
|
||||||
|
|
||||||
Plugins/Addons können auch als "Module" agieren und alle Seitenanfragen für eine bestimte URL abfangen.
|
Plugins/Addons können auch als "Module" agieren und alle Seitenanfragen für eine bestimte URL abfangen.
|
||||||
Um ein Plugin als Modul zu nutzen, ist es nötig, die Funktion "plugin_name_module()" zu definieren, die keine Argumente benötigt und nichts weiter machen muss.
|
Um ein Plugin als Modul zu nutzen, ist es nötig, die Funktion "plugin_name_module()" zu definieren, die keine Argumente benötigt und nichts weiter machen muss.
|
||||||
|
|
||||||
Wenn diese Funktion existiert, wirst du nun alle Seitenanfragen für "http://my.web.site/plugin_name" erhalten - mit allen URL-Komponenten als zusätzliche Argumente.
|
Wenn diese Funktion existiert, wirst du nun alle Seitenanfragen für "http://example.com/plugin_name" erhalten - mit allen URL-Komponenten als zusätzliche Argumente.
|
||||||
Diese werden in ein Array $a->argv geparst und stimmen mit $a->argc überein, wobei sie die Anzahl der URL-Komponenten abbilden.
|
Diese werden in ein Array $a->argv geparst und stimmen mit $a->argc überein, wobei sie die Anzahl der URL-Komponenten abbilden.
|
||||||
So würde http://my.web.site/plugin/arg1/arg2 nach einem Modul "plugin" suchen und seiner Modulfunktion die $a-App-Strukur übergeben (dies ist für viele Komponenten verfügbar). Das umfasst:
|
So würde http://example.com/plugin/arg1/arg2 nach einem Modul "plugin" suchen und seiner Modulfunktion die $a-App-Strukur übergeben (dies ist für viele Komponenten verfügbar). Das umfasst:
|
||||||
|
|
||||||
$a->argc = 3
|
$a->argc = 3
|
||||||
$a->argv = array(0 => 'plugin', 1 => 'arg1', 2 => 'arg2');
|
$a->argv = array(0 => 'plugin', 1 => 'arg1', 2 => 'arg2');
|
||||||
|
|
||||||
Deine Modulfunktionen umfassen oft die Funktion plugin_name_content(&$a), welche den Seiteninhalt definiert und zurückgibt.
|
Deine Modulfunktionen umfassen oft die Funktion plugin_name_content(&$a), welche den Seiteninhalt definiert und zurückgibt.
|
||||||
Sie können auch plugin_name_post(&$a) umfassen, welches vor der content-Funktion aufgerufen wird und normalerweise die Resultate der POST-Formulare handhabt.
|
Sie können auch plugin_name_post(&$a) umfassen, welches vor der content-Funktion aufgerufen wird und normalerweise die Resultate der POST-Formulare handhabt.
|
||||||
Du kannst ebenso plugin_name_init(&$a) nutzen, was oft frühzeitig aufgerufen wird und das Modul initialisert.
|
Du kannst ebenso plugin_name_init(&$a) nutzen, was oft frühzeitig aufgerufen wird und das Modul initialisert.
|
||||||
|
|
||||||
|
|
||||||
**Derzeitige Hooks:**
|
Derzeitige Hooks
|
||||||
|
---
|
||||||
|
|
||||||
**'authenticate'** - wird aufgerufen, wenn sich der User einloggt.
|
**'authenticate'** - wird aufgerufen, wenn sich der User einloggt.
|
||||||
$b ist ein Array
|
$b ist ein Array
|
||||||
|
@ -180,6 +186,9 @@ Du kannst ebenso plugin_name_init(&$a) nutzen, was oft frühzeitig aufgerufen wi
|
||||||
- wird aufgerufen nachdem in include/nav,php der Inhalt des Navigations Menüs erzeugt wurde.
|
- wird aufgerufen nachdem in include/nav,php der Inhalt des Navigations Menüs erzeugt wurde.
|
||||||
- $b ist ein Array, das $nav wiederspiegelt.
|
- $b ist ein Array, das $nav wiederspiegelt.
|
||||||
|
|
||||||
|
Komplette Liste der Hook-Callbacks
|
||||||
|
---
|
||||||
|
|
||||||
Eine komplette Liste aller Hook-Callbacks mit den zugehörigen Dateien (am 14-Feb-2012 generiert): Bitte schau in die Quellcodes für Details zu Hooks, die oben nicht dokumentiert sind.
|
Eine komplette Liste aller Hook-Callbacks mit den zugehörigen Dateien (am 14-Feb-2012 generiert): Bitte schau in die Quellcodes für Details zu Hooks, die oben nicht dokumentiert sind.
|
||||||
|
|
||||||
boot.php: call_hooks('login_hook',$o);
|
boot.php: call_hooks('login_hook',$o);
|
||||||
|
@ -204,7 +213,7 @@ include/text.php: call_hooks('contact_block_end', $arr);
|
||||||
|
|
||||||
include/text.php: call_hooks('smilie', $s);
|
include/text.php: call_hooks('smilie', $s);
|
||||||
|
|
||||||
include/text.php: call_hooks('prepare_body_init', $item);
|
include/text.php: call_hooks('prepare_body_init', $item);
|
||||||
|
|
||||||
include/text.php: call_hooks('prepare_body', $prep_arr);
|
include/text.php: call_hooks('prepare_body', $prep_arr);
|
||||||
|
|
||||||
|
@ -359,4 +368,3 @@ mod/cb.php: call_hooks('cb_afterpost');
|
||||||
mod/cb.php: call_hooks('cb_content', $o);
|
mod/cb.php: call_hooks('cb_content', $o);
|
||||||
|
|
||||||
mod/directory.php: call_hooks('directory_item', $arr);
|
mod/directory.php: call_hooks('directory_item', $arr);
|
||||||
|
|
||||||
|
|
|
@ -59,7 +59,19 @@ The same rule applies to the JavaScript files found in
|
||||||
|
|
||||||
they will be overwritten by files in
|
they will be overwritten by files in
|
||||||
|
|
||||||
/view/theme/**your-theme-name**/js.
|
/view/theme/**your-theme-name**/js
|
||||||
|
|
||||||
|
### Modules
|
||||||
|
|
||||||
|
You have the freedom to override core modules found in
|
||||||
|
|
||||||
|
/mod
|
||||||
|
|
||||||
|
They will be overwritten by files in
|
||||||
|
|
||||||
|
/view/theme/**your-theme-name**/mod
|
||||||
|
|
||||||
|
Be aware that you can break things easily here if you don't know what you do. Also notice that you can override parts of the module – functions not defined in your theme module will be loaded from the core module.
|
||||||
|
|
||||||
## Expand an existing Theme
|
## Expand an existing Theme
|
||||||
|
|
||||||
|
@ -288,4 +300,4 @@ The default file is in
|
||||||
/view/default.php
|
/view/default.php
|
||||||
|
|
||||||
if you want to change it, say adding a 4th column for banners of your favourite FLOSS projects, place a new default.php file in your theme directory.
|
if you want to change it, say adding a 4th column for banners of your favourite FLOSS projects, place a new default.php file in your theme directory.
|
||||||
As with the theme.php file, you can use the properties of the $a variable with holds the friendica application to decide what content is displayed.
|
As with the theme.php file, you can use the properties of the $a variable with holds the friendica application to decide what content is displayed.
|
||||||
|
|
190
include/ForumManager.php
Normal file
190
include/ForumManager.php
Normal file
|
@ -0,0 +1,190 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @file include/forum.php
|
||||||
|
* @brief Functions related to forum functionality *
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief This class handles functions related to the forum functionality
|
||||||
|
*/
|
||||||
|
class ForumManager {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Function to list all forums a user is connected with
|
||||||
|
*
|
||||||
|
* @param int $uid of the profile owner
|
||||||
|
* @param boolean $showhidden
|
||||||
|
* Show frorums which are not hidden
|
||||||
|
* @param boolean $lastitem
|
||||||
|
* Sort by lastitem
|
||||||
|
* @param boolean $showprivate
|
||||||
|
* Show private groups
|
||||||
|
*
|
||||||
|
* @returns array
|
||||||
|
* 'url' => forum url
|
||||||
|
* 'name' => forum name
|
||||||
|
* 'id' => number of the key from the array
|
||||||
|
* 'micro' => contact photo in format micro
|
||||||
|
*/
|
||||||
|
public static function get_list($uid, $showhidden = true, $lastitem, $showprivate = false) {
|
||||||
|
|
||||||
|
$forumlist = array();
|
||||||
|
|
||||||
|
$order = (($showhidden) ? '' : ' AND NOT `hidden` ');
|
||||||
|
$order .= (($lastitem) ? ' ORDER BY `last-item` DESC ' : ' ORDER BY `name` ASC ');
|
||||||
|
$select = '`forum` ';
|
||||||
|
if ($showprivate) {
|
||||||
|
$select = '(`forum` OR `prv`)';
|
||||||
|
}
|
||||||
|
|
||||||
|
$contacts = q("SELECT `contact`.`id`, `contact`.`url`, `contact`.`name`, `contact`.`micro` FROM `contact`
|
||||||
|
WHERE `network`= 'dfrn' AND $select AND `uid` = %d
|
||||||
|
AND NOT `blocked` AND NOT `hidden` AND NOT `pending` AND NOT `archive`
|
||||||
|
AND `success_update` > `failure_update`
|
||||||
|
$order ",
|
||||||
|
intval($uid)
|
||||||
|
);
|
||||||
|
|
||||||
|
if (!$contacts)
|
||||||
|
return($forumlist);
|
||||||
|
|
||||||
|
foreach($contacts as $contact) {
|
||||||
|
$forumlist[] = array(
|
||||||
|
'url' => $contact['url'],
|
||||||
|
'name' => $contact['name'],
|
||||||
|
'id' => $contact['id'],
|
||||||
|
'micro' => $contact['micro'],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return($forumlist);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Forumlist widget
|
||||||
|
*
|
||||||
|
* Sidebar widget to show subcribed friendica forums. If activated
|
||||||
|
* in the settings, it appears at the notwork page sidebar
|
||||||
|
*
|
||||||
|
* @param int $uid The ID of the User
|
||||||
|
* @param int $cid
|
||||||
|
* The contact id which is used to mark a forum as "selected"
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public static function widget($uid,$cid = 0) {
|
||||||
|
|
||||||
|
if(! intval(feature_enabled(local_user(),'forumlist_widget')))
|
||||||
|
return;
|
||||||
|
|
||||||
|
$o = '';
|
||||||
|
|
||||||
|
//sort by last updated item
|
||||||
|
$lastitem = true;
|
||||||
|
|
||||||
|
$contacts = self::get_list($uid,true,$lastitem, true);
|
||||||
|
$total = count($contacts);
|
||||||
|
$visible_forums = 10;
|
||||||
|
|
||||||
|
if(count($contacts)) {
|
||||||
|
|
||||||
|
$id = 0;
|
||||||
|
|
||||||
|
foreach($contacts as $contact) {
|
||||||
|
|
||||||
|
$selected = (($cid == $contact['id']) ? ' forum-selected' : '');
|
||||||
|
|
||||||
|
$entry = array(
|
||||||
|
'url' => z_root() . '/network?f=&cid=' . $contact['id'],
|
||||||
|
'external_url' => z_root() . '/redir/' . $contact['id'],
|
||||||
|
'name' => $contact['name'],
|
||||||
|
'cid' => $contact['id'],
|
||||||
|
'selected' => $selected,
|
||||||
|
'micro' => proxy_url($contact['micro'], false, PROXY_SIZE_MICRO),
|
||||||
|
'id' => ++$id,
|
||||||
|
);
|
||||||
|
$entries[] = $entry;
|
||||||
|
}
|
||||||
|
|
||||||
|
$tpl = get_markup_template('widget_forumlist.tpl');
|
||||||
|
|
||||||
|
$o .= replace_macros($tpl,array(
|
||||||
|
'$title' => t('Forums'),
|
||||||
|
'$forums' => $entries,
|
||||||
|
'$link_desc' => t('External link to forum'),
|
||||||
|
'$total' => $total,
|
||||||
|
'$visible_forums' => $visible_forums,
|
||||||
|
'$showmore' => t('show more'),
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
return $o;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Format forumlist as contact block
|
||||||
|
*
|
||||||
|
* This function is used to show the forumlist in
|
||||||
|
* the advanced profile.
|
||||||
|
*
|
||||||
|
* @param int $uid The ID of the User
|
||||||
|
* @return string
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function profile_advanced($uid) {
|
||||||
|
|
||||||
|
$profile = intval(feature_enabled($uid,'forumlist_profile'));
|
||||||
|
if(! $profile)
|
||||||
|
return;
|
||||||
|
|
||||||
|
$o = '';
|
||||||
|
|
||||||
|
// place holder in case somebody wants configurability
|
||||||
|
$show_total = 9999;
|
||||||
|
|
||||||
|
//don't sort by last updated item
|
||||||
|
$lastitem = false;
|
||||||
|
|
||||||
|
$contacts = self::get_list($uid,false,$lastitem,false);
|
||||||
|
|
||||||
|
$total_shown = 0;
|
||||||
|
|
||||||
|
foreach($contacts as $contact) {
|
||||||
|
$forumlist .= micropro($contact,false,'forumlist-profile-advanced');
|
||||||
|
$total_shown ++;
|
||||||
|
if($total_shown == $show_total)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(count($contacts) > 0)
|
||||||
|
$o .= $forumlist;
|
||||||
|
return $o;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief count unread forum items
|
||||||
|
*
|
||||||
|
* Count unread items of connected forums and private groups
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
* 'id' => contact id
|
||||||
|
* 'name' => contact/forum name
|
||||||
|
* 'count' => counted unseen forum items
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function count_unseen_items() {
|
||||||
|
$r = q("SELECT `contact`.`id`, `contact`.`name`, COUNT(*) AS `count` FROM `item`
|
||||||
|
INNER JOIN `contact` ON `item`.`contact-id` = `contact`.`id`
|
||||||
|
WHERE `item`.`uid` = %d AND `item`.`visible` AND NOT `item`.`deleted` AND `item`.`unseen`
|
||||||
|
AND `contact`.`network`= 'dfrn' AND (`contact`.`forum` OR `contact`.`prv`)
|
||||||
|
AND NOT `contact`.`blocked` AND NOT `contact`.`hidden`
|
||||||
|
AND NOT `contact`.`pending` AND NOT `contact`.`archive`
|
||||||
|
AND `contact`.`success_update` > `failure_update`
|
||||||
|
GROUP BY `contact`.`id` ",
|
||||||
|
intval(local_user())
|
||||||
|
);
|
||||||
|
|
||||||
|
return $r;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -726,10 +726,11 @@ function guess_image_type($filename, $fromcurl=false) {
|
||||||
* @param string $avatar Link to avatar picture
|
* @param string $avatar Link to avatar picture
|
||||||
* @param int $uid User id of contact owner
|
* @param int $uid User id of contact owner
|
||||||
* @param int $cid Contact id
|
* @param int $cid Contact id
|
||||||
|
* @param bool $force force picture update
|
||||||
*
|
*
|
||||||
* @return array Returns array of the different avatar sizes
|
* @return array Returns array of the different avatar sizes
|
||||||
*/
|
*/
|
||||||
function update_contact_avatar($avatar,$uid,$cid) {
|
function update_contact_avatar($avatar,$uid,$cid, $force = false) {
|
||||||
|
|
||||||
$r = q("SELECT `avatar`, `photo`, `thumb`, `micro` FROM `contact` WHERE `id` = %d LIMIT 1", intval($cid));
|
$r = q("SELECT `avatar`, `photo`, `thumb`, `micro` FROM `contact` WHERE `id` = %d LIMIT 1", intval($cid));
|
||||||
if (!$r)
|
if (!$r)
|
||||||
|
@ -737,7 +738,7 @@ function update_contact_avatar($avatar,$uid,$cid) {
|
||||||
else
|
else
|
||||||
$data = array($r[0]["photo"], $r[0]["thumb"], $r[0]["micro"]);
|
$data = array($r[0]["photo"], $r[0]["thumb"], $r[0]["micro"]);
|
||||||
|
|
||||||
if ($r[0]["avatar"] != $avatar) {
|
if (($r[0]["avatar"] != $avatar) OR $force) {
|
||||||
$photos = import_profile_photo($avatar,$uid,$cid, true);
|
$photos = import_profile_photo($avatar,$uid,$cid, true);
|
||||||
|
|
||||||
if ($photos) {
|
if ($photos) {
|
||||||
|
|
|
@ -1,8 +1,17 @@
|
||||||
<?php
|
<?php
|
||||||
|
/**
|
||||||
|
* @file include/datetime.php
|
||||||
|
* @brief Some functions for date and time related tasks.
|
||||||
|
*/
|
||||||
|
|
||||||
// two-level sort for timezones.
|
|
||||||
|
|
||||||
if(! function_exists('timezone_cmp')) {
|
/**
|
||||||
|
* @brief Two-level sort for timezones.
|
||||||
|
*
|
||||||
|
* @param string $a
|
||||||
|
* @param string $b
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
function timezone_cmp($a, $b) {
|
function timezone_cmp($a, $b) {
|
||||||
if(strstr($a,'/') && strstr($b,'/')) {
|
if(strstr($a,'/') && strstr($b,'/')) {
|
||||||
if ( t($a) == t($b)) return 0;
|
if ( t($a) == t($b)) return 0;
|
||||||
|
@ -11,11 +20,16 @@ function timezone_cmp($a, $b) {
|
||||||
if(strstr($a,'/')) return -1;
|
if(strstr($a,'/')) return -1;
|
||||||
if(strstr($b,'/')) return 1;
|
if(strstr($b,'/')) return 1;
|
||||||
if ( t($a) == t($b)) return 0;
|
if ( t($a) == t($b)) return 0;
|
||||||
return ( t($a) < t($b)) ? -1 : 1;
|
|
||||||
}}
|
|
||||||
|
|
||||||
// emit a timezone selector grouped (primarily) by continent
|
return ( t($a) < t($b)) ? -1 : 1;
|
||||||
if(! function_exists('select_timezone')) {
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Emit a timezone selector grouped (primarily) by continent
|
||||||
|
*
|
||||||
|
* @param string $current Timezone
|
||||||
|
* @return string Parsed HTML output
|
||||||
|
*/
|
||||||
function select_timezone($current = 'America/Los_Angeles') {
|
function select_timezone($current = 'America/Los_Angeles') {
|
||||||
|
|
||||||
$timezone_identifiers = DateTimeZone::listIdentifiers();
|
$timezone_identifiers = DateTimeZone::listIdentifiers();
|
||||||
|
@ -52,13 +66,25 @@ function select_timezone($current = 'America/Los_Angeles') {
|
||||||
}
|
}
|
||||||
$o .= '</optgroup></select>';
|
$o .= '</optgroup></select>';
|
||||||
return $o;
|
return $o;
|
||||||
}}
|
}
|
||||||
|
|
||||||
// return a select using 'field_select_raw' template, with timezones
|
|
||||||
// groupped (primarily) by continent
|
|
||||||
// arguments follow convetion as other field_* template array:
|
/**
|
||||||
// 'name', 'label', $value, 'help'
|
* @brief Generating a Timezone selector
|
||||||
if (!function_exists('field_timezone')){
|
*
|
||||||
|
* Return a select using 'field_select_raw' template, with timezones
|
||||||
|
* groupped (primarily) by continent
|
||||||
|
* arguments follow convetion as other field_* template array:
|
||||||
|
* 'name', 'label', $value, 'help'
|
||||||
|
*
|
||||||
|
* @param string $name Name of the selector
|
||||||
|
* @param string $label Label for the selector
|
||||||
|
* @param string $current Timezone
|
||||||
|
* @param string $help Help text
|
||||||
|
*
|
||||||
|
* @return string Parsed HTML
|
||||||
|
*/
|
||||||
function field_timezone($name='timezone', $label='', $current = 'America/Los_Angeles', $help){
|
function field_timezone($name='timezone', $label='', $current = 'America/Los_Angeles', $help){
|
||||||
$options = select_timezone($current);
|
$options = select_timezone($current);
|
||||||
$options = str_replace('<select id="timezone_select" name="timezone">','', $options);
|
$options = str_replace('<select id="timezone_select" name="timezone">','', $options);
|
||||||
|
@ -69,15 +95,19 @@ function field_timezone($name='timezone', $label='', $current = 'America/Los_Ang
|
||||||
'$field' => array($name, $label, $current, $help, $options),
|
'$field' => array($name, $label, $current, $help, $options),
|
||||||
));
|
));
|
||||||
|
|
||||||
}}
|
}
|
||||||
|
|
||||||
// General purpose date parse/convert function.
|
/**
|
||||||
// $from = source timezone
|
* @brief General purpose date parse/convert function.
|
||||||
// $to = dest timezone
|
*
|
||||||
// $s = some parseable date/time string
|
* @param string $from Source timezone
|
||||||
// $fmt = output format
|
* @param string $to Dest timezone
|
||||||
|
* @param string $s Some parseable date/time string
|
||||||
if(! function_exists('datetime_convert')) {
|
* @param string $fmt Output format recognised from php's DateTime class
|
||||||
|
* http://www.php.net/manual/en/datetime.format.php
|
||||||
|
*
|
||||||
|
* @return string Formatted date according to given format
|
||||||
|
*/
|
||||||
function datetime_convert($from = 'UTC', $to = 'UTC', $s = 'now', $fmt = "Y-m-d H:i:s") {
|
function datetime_convert($from = 'UTC', $to = 'UTC', $s = 'now', $fmt = "Y-m-d H:i:s") {
|
||||||
|
|
||||||
// Defaults to UTC if nothing is set, but throws an exception if set to empty string.
|
// Defaults to UTC if nothing is set, but throws an exception if set to empty string.
|
||||||
|
@ -123,14 +153,20 @@ function datetime_convert($from = 'UTC', $to = 'UTC', $s = 'now', $fmt = "Y-m-d
|
||||||
}
|
}
|
||||||
|
|
||||||
$d->setTimeZone($to_obj);
|
$d->setTimeZone($to_obj);
|
||||||
|
|
||||||
return($d->format($fmt));
|
return($d->format($fmt));
|
||||||
}}
|
}
|
||||||
|
|
||||||
|
|
||||||
// wrapper for date selector, tailored for use in birthday fields
|
/**
|
||||||
|
* @brief Wrapper for date selector, tailored for use in birthday fields.
|
||||||
|
*
|
||||||
|
* @param string $dob Date of Birth
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
function dob($dob) {
|
function dob($dob) {
|
||||||
list($year,$month,$day) = sscanf($dob,'%4d-%2d-%2d');
|
list($year,$month,$day) = sscanf($dob,'%4d-%2d-%2d');
|
||||||
|
|
||||||
$f = get_config('system','birthday_input_format');
|
$f = get_config('system','birthday_input_format');
|
||||||
if(! $f)
|
if(! $f)
|
||||||
$f = 'ymd';
|
$f = 'ymd';
|
||||||
|
@ -138,62 +174,69 @@ function dob($dob) {
|
||||||
$value = '';
|
$value = '';
|
||||||
else
|
else
|
||||||
$value = (($year) ? datetime_convert('UTC','UTC',$dob,'Y-m-d') : datetime_convert('UTC','UTC',$dob,'m-d'));
|
$value = (($year) ? datetime_convert('UTC','UTC',$dob,'Y-m-d') : datetime_convert('UTC','UTC',$dob,'m-d'));
|
||||||
|
|
||||||
$o = '<input type="text" name="dob" value="' . $value . '" placeholder="' . t('YYYY-MM-DD or MM-DD') . '" />';
|
$o = '<input type="text" name="dob" value="' . $value . '" placeholder="' . t('YYYY-MM-DD or MM-DD') . '" />';
|
||||||
|
|
||||||
// if ($dob && $dob != '0000-00-00')
|
// if ($dob && $dob != '0000-00-00')
|
||||||
// $o = datesel($f,mktime(0,0,0,0,0,1900),mktime(),mktime(0,0,0,$month,$day,$year),'dob');
|
// $o = datesel($f,mktime(0,0,0,0,0,1900),mktime(),mktime(0,0,0,$month,$day,$year),'dob');
|
||||||
// else
|
// else
|
||||||
// $o = datesel($f,mktime(0,0,0,0,0,1900),mktime(),false,'dob');
|
// $o = datesel($f,mktime(0,0,0,0,0,1900),mktime(),false,'dob');
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* returns a date selector
|
* @brief Returns a date selector
|
||||||
* @param $format
|
*
|
||||||
* format string, e.g. 'ymd' or 'mdy'. Not currently supported
|
* @param string $format
|
||||||
* @param $min
|
* Format string, e.g. 'ymd' or 'mdy'. Not currently supported
|
||||||
* unix timestamp of minimum date
|
* @param string $min
|
||||||
* @param $max
|
* Unix timestamp of minimum date
|
||||||
* unix timestap of maximum date
|
* @param string $max
|
||||||
* @param $default
|
* Unix timestap of maximum date
|
||||||
* unix timestamp of default date
|
* @param string $default
|
||||||
* @param $id
|
* Unix timestamp of default date
|
||||||
* id and name of datetimepicker (defaults to "datetimepicker")
|
* @param string $id
|
||||||
|
* ID and name of datetimepicker (defaults to "datetimepicker")
|
||||||
|
*
|
||||||
|
* @return string Parsed HTML output.
|
||||||
*/
|
*/
|
||||||
if(! function_exists('datesel')) {
|
|
||||||
function datesel($format, $min, $max, $default, $id = 'datepicker') {
|
function datesel($format, $min, $max, $default, $id = 'datepicker') {
|
||||||
return datetimesel($format,$min,$max,$default,$id,true,false, '','');
|
return datetimesel($format,$min,$max,$default,$id,true,false, '','');
|
||||||
}}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* returns a time selector
|
* @brief Returns a time selector
|
||||||
* @param $format
|
*
|
||||||
* format string, e.g. 'ymd' or 'mdy'. Not currently supported
|
* @param string $format
|
||||||
|
* Format string, e.g. 'ymd' or 'mdy'. Not currently supported
|
||||||
* @param $h
|
* @param $h
|
||||||
* already selected hour
|
* Already selected hour
|
||||||
* @param $m
|
* @param $m
|
||||||
* already selected minute
|
* Already selected minute
|
||||||
* @param $id
|
* @param string $id
|
||||||
* id and name of datetimepicker (defaults to "timepicker")
|
* ID and name of datetimepicker (defaults to "timepicker")
|
||||||
|
*
|
||||||
|
* @return string Parsed HTML output.
|
||||||
*/
|
*/
|
||||||
if(! function_exists('timesel')) {
|
|
||||||
function timesel($format, $h, $m, $id='timepicker') {
|
function timesel($format, $h, $m, $id='timepicker') {
|
||||||
return datetimesel($format,new DateTime(),new DateTime(),new DateTime("$h:$m"),$id,false,true);
|
return datetimesel($format,new DateTime(),new DateTime(),new DateTime("$h:$m"),$id,false,true);
|
||||||
}}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Returns a datetime selector.
|
* @brief Returns a datetime selector.
|
||||||
*
|
*
|
||||||
* @param $format
|
* @param string $format
|
||||||
* format string, e.g. 'ymd' or 'mdy'. Not currently supported
|
* format string, e.g. 'ymd' or 'mdy'. Not currently supported
|
||||||
* @param $min
|
* @param string $min
|
||||||
* unix timestamp of minimum date
|
* unix timestamp of minimum date
|
||||||
* @param $max
|
* @param string $max
|
||||||
* unix timestap of maximum date
|
* unix timestap of maximum date
|
||||||
* @param $default
|
* @param string $default
|
||||||
* unix timestamp of default date
|
* unix timestamp of default date
|
||||||
* @param string $id
|
* @param string $id
|
||||||
* id and name of datetimepicker (defaults to "datetimepicker")
|
* id and name of datetimepicker (defaults to "datetimepicker")
|
||||||
* @param boolean $pickdate
|
* @param bool $pickdate
|
||||||
* true to show date picker (default)
|
* true to show date picker (default)
|
||||||
* @param boolean $picktime
|
* @param boolean $picktime
|
||||||
* true to show time picker (default)
|
* true to show time picker (default)
|
||||||
|
@ -201,17 +244,15 @@ function timesel($format, $h, $m, $id='timepicker') {
|
||||||
* set minimum date from picker with id $minfrom (none by default)
|
* set minimum date from picker with id $minfrom (none by default)
|
||||||
* @param $maxfrom
|
* @param $maxfrom
|
||||||
* set maximum date from picker with id $maxfrom (none by default)
|
* set maximum date from picker with id $maxfrom (none by default)
|
||||||
* @param boolean $required default false
|
* @param bool $required default false
|
||||||
|
*
|
||||||
* @return string Parsed HTML output.
|
* @return string Parsed HTML output.
|
||||||
*
|
*
|
||||||
* @todo Once browser support is better this could probably be replaced with
|
* @todo Once browser support is better this could probably be replaced with
|
||||||
* native HTML5 date picker.
|
* native HTML5 date picker.
|
||||||
*/
|
*/
|
||||||
if(! function_exists('datetimesel')) {
|
|
||||||
function datetimesel($format, $min, $max, $default, $id = 'datetimepicker', $pickdate = true, $picktime = true, $minfrom = '', $maxfrom = '', $required = false) {
|
function datetimesel($format, $min, $max, $default, $id = 'datetimepicker', $pickdate = true, $picktime = true, $minfrom = '', $maxfrom = '', $required = false) {
|
||||||
|
|
||||||
$a = get_app();
|
|
||||||
|
|
||||||
// First day of the week (0 = Sunday)
|
// First day of the week (0 = Sunday)
|
||||||
$firstDay = get_pconfig(local_user(),'system','first_day_of_week');
|
$firstDay = get_pconfig(local_user(),'system','first_day_of_week');
|
||||||
if ($firstDay === false) $firstDay=0;
|
if ($firstDay === false) $firstDay=0;
|
||||||
|
@ -224,43 +265,58 @@ function datetimesel($format, $min, $max, $default, $id = 'datetimepicker', $pic
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
$dateformat = '';
|
$dateformat = '';
|
||||||
|
|
||||||
if($pickdate) $dateformat .= 'Y-m-d';
|
if($pickdate) $dateformat .= 'Y-m-d';
|
||||||
if($pickdate && $picktime) $dateformat .= ' ';
|
if($pickdate && $picktime) $dateformat .= ' ';
|
||||||
if($picktime) $dateformat .= 'H:i';
|
if($picktime) $dateformat .= 'H:i';
|
||||||
|
|
||||||
$minjs = $min ? ",minDate: new Date({$min->getTimestamp()}*1000), yearStart: " . $min->format('Y') : '';
|
$minjs = $min ? ",minDate: new Date({$min->getTimestamp()}*1000), yearStart: " . $min->format('Y') : '';
|
||||||
$maxjs = $max ? ",maxDate: new Date({$max->getTimestamp()}*1000), yearEnd: " . $max->format('Y') : '';
|
$maxjs = $max ? ",maxDate: new Date({$max->getTimestamp()}*1000), yearEnd: " . $max->format('Y') : '';
|
||||||
|
|
||||||
$input_text = $default ? 'value="' . date($dateformat, $default->getTimestamp()) . '"' : '';
|
$input_text = $default ? 'value="' . date($dateformat, $default->getTimestamp()) . '"' : '';
|
||||||
$defaultdatejs = $default ? ",defaultDate: new Date({$default->getTimestamp()}*1000)" : '';
|
$defaultdatejs = $default ? ",defaultDate: new Date({$default->getTimestamp()}*1000)" : '';
|
||||||
|
|
||||||
$pickers = '';
|
$pickers = '';
|
||||||
if(!$pickdate) $pickers .= ',datepicker: false';
|
if(!$pickdate) $pickers .= ',datepicker: false';
|
||||||
if(!$picktime) $pickers .= ',timepicker: false';
|
if(!$picktime) $pickers .= ',timepicker: false';
|
||||||
|
|
||||||
$extra_js = '';
|
$extra_js = '';
|
||||||
$pickers .= ",dayOfWeekStart: ".$firstDay.",lang:'".$lang."'";
|
$pickers .= ",dayOfWeekStart: ".$firstDay.",lang:'".$lang."'";
|
||||||
if($minfrom != '')
|
if($minfrom != '')
|
||||||
$extra_js .= "\$('#$minfrom').data('xdsoft_datetimepicker').setOptions({onChangeDateTime: function (currentDateTime) { \$('#$id').data('xdsoft_datetimepicker').setOptions({minDate: currentDateTime})}})";
|
$extra_js .= "\$('#$minfrom').data('xdsoft_datetimepicker').setOptions({onChangeDateTime: function (currentDateTime) { \$('#$id').data('xdsoft_datetimepicker').setOptions({minDate: currentDateTime})}})";
|
||||||
if($maxfrom != '')
|
if($maxfrom != '')
|
||||||
$extra_js .= "\$('#$maxfrom').data('xdsoft_datetimepicker').setOptions({onChangeDateTime: function (currentDateTime) { \$('#$id').data('xdsoft_datetimepicker').setOptions({maxDate: currentDateTime})}})";
|
$extra_js .= "\$('#$maxfrom').data('xdsoft_datetimepicker').setOptions({onChangeDateTime: function (currentDateTime) { \$('#$id').data('xdsoft_datetimepicker').setOptions({maxDate: currentDateTime})}})";
|
||||||
|
|
||||||
$readable_format = $dateformat;
|
$readable_format = $dateformat;
|
||||||
$readable_format = str_replace('Y','yyyy',$readable_format);
|
$readable_format = str_replace('Y','yyyy',$readable_format);
|
||||||
$readable_format = str_replace('m','mm',$readable_format);
|
$readable_format = str_replace('m','mm',$readable_format);
|
||||||
$readable_format = str_replace('d','dd',$readable_format);
|
$readable_format = str_replace('d','dd',$readable_format);
|
||||||
$readable_format = str_replace('H','HH',$readable_format);
|
$readable_format = str_replace('H','HH',$readable_format);
|
||||||
$readable_format = str_replace('i','MM',$readable_format);
|
$readable_format = str_replace('i','MM',$readable_format);
|
||||||
|
|
||||||
$o .= "<div class='date'><input type='text' placeholder='$readable_format' name='$id' id='$id' $input_text />";
|
$o .= "<div class='date'><input type='text' placeholder='$readable_format' name='$id' id='$id' $input_text />";
|
||||||
$o .= '</div>';
|
$o .= '</div>';
|
||||||
$o .= "<script type='text/javascript'>";
|
$o .= "<script type='text/javascript'>";
|
||||||
$o .= "\$(function () {var picker = \$('#$id').datetimepicker({step:5,format:'$dateformat' $minjs $maxjs $pickers $defaultdatejs}); $extra_js})";
|
$o .= "\$(function () {var picker = \$('#$id').datetimepicker({step:5,format:'$dateformat' $minjs $maxjs $pickers $defaultdatejs}); $extra_js})";
|
||||||
$o .= "</script>";
|
$o .= "</script>";
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}}
|
}
|
||||||
|
|
||||||
// implements "3 seconds ago" etc.
|
/**
|
||||||
// based on $posted_date, (UTC).
|
* @brief Returns a relative date string.
|
||||||
// Results relative to current timezone
|
*
|
||||||
// Limited to range of timestamps
|
* Implements "3 seconds ago" etc.
|
||||||
|
* Based on $posted_date, (UTC).
|
||||||
if(! function_exists('relative_date')) {
|
* Results relative to current timezone.
|
||||||
|
* Limited to range of timestamps.
|
||||||
|
*
|
||||||
|
* @param string $posted_date
|
||||||
|
* @param string $format (optional) Parsed with sprintf()
|
||||||
|
* <tt>%1$d %2$s ago</tt>, e.g. 22 hours ago, 1 minute ago
|
||||||
|
*
|
||||||
|
* @return string with relative date
|
||||||
|
*/
|
||||||
function relative_date($posted_date,$format = null) {
|
function relative_date($posted_date,$format = null) {
|
||||||
|
|
||||||
$localtime = datetime_convert('UTC',date_default_timezone_get(),$posted_date);
|
$localtime = datetime_convert('UTC',date_default_timezone_get(),$posted_date);
|
||||||
|
@ -300,23 +356,33 @@ function relative_date($posted_date,$format = null) {
|
||||||
// translators - e.g. 22 hours ago, 1 minute ago
|
// translators - e.g. 22 hours ago, 1 minute ago
|
||||||
if(! $format)
|
if(! $format)
|
||||||
$format = t('%1$d %2$s ago');
|
$format = t('%1$d %2$s ago');
|
||||||
|
|
||||||
return sprintf( $format,$r, (($r == 1) ? $str[0] : $str[1]));
|
return sprintf( $format,$r, (($r == 1) ? $str[0] : $str[1]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Returns age in years, given a date of birth,
|
|
||||||
// the timezone of the person whose date of birth is provided,
|
|
||||||
// and the timezone of the person viewing the result.
|
|
||||||
// Why? Bear with me. Let's say I live in Mittagong, Australia, and my
|
|
||||||
// birthday is on New Year's. You live in San Bruno, California.
|
|
||||||
// When exactly are you going to see my age increase?
|
|
||||||
// A: 5:00 AM Dec 31 San Bruno time. That's precisely when I start
|
|
||||||
// celebrating and become a year older. If you wish me happy birthday
|
|
||||||
// on January 1 (San Bruno time), you'll be a day late.
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Returns timezone correct age in years.
|
||||||
|
*
|
||||||
|
* Returns the age in years, given a date of birth, the timezone of the person
|
||||||
|
* whose date of birth is provided, and the timezone of the person viewing the
|
||||||
|
* result.
|
||||||
|
*
|
||||||
|
* Why? Bear with me. Let's say I live in Mittagong, Australia, and my birthday
|
||||||
|
* is on New Year's. You live in San Bruno, California.
|
||||||
|
* When exactly are you going to see my age increase?
|
||||||
|
*
|
||||||
|
* A: 5:00 AM Dec 31 San Bruno time. That's precisely when I start celebrating
|
||||||
|
* and become a year older. If you wish me happy birthday on January 1
|
||||||
|
* (San Bruno time), you'll be a day late.
|
||||||
|
*
|
||||||
|
* @param string $dob Date of Birth
|
||||||
|
* @param string $owner_tz (optional) Timezone of the person of interest
|
||||||
|
* @param string $viewer_tz (optional) Timezone of the person viewing
|
||||||
|
*
|
||||||
|
* @return int Age in years
|
||||||
|
*/
|
||||||
function age($dob,$owner_tz = '',$viewer_tz = '') {
|
function age($dob,$owner_tz = '',$viewer_tz = '') {
|
||||||
if(! intval($dob))
|
if(! intval($dob))
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -333,64 +399,79 @@ function age($dob,$owner_tz = '',$viewer_tz = '') {
|
||||||
|
|
||||||
if(($curr_month < $month) || (($curr_month == $month) && ($curr_day < $day)))
|
if(($curr_month < $month) || (($curr_month == $month) && ($curr_day < $day)))
|
||||||
$year_diff--;
|
$year_diff--;
|
||||||
|
|
||||||
return $year_diff;
|
return $year_diff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Get days of a month in a given year.
|
||||||
// Get days in month
|
*
|
||||||
// get_dim($year, $month);
|
* Returns number of days in the month of the given year.
|
||||||
// returns number of days.
|
* $m = 1 is 'January' to match human usage.
|
||||||
// $month[1] = 'January';
|
*
|
||||||
// to match human usage.
|
* @param int $y Year
|
||||||
|
* @param int $m Month (1=January, 12=December)
|
||||||
if(! function_exists('get_dim')) {
|
*
|
||||||
|
* @return int Number of days in the given month
|
||||||
|
*/
|
||||||
function get_dim($y,$m) {
|
function get_dim($y,$m) {
|
||||||
|
|
||||||
$dim = array( 0,
|
$dim = array( 0,
|
||||||
31, 28, 31, 30, 31, 30,
|
31, 28, 31, 30, 31, 30,
|
||||||
31, 31, 30, 31, 30, 31);
|
31, 31, 30, 31, 30, 31);
|
||||||
|
|
||||||
if($m != 2)
|
|
||||||
return $dim[$m];
|
|
||||||
if(((($y % 4) == 0) && (($y % 100) != 0)) || (($y % 400) == 0))
|
|
||||||
return 29;
|
|
||||||
return $dim[2];
|
|
||||||
}}
|
|
||||||
|
|
||||||
|
if($m != 2)
|
||||||
|
return $dim[$m];
|
||||||
|
|
||||||
// Returns the first day in month for a given month, year
|
if(((($y % 4) == 0) && (($y % 100) != 0)) || (($y % 400) == 0))
|
||||||
// get_first_dim($year,$month)
|
return 29;
|
||||||
// returns 0 = Sunday through 6 = Saturday
|
|
||||||
// Months start at 1.
|
|
||||||
|
|
||||||
if(! function_exists('get_first_dim')) {
|
return $dim[2];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Returns the first day in month for a given month, year.
|
||||||
|
*
|
||||||
|
* Months start at 1.
|
||||||
|
*
|
||||||
|
* @param int $y Year
|
||||||
|
* @param int $m Month (1=January, 12=December)
|
||||||
|
*
|
||||||
|
* @return string day 0 = Sunday through 6 = Saturday
|
||||||
|
*/
|
||||||
function get_first_dim($y,$m) {
|
function get_first_dim($y,$m) {
|
||||||
$d = sprintf('%04d-%02d-01 00:00', intval($y), intval($m));
|
$d = sprintf('%04d-%02d-01 00:00', intval($y), intval($m));
|
||||||
return datetime_convert('UTC','UTC',$d,'w');
|
|
||||||
}}
|
|
||||||
|
|
||||||
// output a calendar for the given month, year.
|
return datetime_convert('UTC','UTC',$d,'w');
|
||||||
// if $links are provided (array), e.g. $links[12] => 'http://mylink' ,
|
}
|
||||||
// date 12 will be linked appropriately. Today's date is also noted by
|
|
||||||
// altering td class.
|
|
||||||
// Months count from 1.
|
|
||||||
|
|
||||||
|
/**
|
||||||
/// @TODO Provide (prev,next) links, define class variations for different size calendars
|
* @brief Output a calendar for the given month, year.
|
||||||
|
*
|
||||||
|
* If $links are provided (array), e.g. $links[12] => 'http://mylink' ,
|
||||||
if(! function_exists('cal')) {
|
* date 12 will be linked appropriately. Today's date is also noted by
|
||||||
|
* altering td class.
|
||||||
|
* Months count from 1.
|
||||||
|
*
|
||||||
|
* @param int $y Year
|
||||||
|
* @param int $m Month
|
||||||
|
* @param bool $links (default false)
|
||||||
|
* @param string $class
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*
|
||||||
|
* @todo Provide (prev,next) links, define class variations for different size calendars
|
||||||
|
*/
|
||||||
function cal($y = 0,$m = 0, $links = false, $class='') {
|
function cal($y = 0,$m = 0, $links = false, $class='') {
|
||||||
|
|
||||||
|
|
||||||
// month table - start at 1 to match human usage.
|
// month table - start at 1 to match human usage.
|
||||||
|
|
||||||
$mtab = array(' ',
|
$mtab = array(' ',
|
||||||
'January','February','March',
|
'January','February','March',
|
||||||
'April','May','June',
|
'April','May','June',
|
||||||
'July','August','September',
|
'July','August','September',
|
||||||
'October','November','December'
|
'October','November','December'
|
||||||
);
|
);
|
||||||
|
|
||||||
$thisyear = datetime_convert('UTC',date_default_timezone_get(),'now','Y');
|
$thisyear = datetime_convert('UTC',date_default_timezone_get(),'now','Y');
|
||||||
|
@ -400,54 +481,63 @@ function cal($y = 0,$m = 0, $links = false, $class='') {
|
||||||
if(! $m)
|
if(! $m)
|
||||||
$m = intval($thismonth);
|
$m = intval($thismonth);
|
||||||
|
|
||||||
$dn = array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');
|
$dn = array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');
|
||||||
$f = get_first_dim($y,$m);
|
$f = get_first_dim($y,$m);
|
||||||
$l = get_dim($y,$m);
|
$l = get_dim($y,$m);
|
||||||
$d = 1;
|
$d = 1;
|
||||||
$dow = 0;
|
$dow = 0;
|
||||||
$started = false;
|
$started = false;
|
||||||
|
|
||||||
if(($y == $thisyear) && ($m == $thismonth))
|
if(($y == $thisyear) && ($m == $thismonth))
|
||||||
$tddate = intval(datetime_convert('UTC',date_default_timezone_get(),'now','j'));
|
$tddate = intval(datetime_convert('UTC',date_default_timezone_get(),'now','j'));
|
||||||
|
|
||||||
$str_month = day_translate($mtab[$m]);
|
$str_month = day_translate($mtab[$m]);
|
||||||
$o = '<table class="calendar' . $class . '">';
|
$o = '<table class="calendar' . $class . '">';
|
||||||
$o .= "<caption>$str_month $y</caption><tr>";
|
$o .= "<caption>$str_month $y</caption><tr>";
|
||||||
for($a = 0; $a < 7; $a ++)
|
for($a = 0; $a < 7; $a ++)
|
||||||
$o .= '<th>' . mb_substr(day_translate($dn[$a]),0,3,'UTF-8') . '</th>';
|
$o .= '<th>' . mb_substr(day_translate($dn[$a]),0,3,'UTF-8') . '</th>';
|
||||||
$o .= '</tr><tr>';
|
|
||||||
|
|
||||||
while($d <= $l) {
|
$o .= '</tr><tr>';
|
||||||
if(($dow == $f) && (! $started))
|
|
||||||
$started = true;
|
|
||||||
$today = (((isset($tddate)) && ($tddate == $d)) ? "class=\"today\" " : '');
|
|
||||||
$o .= "<td $today>";
|
|
||||||
$day = str_replace(' ',' ',sprintf('%2.2d', $d));
|
|
||||||
if($started) {
|
|
||||||
if(is_array($links) && isset($links[$d]))
|
|
||||||
$o .= "<a href=\"{$links[$d]}\">$day</a>";
|
|
||||||
else
|
|
||||||
$o .= $day;
|
|
||||||
$d ++;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
$o .= ' ';
|
|
||||||
$o .= '</td>';
|
|
||||||
$dow ++;
|
|
||||||
if(($dow == 7) && ($d <= $l)) {
|
|
||||||
$dow = 0;
|
|
||||||
$o .= '</tr><tr>';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if($dow)
|
|
||||||
for($a = $dow; $a < 7; $a ++)
|
|
||||||
$o .= '<td> </td>';
|
|
||||||
$o .= '</tr></table>'."\r\n";
|
|
||||||
|
|
||||||
return $o;
|
while($d <= $l) {
|
||||||
}}
|
if(($dow == $f) && (! $started))
|
||||||
|
$started = true;
|
||||||
|
|
||||||
|
$today = (((isset($tddate)) && ($tddate == $d)) ? "class=\"today\" " : '');
|
||||||
|
$o .= "<td $today>";
|
||||||
|
$day = str_replace(' ',' ',sprintf('%2.2d', $d));
|
||||||
|
if($started) {
|
||||||
|
if(is_array($links) && isset($links[$d]))
|
||||||
|
$o .= "<a href=\"{$links[$d]}\">$day</a>";
|
||||||
|
else
|
||||||
|
$o .= $day;
|
||||||
|
|
||||||
|
$d ++;
|
||||||
|
} else {
|
||||||
|
$o .= ' ';
|
||||||
|
}
|
||||||
|
|
||||||
|
$o .= '</td>';
|
||||||
|
$dow ++;
|
||||||
|
if(($dow == 7) && ($d <= $l)) {
|
||||||
|
$dow = 0;
|
||||||
|
$o .= '</tr><tr>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if($dow)
|
||||||
|
for($a = $dow; $a < 7; $a ++)
|
||||||
|
$o .= '<td> </td>';
|
||||||
|
|
||||||
|
$o .= '</tr></table>'."\r\n";
|
||||||
|
|
||||||
|
return $o;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Create a birthday event.
|
||||||
|
*
|
||||||
|
* Update the year and the birthday.
|
||||||
|
*/
|
||||||
function update_contact_birthdays() {
|
function update_contact_birthdays() {
|
||||||
|
|
||||||
// This only handles foreign or alien networks where a birthday has been provided.
|
// This only handles foreign or alien networks where a birthday has been provided.
|
||||||
|
@ -474,8 +564,6 @@ function update_contact_birthdays() {
|
||||||
$bdtext = sprintf( t('%s\'s birthday'), $rr['name']);
|
$bdtext = sprintf( t('%s\'s birthday'), $rr['name']);
|
||||||
$bdtext2 = sprintf( t('Happy Birthday %s'), ' [url=' . $rr['url'] . ']' . $rr['name'] . '[/url]') ;
|
$bdtext2 = sprintf( t('Happy Birthday %s'), ' [url=' . $rr['url'] . ']' . $rr['name'] . '[/url]') ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$r = q("INSERT INTO `event` (`uid`,`cid`,`created`,`edited`,`start`,`finish`,`summary`,`desc`,`type`,`adjust`)
|
$r = q("INSERT INTO `event` (`uid`,`cid`,`created`,`edited`,`start`,`finish`,`summary`,`desc`,`type`,`adjust`)
|
||||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%d' ) ",
|
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%d' ) ",
|
||||||
intval($rr['uid']),
|
intval($rr['uid']),
|
||||||
|
|
|
@ -374,7 +374,7 @@ function delivery_run(&$argv, &$argc){
|
||||||
break;
|
break;
|
||||||
|
|
||||||
logger('mod-delivery: local delivery');
|
logger('mod-delivery: local delivery');
|
||||||
local_delivery($x[0],$atom);
|
dfrn::import($atom, $x[0]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
1403
include/dfrn.php
1403
include/dfrn.php
File diff suppressed because it is too large
Load diff
|
@ -1,185 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @file include/forums.php
|
|
||||||
* @brief Functions related to forum functionality *
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Function to list all forums a user is connected with
|
|
||||||
*
|
|
||||||
* @param int $uid of the profile owner
|
|
||||||
* @param boolean $showhidden
|
|
||||||
* Show frorums which are not hidden
|
|
||||||
* @param boolean $lastitem
|
|
||||||
* Sort by lastitem
|
|
||||||
* @param boolean $showprivate
|
|
||||||
* Show private groups
|
|
||||||
*
|
|
||||||
* @returns array
|
|
||||||
* 'url' => forum url
|
|
||||||
* 'name' => forum name
|
|
||||||
* 'id' => number of the key from the array
|
|
||||||
* 'micro' => contact photo in format micro
|
|
||||||
*/
|
|
||||||
function get_forumlist($uid, $showhidden = true, $lastitem, $showprivate = false) {
|
|
||||||
|
|
||||||
$forumlist = array();
|
|
||||||
|
|
||||||
$order = (($showhidden) ? '' : ' AND NOT `hidden` ');
|
|
||||||
$order .= (($lastitem) ? ' ORDER BY `last-item` DESC ' : ' ORDER BY `name` ASC ');
|
|
||||||
$select = '`forum` ';
|
|
||||||
if ($showprivate) {
|
|
||||||
$select = '(`forum` OR `prv`)';
|
|
||||||
}
|
|
||||||
|
|
||||||
$contacts = q("SELECT `contact`.`id`, `contact`.`url`, `contact`.`name`, `contact`.`micro` FROM `contact`
|
|
||||||
WHERE `network`= 'dfrn' AND $select AND `uid` = %d
|
|
||||||
AND NOT `blocked` AND NOT `hidden` AND NOT `pending` AND NOT `archive`
|
|
||||||
AND `success_update` > `failure_update`
|
|
||||||
$order ",
|
|
||||||
intval($uid)
|
|
||||||
);
|
|
||||||
|
|
||||||
if (!$contacts)
|
|
||||||
return($forumlist);
|
|
||||||
|
|
||||||
foreach($contacts as $contact) {
|
|
||||||
$forumlist[] = array(
|
|
||||||
'url' => $contact['url'],
|
|
||||||
'name' => $contact['name'],
|
|
||||||
'id' => $contact['id'],
|
|
||||||
'micro' => $contact['micro'],
|
|
||||||
);
|
|
||||||
}
|
|
||||||
return($forumlist);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Forumlist widget
|
|
||||||
*
|
|
||||||
* Sidebar widget to show subcribed friendica forums. If activated
|
|
||||||
* in the settings, it appears at the notwork page sidebar
|
|
||||||
*
|
|
||||||
* @param int $uid
|
|
||||||
* @param int $cid
|
|
||||||
* The contact id which is used to mark a forum as "selected"
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
function widget_forumlist($uid,$cid = 0) {
|
|
||||||
|
|
||||||
if(! intval(feature_enabled(local_user(),'forumlist_widget')))
|
|
||||||
return;
|
|
||||||
|
|
||||||
$o = '';
|
|
||||||
|
|
||||||
//sort by last updated item
|
|
||||||
$lastitem = true;
|
|
||||||
|
|
||||||
$contacts = get_forumlist($uid,true,$lastitem, true);
|
|
||||||
$total = count($contacts);
|
|
||||||
$visible_forums = 10;
|
|
||||||
|
|
||||||
if(count($contacts)) {
|
|
||||||
|
|
||||||
$id = 0;
|
|
||||||
|
|
||||||
foreach($contacts as $contact) {
|
|
||||||
|
|
||||||
$selected = (($cid == $contact['id']) ? ' forum-selected' : '');
|
|
||||||
|
|
||||||
$entry = array(
|
|
||||||
'url' => z_root() . '/network?f=&cid=' . $contact['id'],
|
|
||||||
'external_url' => z_root() . '/redir/' . $contact['id'],
|
|
||||||
'name' => $contact['name'],
|
|
||||||
'cid' => $contact['id'],
|
|
||||||
'selected' => $selected,
|
|
||||||
'micro' => proxy_url($contact['micro'], false, PROXY_SIZE_MICRO),
|
|
||||||
'id' => ++$id,
|
|
||||||
);
|
|
||||||
$entries[] = $entry;
|
|
||||||
}
|
|
||||||
|
|
||||||
$tpl = get_markup_template('widget_forumlist.tpl');
|
|
||||||
|
|
||||||
$o .= replace_macros($tpl,array(
|
|
||||||
'$title' => t('Forums'),
|
|
||||||
'$forums' => $entries,
|
|
||||||
'$link_desc' => t('External link to forum'),
|
|
||||||
'$total' => $total,
|
|
||||||
'$visible_forums' => $visible_forums,
|
|
||||||
'$showmore' => t('show more'),
|
|
||||||
));
|
|
||||||
}
|
|
||||||
|
|
||||||
return $o;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Format forumlist as contact block
|
|
||||||
*
|
|
||||||
* This function is used to show the forumlist in
|
|
||||||
* the advanced profile.
|
|
||||||
*
|
|
||||||
* @param int $uid
|
|
||||||
* @return string
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
function forumlist_profile_advanced($uid) {
|
|
||||||
|
|
||||||
$profile = intval(feature_enabled($uid,'forumlist_profile'));
|
|
||||||
if(! $profile)
|
|
||||||
return;
|
|
||||||
|
|
||||||
$o = '';
|
|
||||||
|
|
||||||
// place holder in case somebody wants configurability
|
|
||||||
$show_total = 9999;
|
|
||||||
|
|
||||||
//don't sort by last updated item
|
|
||||||
$lastitem = false;
|
|
||||||
|
|
||||||
$contacts = get_forumlist($uid,false,$lastitem,false);
|
|
||||||
|
|
||||||
$total_shown = 0;
|
|
||||||
|
|
||||||
foreach($contacts as $contact) {
|
|
||||||
$forumlist .= micropro($contact,false,'forumlist-profile-advanced');
|
|
||||||
$total_shown ++;
|
|
||||||
if($total_shown == $show_total)
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(count($contacts) > 0)
|
|
||||||
$o .= $forumlist;
|
|
||||||
return $o;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief count unread forum items
|
|
||||||
*
|
|
||||||
* Count unread items of connected forums and private groups
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
* 'id' => contact id
|
|
||||||
* 'name' => contact/forum name
|
|
||||||
* 'count' => counted unseen forum items
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
function forums_count_unseen() {
|
|
||||||
$r = q("SELECT `contact`.`id`, `contact`.`name`, COUNT(*) AS `count` FROM `item`
|
|
||||||
INNER JOIN `contact` ON `item`.`contact-id` = `contact`.`id`
|
|
||||||
WHERE `item`.`uid` = %d AND `item`.`visible` AND NOT `item`.`deleted` AND `item`.`unseen`
|
|
||||||
AND `contact`.`network`= 'dfrn' AND (`contact`.`forum` OR `contact`.`prv`)
|
|
||||||
AND NOT `contact`.`blocked` AND NOT `contact`.`hidden`
|
|
||||||
AND NOT `contact`.`pending` AND NOT `contact`.`archive`
|
|
||||||
AND `contact`.`success_update` > `failure_update`
|
|
||||||
GROUP BY `contact`.`id` ",
|
|
||||||
intval(local_user())
|
|
||||||
);
|
|
||||||
|
|
||||||
return $r;
|
|
||||||
}
|
|
|
@ -3,7 +3,7 @@
|
||||||
* @file include/identity.php
|
* @file include/identity.php
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once('include/forums.php');
|
require_once('include/ForumManager.php');
|
||||||
require_once('include/bbcode.php');
|
require_once('include/bbcode.php');
|
||||||
require_once("mod/proxy.php");
|
require_once("mod/proxy.php");
|
||||||
|
|
||||||
|
@ -655,7 +655,7 @@ function advanced_profile(&$a) {
|
||||||
|
|
||||||
//show subcribed forum if it is enabled in the usersettings
|
//show subcribed forum if it is enabled in the usersettings
|
||||||
if (feature_enabled($uid,'forumlist_profile')) {
|
if (feature_enabled($uid,'forumlist_profile')) {
|
||||||
$profile['forumlist'] = array( t('Forums:'), forumlist_profile_advanced($uid));
|
$profile['forumlist'] = array( t('Forums:'), ForumManager::profile_advanced($uid));
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($a->profile['uid'] == local_user())
|
if ($a->profile['uid'] == local_user())
|
||||||
|
|
2147
include/items.php
2147
include/items.php
File diff suppressed because it is too large
Load diff
|
@ -17,15 +17,6 @@ define('OSTATUS_DEFAULT_POLL_INTERVAL', 30); // given in minutes
|
||||||
define('OSTATUS_DEFAULT_POLL_TIMEFRAME', 1440); // given in minutes
|
define('OSTATUS_DEFAULT_POLL_TIMEFRAME', 1440); // given in minutes
|
||||||
define('OSTATUS_DEFAULT_POLL_TIMEFRAME_MENTIONS', 14400); // given in minutes
|
define('OSTATUS_DEFAULT_POLL_TIMEFRAME_MENTIONS', 14400); // given in minutes
|
||||||
|
|
||||||
define("NS_ATOM", "http://www.w3.org/2005/Atom");
|
|
||||||
define("NS_THR", "http://purl.org/syndication/thread/1.0");
|
|
||||||
define("NS_GEORSS", "http://www.georss.org/georss");
|
|
||||||
define("NS_ACTIVITY", "http://activitystrea.ms/spec/1.0/");
|
|
||||||
define("NS_MEDIA", "http://purl.org/syndication/atommedia");
|
|
||||||
define("NS_POCO", "http://portablecontacts.net/spec/1.0");
|
|
||||||
define("NS_OSTATUS", "http://ostatus.org/schema/1.0");
|
|
||||||
define("NS_STATUSNET", "http://status.net/schema/api/1/");
|
|
||||||
|
|
||||||
function ostatus_check_follow_friends() {
|
function ostatus_check_follow_friends() {
|
||||||
$r = q("SELECT `uid`,`v` FROM `pconfig` WHERE `cat`='system' AND `k`='ostatus_legacy_contact' AND `v` != ''");
|
$r = q("SELECT `uid`,`v` FROM `pconfig` WHERE `cat`='system' AND `k`='ostatus_legacy_contact' AND `v` != ''");
|
||||||
|
|
||||||
|
@ -193,14 +184,14 @@ function ostatus_salmon_author($xml, $importer) {
|
||||||
@$doc->loadXML($xml);
|
@$doc->loadXML($xml);
|
||||||
|
|
||||||
$xpath = new DomXPath($doc);
|
$xpath = new DomXPath($doc);
|
||||||
$xpath->registerNamespace('atom', "http://www.w3.org/2005/Atom");
|
$xpath->registerNamespace('atom', NAMESPACE_ATOM1);
|
||||||
$xpath->registerNamespace('thr', "http://purl.org/syndication/thread/1.0");
|
$xpath->registerNamespace('thr', NAMESPACE_THREAD);
|
||||||
$xpath->registerNamespace('georss', "http://www.georss.org/georss");
|
$xpath->registerNamespace('georss', NAMESPACE_GEORSS);
|
||||||
$xpath->registerNamespace('activity', "http://activitystrea.ms/spec/1.0/");
|
$xpath->registerNamespace('activity', NAMESPACE_ACTIVITY);
|
||||||
$xpath->registerNamespace('media', "http://purl.org/syndication/atommedia");
|
$xpath->registerNamespace('media', NAMESPACE_MEDIA);
|
||||||
$xpath->registerNamespace('poco', "http://portablecontacts.net/spec/1.0");
|
$xpath->registerNamespace('poco', NAMESPACE_POCO);
|
||||||
$xpath->registerNamespace('ostatus', "http://ostatus.org/schema/1.0");
|
$xpath->registerNamespace('ostatus', NAMESPACE_OSTATUS);
|
||||||
$xpath->registerNamespace('statusnet', "http://status.net/schema/api/1/");
|
$xpath->registerNamespace('statusnet', NAMESPACE_STATUSNET);
|
||||||
|
|
||||||
$entries = $xpath->query('/atom:entry');
|
$entries = $xpath->query('/atom:entry');
|
||||||
|
|
||||||
|
@ -224,14 +215,14 @@ function ostatus_import($xml,$importer,&$contact, &$hub) {
|
||||||
@$doc->loadXML($xml);
|
@$doc->loadXML($xml);
|
||||||
|
|
||||||
$xpath = new DomXPath($doc);
|
$xpath = new DomXPath($doc);
|
||||||
$xpath->registerNamespace('atom', "http://www.w3.org/2005/Atom");
|
$xpath->registerNamespace('atom', NAMESPACE_ATOM1);
|
||||||
$xpath->registerNamespace('thr', "http://purl.org/syndication/thread/1.0");
|
$xpath->registerNamespace('thr', NAMESPACE_THREAD);
|
||||||
$xpath->registerNamespace('georss', "http://www.georss.org/georss");
|
$xpath->registerNamespace('georss', NAMESPACE_GEORSS);
|
||||||
$xpath->registerNamespace('activity', "http://activitystrea.ms/spec/1.0/");
|
$xpath->registerNamespace('activity', NAMESPACE_ACTIVITY);
|
||||||
$xpath->registerNamespace('media', "http://purl.org/syndication/atommedia");
|
$xpath->registerNamespace('media', NAMESPACE_MEDIA);
|
||||||
$xpath->registerNamespace('poco', "http://portablecontacts.net/spec/1.0");
|
$xpath->registerNamespace('poco', NAMESPACE_POCO);
|
||||||
$xpath->registerNamespace('ostatus', "http://ostatus.org/schema/1.0");
|
$xpath->registerNamespace('ostatus', NAMESPACE_OSTATUS);
|
||||||
$xpath->registerNamespace('statusnet', "http://status.net/schema/api/1/");
|
$xpath->registerNamespace('statusnet', NAMESPACE_STATUSNET);
|
||||||
|
|
||||||
$gub = "";
|
$gub = "";
|
||||||
$hub_attributes = $xpath->query("/atom:feed/atom:link[@rel='hub']")->item(0)->attributes;
|
$hub_attributes = $xpath->query("/atom:feed/atom:link[@rel='hub']")->item(0)->attributes;
|
||||||
|
@ -1120,16 +1111,16 @@ function ostatus_format_picture_post($body) {
|
||||||
function ostatus_add_header($doc, $owner) {
|
function ostatus_add_header($doc, $owner) {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
|
|
||||||
$root = $doc->createElementNS(NS_ATOM, 'feed');
|
$root = $doc->createElementNS(NAMESPACE_ATOM1, 'feed');
|
||||||
$doc->appendChild($root);
|
$doc->appendChild($root);
|
||||||
|
|
||||||
$root->setAttribute("xmlns:thr", NS_THR);
|
$root->setAttribute("xmlns:thr", NAMESPACE_THREAD);
|
||||||
$root->setAttribute("xmlns:georss", NS_GEORSS);
|
$root->setAttribute("xmlns:georss", NAMESPACE_GEORSS);
|
||||||
$root->setAttribute("xmlns:activity", NS_ACTIVITY);
|
$root->setAttribute("xmlns:activity", NAMESPACE_ACTIVITY);
|
||||||
$root->setAttribute("xmlns:media", NS_MEDIA);
|
$root->setAttribute("xmlns:media", NAMESPACE_MEDIA);
|
||||||
$root->setAttribute("xmlns:poco", NS_POCO);
|
$root->setAttribute("xmlns:poco", NAMESPACE_POCO);
|
||||||
$root->setAttribute("xmlns:ostatus", NS_OSTATUS);
|
$root->setAttribute("xmlns:ostatus", NAMESPACE_OSTATUS);
|
||||||
$root->setAttribute("xmlns:statusnet", NS_STATUSNET);
|
$root->setAttribute("xmlns:statusnet", NAMESPACE_STATUSNET);
|
||||||
|
|
||||||
$attributes = array("uri" => "https://friendi.ca", "version" => FRIENDICA_VERSION."-".DB_UPDATE_VERSION);
|
$attributes = array("uri" => "https://friendi.ca", "version" => FRIENDICA_VERSION."-".DB_UPDATE_VERSION);
|
||||||
xml_add_element($doc, $root, "generator", FRIENDICA_PLATFORM, $attributes);
|
xml_add_element($doc, $root, "generator", FRIENDICA_PLATFORM, $attributes);
|
||||||
|
@ -1321,6 +1312,10 @@ function ostatus_add_author($doc, $owner) {
|
||||||
function ostatus_entry($doc, $item, $owner, $toplevel = false, $repeat = false) {
|
function ostatus_entry($doc, $item, $owner, $toplevel = false, $repeat = false) {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
|
|
||||||
|
if (($item["id"] != $item["parent"]) AND (normalise_link($item["author-link"]) != normalise_link($owner["url"]))) {
|
||||||
|
logger("OStatus entry is from author ".$owner["url"]." - not from ".$item["author-link"].". Quitting.", LOGGER_DEBUG);
|
||||||
|
}
|
||||||
|
|
||||||
$is_repeat = false;
|
$is_repeat = false;
|
||||||
|
|
||||||
/* if (!$repeat) {
|
/* if (!$repeat) {
|
||||||
|
@ -1343,15 +1338,15 @@ function ostatus_entry($doc, $item, $owner, $toplevel = false, $repeat = false)
|
||||||
$entry = $doc->createElement("activity:object");
|
$entry = $doc->createElement("activity:object");
|
||||||
$title = sprintf("New note by %s", $owner["nick"]);
|
$title = sprintf("New note by %s", $owner["nick"]);
|
||||||
} else {
|
} else {
|
||||||
$entry = $doc->createElementNS(NS_ATOM, "entry");
|
$entry = $doc->createElementNS(NAMESPACE_ATOM1, "entry");
|
||||||
|
|
||||||
$entry->setAttribute("xmlns:thr", NS_THR);
|
$entry->setAttribute("xmlns:thr", NAMESPACE_THREAD);
|
||||||
$entry->setAttribute("xmlns:georss", NS_GEORSS);
|
$entry->setAttribute("xmlns:georss", NAMESPACE_GEORSS);
|
||||||
$entry->setAttribute("xmlns:activity", NS_ACTIVITY);
|
$entry->setAttribute("xmlns:activity", NAMESPACE_ACTIVITY);
|
||||||
$entry->setAttribute("xmlns:media", NS_MEDIA);
|
$entry->setAttribute("xmlns:media", NAMESPACE_MEDIA);
|
||||||
$entry->setAttribute("xmlns:poco", NS_POCO);
|
$entry->setAttribute("xmlns:poco", NAMESPACE_POCO);
|
||||||
$entry->setAttribute("xmlns:ostatus", NS_OSTATUS);
|
$entry->setAttribute("xmlns:ostatus", NAMESPACE_OSTATUS);
|
||||||
$entry->setAttribute("xmlns:statusnet", NS_STATUSNET);
|
$entry->setAttribute("xmlns:statusnet", NAMESPACE_STATUSNET);
|
||||||
|
|
||||||
$author = ostatus_add_author($doc, $owner);
|
$author = ostatus_add_author($doc, $owner);
|
||||||
$entry->appendChild($author);
|
$entry->appendChild($author);
|
||||||
|
|
11
index.php
11
index.php
|
@ -233,7 +233,16 @@ if(strlen($a->module)) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* If not, next look for a 'standard' program module in the 'mod' directory
|
* If not, next look for module overrides by the theme
|
||||||
|
*/
|
||||||
|
|
||||||
|
if((! $a->module_loaded) && (file_exists("view/theme/" . current_theme() . "/mod/{$a->module}.php"))) {
|
||||||
|
include_once("view/theme/" . current_theme() . "/mod/{$a->module}.php");
|
||||||
|
// We will not set module_loaded to true to allow for partial overrides.
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Finally, look for a 'standard' program module in the 'mod' directory
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if((! $a->module_loaded) && (file_exists("mod/{$a->module}.php"))) {
|
if((! $a->module_loaded) && (file_exists("mod/{$a->module}.php"))) {
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
require_once("mod/hostxrd.php");
|
require_once("mod/hostxrd.php");
|
||||||
require_once("mod/nodeinfo.php");
|
require_once("mod/nodeinfo.php");
|
||||||
|
|
||||||
|
if(! function_exists('_well_known_init')) {
|
||||||
function _well_known_init(&$a){
|
function _well_known_init(&$a){
|
||||||
if ($a->argc > 1) {
|
if ($a->argc > 1) {
|
||||||
switch($a->argv[1]) {
|
switch($a->argv[1]) {
|
||||||
|
@ -19,7 +20,9 @@ function _well_known_init(&$a){
|
||||||
http_status_exit(404);
|
http_status_exit(404);
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('wk_social_relay')) {
|
||||||
function wk_social_relay(&$a) {
|
function wk_social_relay(&$a) {
|
||||||
|
|
||||||
define('SR_SCOPE_ALL', 'all');
|
define('SR_SCOPE_ALL', 'all');
|
||||||
|
@ -64,3 +67,4 @@ function wk_social_relay(&$a) {
|
||||||
echo json_encode($relay, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
|
echo json_encode($relay, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
|
|
||||||
require_once('include/Scrape.php');
|
require_once('include/Scrape.php');
|
||||||
|
|
||||||
|
if(! function_exists('acctlink_init')) {
|
||||||
function acctlink_init(&$a) {
|
function acctlink_init(&$a) {
|
||||||
|
|
||||||
if(x($_GET,'addr')) {
|
if(x($_GET,'addr')) {
|
||||||
$addr = trim($_GET['addr']);
|
$addr = trim($_GET['addr']);
|
||||||
$res = probe_url($addr);
|
$res = probe_url($addr);
|
||||||
|
@ -14,3 +14,4 @@ function acctlink_init(&$a) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -3,8 +3,8 @@
|
||||||
|
|
||||||
require_once("include/acl_selectors.php");
|
require_once("include/acl_selectors.php");
|
||||||
|
|
||||||
|
if(! function_exists('acl_init')) {
|
||||||
function acl_init(&$a){
|
function acl_init(&$a){
|
||||||
acl_lookup($a);
|
acl_lookup($a);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file mod/admin.php
|
* @file mod/admin.php
|
||||||
*
|
*
|
||||||
* @brief Friendica admin
|
* @brief Friendica admin
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -23,6 +23,7 @@ require_once("include/text.php");
|
||||||
* @param App $a
|
* @param App $a
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_post')) {
|
||||||
function admin_post(&$a){
|
function admin_post(&$a){
|
||||||
|
|
||||||
|
|
||||||
|
@ -110,6 +111,7 @@ function admin_post(&$a){
|
||||||
goaway($a->get_baseurl(true) . '/admin' );
|
goaway($a->get_baseurl(true) . '/admin' );
|
||||||
return; // NOTREACHED
|
return; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Generates content of the admin panel pages
|
* @brief Generates content of the admin panel pages
|
||||||
|
@ -128,6 +130,7 @@ function admin_post(&$a){
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_content')) {
|
||||||
function admin_content(&$a) {
|
function admin_content(&$a) {
|
||||||
|
|
||||||
if(!is_site_admin()) {
|
if(!is_site_admin()) {
|
||||||
|
@ -245,6 +248,7 @@ function admin_content(&$a) {
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Subpage with some stats about "the federation" network
|
* @brief Subpage with some stats about "the federation" network
|
||||||
|
@ -260,6 +264,7 @@ function admin_content(&$a) {
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_federation')) {
|
||||||
function admin_page_federation(&$a) {
|
function admin_page_federation(&$a) {
|
||||||
// get counts on active friendica, diaspora, redmatrix, hubzilla, gnu
|
// get counts on active friendica, diaspora, redmatrix, hubzilla, gnu
|
||||||
// social and statusnet nodes this node is knowing
|
// social and statusnet nodes this node is knowing
|
||||||
|
@ -284,7 +289,7 @@ function admin_page_federation(&$a) {
|
||||||
// what versions for that platform do we know at all?
|
// what versions for that platform do we know at all?
|
||||||
// again only the active nodes
|
// again only the active nodes
|
||||||
$v = q('SELECT count(*) AS total, version FROM gserver
|
$v = q('SELECT count(*) AS total, version FROM gserver
|
||||||
WHERE last_contact > last_failure AND platform LIKE "%s"
|
WHERE last_contact > last_failure AND platform LIKE "%s"
|
||||||
GROUP BY version
|
GROUP BY version
|
||||||
ORDER BY version;', $p);
|
ORDER BY version;', $p);
|
||||||
|
|
||||||
|
@ -301,12 +306,12 @@ function admin_page_federation(&$a) {
|
||||||
$newVC = $vv['total'];
|
$newVC = $vv['total'];
|
||||||
$newVV = $vv['version'];
|
$newVV = $vv['version'];
|
||||||
$posDash = strpos($newVV, '-');
|
$posDash = strpos($newVV, '-');
|
||||||
if($posDash)
|
if($posDash)
|
||||||
$newVV = substr($newVV, 0, $posDash);
|
$newVV = substr($newVV, 0, $posDash);
|
||||||
if(isset($newV[$newVV]))
|
if(isset($newV[$newVV]))
|
||||||
$newV[$newVV] += $newVC;
|
$newV[$newVV] += $newVC;
|
||||||
else
|
else
|
||||||
$newV[$newVV] = $newVC;
|
$newV[$newVV] = $newVC;
|
||||||
}
|
}
|
||||||
foreach ($newV as $key => $value) {
|
foreach ($newV as $key => $value) {
|
||||||
array_push($newVv, array('total'=>$value, 'version'=>$key));
|
array_push($newVv, array('total'=>$value, 'version'=>$key));
|
||||||
|
@ -361,6 +366,7 @@ function admin_page_federation(&$a) {
|
||||||
'$baseurl' => $a->get_baseurl(),
|
'$baseurl' => $a->get_baseurl(),
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Admin Inspect Queue Page
|
* @brief Admin Inspect Queue Page
|
||||||
|
@ -375,6 +381,7 @@ function admin_page_federation(&$a) {
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_queue')) {
|
||||||
function admin_page_queue(&$a) {
|
function admin_page_queue(&$a) {
|
||||||
// get content from the queue table
|
// get content from the queue table
|
||||||
$r = q("SELECT c.name,c.nurl,q.id,q.network,q.created,q.last from queue as q, contact as c where c.id=q.cid order by q.cid, q.created;");
|
$r = q("SELECT c.name,c.nurl,q.id,q.network,q.created,q.last from queue as q, contact as c where c.id=q.cid order by q.cid, q.created;");
|
||||||
|
@ -394,6 +401,7 @@ function admin_page_queue(&$a) {
|
||||||
'$entries' => $r,
|
'$entries' => $r,
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Admin Summary Page
|
* @brief Admin Summary Page
|
||||||
|
@ -406,6 +414,7 @@ function admin_page_queue(&$a) {
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_summary')) {
|
||||||
function admin_page_summary(&$a) {
|
function admin_page_summary(&$a) {
|
||||||
$r = q("SELECT `page-flags`, COUNT(uid) as `count` FROM `user` GROUP BY `page-flags`");
|
$r = q("SELECT `page-flags`, COUNT(uid) as `count` FROM `user` GROUP BY `page-flags`");
|
||||||
$accounts = array(
|
$accounts = array(
|
||||||
|
@ -452,12 +461,14 @@ function admin_page_summary(&$a) {
|
||||||
'$plugins' => array( t('Active plugins'), $a->plugins )
|
'$plugins' => array( t('Active plugins'), $a->plugins )
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Process send data from Admin Site Page
|
* @brief Process send data from Admin Site Page
|
||||||
*
|
*
|
||||||
* @param App $a
|
* @param App $a
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_site_post')) {
|
||||||
function admin_page_site_post(&$a) {
|
function admin_page_site_post(&$a) {
|
||||||
if(!x($_POST,"page_site")) {
|
if(!x($_POST,"page_site")) {
|
||||||
return;
|
return;
|
||||||
|
@ -770,6 +781,7 @@ function admin_page_site_post(&$a) {
|
||||||
return; // NOTREACHED
|
return; // NOTREACHED
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Generate Admin Site subpage
|
* @brief Generate Admin Site subpage
|
||||||
|
@ -779,6 +791,7 @@ function admin_page_site_post(&$a) {
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_site')) {
|
||||||
function admin_page_site(&$a) {
|
function admin_page_site(&$a) {
|
||||||
|
|
||||||
/* Installed langs */
|
/* Installed langs */
|
||||||
|
@ -983,7 +996,7 @@ function admin_page_site(&$a) {
|
||||||
'$form_security_token' => get_form_security_token("admin_site")
|
'$form_security_token' => get_form_security_token("admin_site")
|
||||||
|
|
||||||
));
|
));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -998,6 +1011,7 @@ function admin_page_site(&$a) {
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
**/
|
**/
|
||||||
|
if(! function_exists('admin_page_dbsync')) {
|
||||||
function admin_page_dbsync(&$a) {
|
function admin_page_dbsync(&$a) {
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
@ -1073,14 +1087,15 @@ function admin_page_dbsync(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Process data send by Users admin page
|
* @brief Process data send by Users admin page
|
||||||
*
|
*
|
||||||
* @param App $a
|
* @param App $a
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_users_post')) {
|
||||||
function admin_page_users_post(&$a){
|
function admin_page_users_post(&$a){
|
||||||
$pending = ( x($_POST, 'pending') ? $_POST['pending'] : array() );
|
$pending = ( x($_POST, 'pending') ? $_POST['pending'] : array() );
|
||||||
$users = ( x($_POST, 'user') ? $_POST['user'] : array() );
|
$users = ( x($_POST, 'user') ? $_POST['user'] : array() );
|
||||||
|
@ -1171,6 +1186,7 @@ function admin_page_users_post(&$a){
|
||||||
goaway($a->get_baseurl(true) . '/admin/users' );
|
goaway($a->get_baseurl(true) . '/admin/users' );
|
||||||
return; // NOTREACHED
|
return; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Admin panel subpage for User management
|
* @brief Admin panel subpage for User management
|
||||||
|
@ -1184,6 +1200,7 @@ function admin_page_users_post(&$a){
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_users')) {
|
||||||
function admin_page_users(&$a){
|
function admin_page_users(&$a){
|
||||||
if($a->argc>2) {
|
if($a->argc>2) {
|
||||||
$uid = $a->argv[3];
|
$uid = $a->argv[3];
|
||||||
|
@ -1336,7 +1353,7 @@ function admin_page_users(&$a){
|
||||||
$o .= paginate($a);
|
$o .= paginate($a);
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Plugins admin page
|
* @brief Plugins admin page
|
||||||
|
@ -1354,6 +1371,7 @@ function admin_page_users(&$a){
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_plugins')) {
|
||||||
function admin_page_plugins(&$a){
|
function admin_page_plugins(&$a){
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -1479,17 +1497,19 @@ function admin_page_plugins(&$a){
|
||||||
'$baseurl' => $a->get_baseurl(true),
|
'$baseurl' => $a->get_baseurl(true),
|
||||||
'$function' => 'plugins',
|
'$function' => 'plugins',
|
||||||
'$plugins' => $plugins,
|
'$plugins' => $plugins,
|
||||||
'$pcount' => count($plugins),
|
'$pcount' => count($plugins),
|
||||||
'$noplugshint' => sprintf( t('There are currently no plugins available on your node. You can find the official plugin repository at %1$s and might find other interesting plugins in the open plugin registry at %2$s'), 'https://github.com/friendica/friendica-addons', 'http://addons.friendi.ca'),
|
'$noplugshint' => sprintf( t('There are currently no plugins available on your node. You can find the official plugin repository at %1$s and might find other interesting plugins in the open plugin registry at %2$s'), 'https://github.com/friendica/friendica-addons', 'http://addons.friendi.ca'),
|
||||||
'$form_security_token' => get_form_security_token("admin_themes"),
|
'$form_security_token' => get_form_security_token("admin_themes"),
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param array $themes
|
* @param array $themes
|
||||||
* @param string $th
|
* @param string $th
|
||||||
* @param int $result
|
* @param int $result
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('toggle_theme')) {
|
||||||
function toggle_theme(&$themes,$th,&$result) {
|
function toggle_theme(&$themes,$th,&$result) {
|
||||||
for($x = 0; $x < count($themes); $x ++) {
|
for($x = 0; $x < count($themes); $x ++) {
|
||||||
if($themes[$x]['name'] === $th) {
|
if($themes[$x]['name'] === $th) {
|
||||||
|
@ -1504,12 +1524,14 @@ function toggle_theme(&$themes,$th,&$result) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param array $themes
|
* @param array $themes
|
||||||
* @param string $th
|
* @param string $th
|
||||||
* @return int
|
* @return int
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('theme_status')) {
|
||||||
function theme_status($themes,$th) {
|
function theme_status($themes,$th) {
|
||||||
for($x = 0; $x < count($themes); $x ++) {
|
for($x = 0; $x < count($themes); $x ++) {
|
||||||
if($themes[$x]['name'] === $th) {
|
if($themes[$x]['name'] === $th) {
|
||||||
|
@ -1523,12 +1545,13 @@ function theme_status($themes,$th) {
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param array $themes
|
* @param array $themes
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('rebuild_theme_table')) {
|
||||||
function rebuild_theme_table($themes) {
|
function rebuild_theme_table($themes) {
|
||||||
$o = '';
|
$o = '';
|
||||||
if(count($themes)) {
|
if(count($themes)) {
|
||||||
|
@ -1542,7 +1565,7 @@ function rebuild_theme_table($themes) {
|
||||||
}
|
}
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Themes admin page
|
* @brief Themes admin page
|
||||||
|
@ -1560,6 +1583,7 @@ function rebuild_theme_table($themes) {
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_themes')) {
|
||||||
function admin_page_themes(&$a){
|
function admin_page_themes(&$a){
|
||||||
|
|
||||||
$allowed_themes_str = get_config('system','allowed_themes');
|
$allowed_themes_str = get_config('system','allowed_themes');
|
||||||
|
@ -1734,13 +1758,14 @@ function admin_page_themes(&$a){
|
||||||
'$form_security_token' => get_form_security_token("admin_themes"),
|
'$form_security_token' => get_form_security_token("admin_themes"),
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Prosesses data send by Logs admin page
|
* @brief Prosesses data send by Logs admin page
|
||||||
*
|
*
|
||||||
* @param App $a
|
* @param App $a
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_logs_post')) {
|
||||||
function admin_page_logs_post(&$a) {
|
function admin_page_logs_post(&$a) {
|
||||||
if(x($_POST,"page_logs")) {
|
if(x($_POST,"page_logs")) {
|
||||||
check_form_security_token_redirectOnErr('/admin/logs', 'admin_logs');
|
check_form_security_token_redirectOnErr('/admin/logs', 'admin_logs');
|
||||||
|
@ -1758,6 +1783,7 @@ function admin_page_logs_post(&$a) {
|
||||||
goaway($a->get_baseurl(true) . '/admin/logs' );
|
goaway($a->get_baseurl(true) . '/admin/logs' );
|
||||||
return; // NOTREACHED
|
return; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Generates admin panel subpage for configuration of the logs
|
* @brief Generates admin panel subpage for configuration of the logs
|
||||||
|
@ -1775,6 +1801,7 @@ function admin_page_logs_post(&$a) {
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_logs')) {
|
||||||
function admin_page_logs(&$a){
|
function admin_page_logs(&$a){
|
||||||
|
|
||||||
$log_choices = array(
|
$log_choices = array(
|
||||||
|
@ -1806,6 +1833,7 @@ function admin_page_logs(&$a){
|
||||||
'$phplogcode' => "error_reporting(E_ERROR | E_WARNING | E_PARSE );\nini_set('error_log','php.out');\nini_set('log_errors','1');\nini_set('display_errors', '1');",
|
'$phplogcode' => "error_reporting(E_ERROR | E_WARNING | E_PARSE );\nini_set('error_log','php.out');\nini_set('log_errors','1');\nini_set('display_errors', '1');",
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Generates admin panel subpage to view the Friendica log
|
* @brief Generates admin panel subpage to view the Friendica log
|
||||||
|
@ -1825,6 +1853,7 @@ function admin_page_logs(&$a){
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_viewlogs')) {
|
||||||
function admin_page_viewlogs(&$a){
|
function admin_page_viewlogs(&$a){
|
||||||
$t = get_markup_template("admin_viewlogs.tpl");
|
$t = get_markup_template("admin_viewlogs.tpl");
|
||||||
$f = get_config('system','logfile');
|
$f = get_config('system','logfile');
|
||||||
|
@ -1861,12 +1890,14 @@ function admin_page_viewlogs(&$a){
|
||||||
'$logname' => get_config('system','logfile')
|
'$logname' => get_config('system','logfile')
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Prosesses data send by the features admin page
|
* @brief Prosesses data send by the features admin page
|
||||||
*
|
*
|
||||||
* @param App $a
|
* @param App $a
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_features_post')) {
|
||||||
function admin_page_features_post(&$a) {
|
function admin_page_features_post(&$a) {
|
||||||
|
|
||||||
check_form_security_token_redirectOnErr('/admin/features', 'admin_manage_features');
|
check_form_security_token_redirectOnErr('/admin/features', 'admin_manage_features');
|
||||||
|
@ -1898,23 +1929,25 @@ function admin_page_features_post(&$a) {
|
||||||
goaway($a->get_baseurl(true) . '/admin/features' );
|
goaway($a->get_baseurl(true) . '/admin/features' );
|
||||||
return; // NOTREACHED
|
return; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Subpage for global additional feature management
|
* @brief Subpage for global additional feature management
|
||||||
*
|
*
|
||||||
* This functin generates the subpage 'Manage Additional Features'
|
* This functin generates the subpage 'Manage Additional Features'
|
||||||
* for the admin panel. At this page the admin can set preferences
|
* for the admin panel. At this page the admin can set preferences
|
||||||
* for the user settings of the 'additional features'. If needed this
|
* for the user settings of the 'additional features'. If needed this
|
||||||
* preferences can be locked through the admin.
|
* preferences can be locked through the admin.
|
||||||
*
|
*
|
||||||
* The returned string contains the HTML code of the subpage 'Manage
|
* The returned string contains the HTML code of the subpage 'Manage
|
||||||
* Additional Features'
|
* Additional Features'
|
||||||
*
|
*
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('admin_page_features')) {
|
||||||
function admin_page_features(&$a) {
|
function admin_page_features(&$a) {
|
||||||
|
|
||||||
if((argc() > 1) && (argv(1) === 'features')) {
|
if((argc() > 1) && (argv(1) === 'features')) {
|
||||||
$arr = array();
|
$arr = array();
|
||||||
$features = get_features(false);
|
$features = get_features(false);
|
||||||
|
@ -1933,7 +1966,7 @@ function admin_page_features(&$a) {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$tpl = get_markup_template("admin_settings_features.tpl");
|
$tpl = get_markup_template("admin_settings_features.tpl");
|
||||||
$o .= replace_macros($tpl, array(
|
$o .= replace_macros($tpl, array(
|
||||||
'$form_security_token' => get_form_security_token("admin_manage_features"),
|
'$form_security_token' => get_form_security_token("admin_manage_features"),
|
||||||
|
@ -1945,3 +1978,4 @@ function admin_page_features(&$a) {
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -5,6 +5,7 @@ require_once('include/Contact.php');
|
||||||
require_once('include/contact_selectors.php');
|
require_once('include/contact_selectors.php');
|
||||||
require_once('mod/contacts.php');
|
require_once('mod/contacts.php');
|
||||||
|
|
||||||
|
if(! function_exists('allfriends_content')) {
|
||||||
function allfriends_content(&$a) {
|
function allfriends_content(&$a) {
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
@ -97,3 +98,4 @@ function allfriends_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<?php
|
<?php
|
||||||
|
if(! function_exists('amcd_content')) {
|
||||||
function amcd_content(&$a) {
|
function amcd_content(&$a) {
|
||||||
//header("Content-type: text/json");
|
//header("Content-type: text/json");
|
||||||
echo <<< EOT
|
echo <<< EOT
|
||||||
|
@ -46,4 +46,5 @@ echo <<< EOT
|
||||||
}
|
}
|
||||||
EOT;
|
EOT;
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
11
mod/api.php
11
mod/api.php
|
@ -1,10 +1,8 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
require_once('include/api.php');
|
require_once('include/api.php');
|
||||||
|
|
||||||
|
if(! function_exists('oauth_get_client')) {
|
||||||
function oauth_get_client($request){
|
function oauth_get_client($request){
|
||||||
|
|
||||||
|
|
||||||
$params = $request->get_parameters();
|
$params = $request->get_parameters();
|
||||||
$token = $params['oauth_token'];
|
$token = $params['oauth_token'];
|
||||||
|
|
||||||
|
@ -19,9 +17,10 @@ function oauth_get_client($request){
|
||||||
|
|
||||||
return $r[0];
|
return $r[0];
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('api_post')) {
|
||||||
function api_post(&$a) {
|
function api_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
notice( t('Permission denied.') . EOL);
|
notice( t('Permission denied.') . EOL);
|
||||||
return;
|
return;
|
||||||
|
@ -31,9 +30,10 @@ function api_post(&$a) {
|
||||||
notice( t('Permission denied.') . EOL);
|
notice( t('Permission denied.') . EOL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('api_content')) {
|
||||||
function api_content(&$a) {
|
function api_content(&$a) {
|
||||||
if ($a->cmd=='api/oauth/authorize'){
|
if ($a->cmd=='api/oauth/authorize'){
|
||||||
/*
|
/*
|
||||||
|
@ -114,3 +114,4 @@ function api_content(&$a) {
|
||||||
echo api_call($a);
|
echo api_call($a);
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
40
mod/apps.php
40
mod/apps.php
|
@ -1,25 +1,23 @@
|
||||||
<?php
|
<?php
|
||||||
|
if(! function_exists('apps_content')) {
|
||||||
function apps_content(&$a) {
|
function apps_content(&$a) {
|
||||||
$privateaddons = get_config('config','private_addons');
|
$privateaddons = get_config('config','private_addons');
|
||||||
if ($privateaddons === "1") {
|
if ($privateaddons === "1") {
|
||||||
if((! (local_user()))) {
|
if((! (local_user()))) {
|
||||||
info( t("You must be logged in to use addons. "));
|
info( t("You must be logged in to use addons. "));
|
||||||
return;};
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$title = t('Applications');
|
||||||
|
|
||||||
|
if(count($a->apps)==0)
|
||||||
|
notice( t('No installed applications.') . EOL);
|
||||||
|
|
||||||
|
$tpl = get_markup_template("apps.tpl");
|
||||||
|
return replace_macros($tpl, array(
|
||||||
|
'$title' => $title,
|
||||||
|
'$apps' => $a->apps,
|
||||||
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
$title = t('Applications');
|
|
||||||
|
|
||||||
if(count($a->apps)==0)
|
|
||||||
notice( t('No installed applications.') . EOL);
|
|
||||||
|
|
||||||
|
|
||||||
$tpl = get_markup_template("apps.tpl");
|
|
||||||
return replace_macros($tpl, array(
|
|
||||||
'$title' => $title,
|
|
||||||
'$apps' => $a->apps,
|
|
||||||
));
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
require_once('include/security.php');
|
require_once('include/security.php');
|
||||||
|
|
||||||
|
if(! function_exists('attach_init')) {
|
||||||
function attach_init(&$a) {
|
function attach_init(&$a) {
|
||||||
|
|
||||||
if($a->argc != 2) {
|
if($a->argc != 2) {
|
||||||
|
@ -47,3 +47,4 @@ function attach_init(&$a) {
|
||||||
killme();
|
killme();
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -9,55 +9,56 @@ function visible_lf($s) {
|
||||||
return str_replace("\n",'<br />', $s);
|
return str_replace("\n",'<br />', $s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('babel_content')) {
|
||||||
function babel_content(&$a) {
|
function babel_content(&$a) {
|
||||||
|
|
||||||
$o .= '<h1>Babel Diagnostic</h1>';
|
$o .= '<h1>Babel Diagnostic</h1>';
|
||||||
|
|
||||||
$o .= '<form action="babel" method="post">';
|
$o .= '<form action="babel" method="post">';
|
||||||
$o .= t('Source (bbcode) text:') . EOL . '<textarea name="text" >' . htmlspecialchars($_REQUEST['text']) .'</textarea>' . EOL;
|
$o .= t('Source (bbcode) text:') . EOL . '<textarea name="text" >' . htmlspecialchars($_REQUEST['text']) .'</textarea>' . EOL;
|
||||||
$o .= '<input type="submit" name="submit" value="Submit" /></form>';
|
$o .= '<input type="submit" name="submit" value="Submit" /></form>';
|
||||||
|
|
||||||
$o .= '<br /><br />';
|
$o .= '<br /><br />';
|
||||||
|
|
||||||
$o .= '<form action="babel" method="post">';
|
$o .= '<form action="babel" method="post">';
|
||||||
$o .= t('Source (Diaspora) text to convert to BBcode:') . EOL . '<textarea name="d2bbtext" >' . htmlspecialchars($_REQUEST['d2bbtext']) .'</textarea>' . EOL;
|
$o .= t('Source (Diaspora) text to convert to BBcode:') . EOL . '<textarea name="d2bbtext" >' . htmlspecialchars($_REQUEST['d2bbtext']) .'</textarea>' . EOL;
|
||||||
$o .= '<input type="submit" name="submit" value="Submit" /></form>';
|
$o .= '<input type="submit" name="submit" value="Submit" /></form>';
|
||||||
|
|
||||||
$o .= '<br /><br />';
|
$o .= '<br /><br />';
|
||||||
|
|
||||||
if(x($_REQUEST,'text')) {
|
if(x($_REQUEST,'text')) {
|
||||||
|
|
||||||
$text = trim($_REQUEST['text']);
|
$text = trim($_REQUEST['text']);
|
||||||
$o .= "<h2>" . t("Source input: ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("Source input: ") . "</h2>" . EOL. EOL;
|
||||||
$o .= visible_lf($text) . EOL. EOL;
|
$o .= visible_lf($text) . EOL. EOL;
|
||||||
|
|
||||||
$html = bbcode($text);
|
$html = bbcode($text);
|
||||||
$o .= "<h2>" . t("bb2html (raw HTML): ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("bb2html (raw HTML): ") . "</h2>" . EOL. EOL;
|
||||||
$o .= htmlspecialchars($html). EOL. EOL;
|
$o .= htmlspecialchars($html). EOL. EOL;
|
||||||
|
|
||||||
//$html = bbcode($text);
|
//$html = bbcode($text);
|
||||||
$o .= "<h2>" . t("bb2html: ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("bb2html: ") . "</h2>" . EOL. EOL;
|
||||||
$o .= $html. EOL. EOL;
|
$o .= $html. EOL. EOL;
|
||||||
|
|
||||||
$bbcode = html2bbcode($html);
|
$bbcode = html2bbcode($html);
|
||||||
$o .= "<h2>" . t("bb2html2bb: ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("bb2html2bb: ") . "</h2>" . EOL. EOL;
|
||||||
$o .= visible_lf($bbcode) . EOL. EOL;
|
$o .= visible_lf($bbcode) . EOL. EOL;
|
||||||
|
|
||||||
$diaspora = bb2diaspora($text);
|
$diaspora = bb2diaspora($text);
|
||||||
$o .= "<h2>" . t("bb2md: ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("bb2md: ") . "</h2>" . EOL. EOL;
|
||||||
$o .= visible_lf($diaspora) . EOL. EOL;
|
$o .= visible_lf($diaspora) . EOL. EOL;
|
||||||
|
|
||||||
$html = Markdown($diaspora);
|
$html = Markdown($diaspora);
|
||||||
$o .= "<h2>" . t("bb2md2html: ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("bb2md2html: ") . "</h2>" . EOL. EOL;
|
||||||
$o .= $html. EOL. EOL;
|
$o .= $html. EOL. EOL;
|
||||||
|
|
||||||
$bbcode = diaspora2bb($diaspora);
|
$bbcode = diaspora2bb($diaspora);
|
||||||
$o .= "<h2>" . t("bb2dia2bb: ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("bb2dia2bb: ") . "</h2>" . EOL. EOL;
|
||||||
$o .= visible_lf($bbcode) . EOL. EOL;
|
$o .= visible_lf($bbcode) . EOL. EOL;
|
||||||
|
|
||||||
$bbcode = html2bbcode($html);
|
$bbcode = html2bbcode($html);
|
||||||
$o .= "<h2>" . t("bb2md2html2bb: ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("bb2md2html2bb: ") . "</h2>" . EOL. EOL;
|
||||||
$o .= visible_lf($bbcode) . EOL. EOL;
|
$o .= visible_lf($bbcode) . EOL. EOL;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -66,14 +67,15 @@ function babel_content(&$a) {
|
||||||
if(x($_REQUEST,'d2bbtext')) {
|
if(x($_REQUEST,'d2bbtext')) {
|
||||||
|
|
||||||
$d2bbtext = trim($_REQUEST['d2bbtext']);
|
$d2bbtext = trim($_REQUEST['d2bbtext']);
|
||||||
$o .= "<h2>" . t("Source input (Diaspora format): ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("Source input (Diaspora format): ") . "</h2>" . EOL. EOL;
|
||||||
$o .= visible_lf($d2bbtext) . EOL. EOL;
|
$o .= visible_lf($d2bbtext) . EOL. EOL;
|
||||||
|
|
||||||
|
|
||||||
$bb = diaspora2bb($d2bbtext);
|
$bb = diaspora2bb($d2bbtext);
|
||||||
$o .= "<h2>" . t("diaspora2bb: ") . "</h2>" . EOL. EOL;
|
$o .= "<h2>" . t("diaspora2bb: ") . "</h2>" . EOL. EOL;
|
||||||
$o .= visible_lf($bb) . EOL. EOL;
|
$o .= visible_lf($bb) . EOL. EOL;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,12 +1,14 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
require_once('include/conversation.php');
|
require_once('include/conversation.php');
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
|
|
||||||
|
if(! function_exists('bookmarklet_init')) {
|
||||||
function bookmarklet_init(&$a) {
|
function bookmarklet_init(&$a) {
|
||||||
$_GET["mode"] = "minimal";
|
$_GET["mode"] = "minimal";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('bookmarklet_content')) {
|
||||||
function bookmarklet_content(&$a) {
|
function bookmarklet_content(&$a) {
|
||||||
if(!local_user()) {
|
if(!local_user()) {
|
||||||
$o = '<h2>'.t('Login').'</h2>';
|
$o = '<h2>'.t('Login').'</h2>';
|
||||||
|
@ -44,3 +46,4 @@ function bookmarklet_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
11
mod/cb.php
11
mod/cb.php
|
@ -4,21 +4,28 @@
|
||||||
* General purpose landing page for plugins/addons
|
* General purpose landing page for plugins/addons
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
if(! function_exists('cb_init')) {
|
||||||
function cb_init(&$a) {
|
function cb_init(&$a) {
|
||||||
call_hooks('cb_init');
|
call_hooks('cb_init');
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('cb_post')) {
|
||||||
function cb_post(&$a) {
|
function cb_post(&$a) {
|
||||||
call_hooks('cb_post', $_POST);
|
call_hooks('cb_post', $_POST);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('cb_afterpost')) {
|
||||||
function cb_afterpost(&$a) {
|
function cb_afterpost(&$a) {
|
||||||
call_hooks('cb_afterpost');
|
call_hooks('cb_afterpost');
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('cb_content')) {
|
||||||
function cb_content(&$a) {
|
function cb_content(&$a) {
|
||||||
$o = '';
|
$o = '';
|
||||||
call_hooks('cb_content', $o);
|
call_hooks('cb_content', $o);
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -5,6 +5,7 @@ require_once('include/Contact.php');
|
||||||
require_once('include/contact_selectors.php');
|
require_once('include/contact_selectors.php');
|
||||||
require_once('mod/contacts.php');
|
require_once('mod/contacts.php');
|
||||||
|
|
||||||
|
if(! function_exists('common_content')) {
|
||||||
function common_content(&$a) {
|
function common_content(&$a) {
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
@ -144,3 +145,4 @@ function common_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,15 +1,14 @@
|
||||||
<?php
|
<?php
|
||||||
|
if(! function_exists('community_init')) {
|
||||||
function community_init(&$a) {
|
function community_init(&$a) {
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
unset($_SESSION['theme']);
|
unset($_SESSION['theme']);
|
||||||
unset($_SESSION['mobile-theme']);
|
unset($_SESSION['mobile-theme']);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('community_content')) {
|
||||||
function community_content(&$a, $update = 0) {
|
function community_content(&$a, $update = 0) {
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
@ -115,7 +114,9 @@ function community_content(&$a, $update = 0) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('community_getitems')) {
|
||||||
function community_getitems($start, $itemspage) {
|
function community_getitems($start, $itemspage) {
|
||||||
if (get_config('system','community_page_style') == CP_GLOBAL_COMMUNITY)
|
if (get_config('system','community_page_style') == CP_GLOBAL_COMMUNITY)
|
||||||
return(community_getpublicitems($start, $itemspage));
|
return(community_getpublicitems($start, $itemspage));
|
||||||
|
@ -140,9 +141,10 @@ function community_getitems($start, $itemspage) {
|
||||||
);
|
);
|
||||||
|
|
||||||
return($r);
|
return($r);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('community_getpublicitems')) {
|
||||||
function community_getpublicitems($start, $itemspage) {
|
function community_getpublicitems($start, $itemspage) {
|
||||||
$r = q("SELECT `item`.`uri`, `item`.*, `item`.`id` AS `item_id`,
|
$r = q("SELECT `item`.`uri`, `item`.*, `item`.`id` AS `item_id`,
|
||||||
`author-name` AS `name`, `owner-avatar` AS `photo`,
|
`author-name` AS `name`, `owner-avatar` AS `photo`,
|
||||||
|
@ -157,3 +159,4 @@ function community_getpublicitems($start, $itemspage) {
|
||||||
|
|
||||||
return($r);
|
return($r);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
require_once('include/group.php');
|
require_once('include/group.php');
|
||||||
|
|
||||||
|
if(! function_exists('contactgroup_content')) {
|
||||||
function contactgroup_content(&$a) {
|
function contactgroup_content(&$a) {
|
||||||
|
|
||||||
|
|
||||||
|
@ -47,4 +48,5 @@ function contactgroup_content(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -7,6 +7,7 @@ require_once('include/Scrape.php');
|
||||||
require_once('mod/proxy.php');
|
require_once('mod/proxy.php');
|
||||||
require_once('include/Photo.php');
|
require_once('include/Photo.php');
|
||||||
|
|
||||||
|
if(! function_exists('contacts_init')) {
|
||||||
function contacts_init(&$a) {
|
function contacts_init(&$a) {
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
return;
|
return;
|
||||||
|
@ -38,7 +39,7 @@ function contacts_init(&$a) {
|
||||||
|
|
||||||
if (($a->data['contact']['network'] != "") AND ($a->data['contact']['network'] != NETWORK_DFRN)) {
|
if (($a->data['contact']['network'] != "") AND ($a->data['contact']['network'] != NETWORK_DFRN)) {
|
||||||
$networkname = format_network_name($a->data['contact']['network'],$a->data['contact']['url']);
|
$networkname = format_network_name($a->data['contact']['network'],$a->data['contact']['url']);
|
||||||
} else
|
} else
|
||||||
$networkname = '';
|
$networkname = '';
|
||||||
|
|
||||||
$vcard_widget = replace_macros(get_markup_template("vcard-widget.tpl"),array(
|
$vcard_widget = replace_macros(get_markup_template("vcard-widget.tpl"),array(
|
||||||
|
@ -88,9 +89,10 @@ function contacts_init(&$a) {
|
||||||
'$base' => $base
|
'$base' => $base
|
||||||
));
|
));
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('contacts_batch_actions')) {
|
||||||
function contacts_batch_actions(&$a){
|
function contacts_batch_actions(&$a){
|
||||||
$contacts_id = $_POST['contact_batch'];
|
$contacts_id = $_POST['contact_batch'];
|
||||||
if (!is_array($contacts_id)) return;
|
if (!is_array($contacts_id)) return;
|
||||||
|
@ -132,10 +134,10 @@ function contacts_batch_actions(&$a){
|
||||||
goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']);
|
goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']);
|
||||||
else
|
else
|
||||||
goaway($a->get_baseurl(true) . '/contacts');
|
goaway($a->get_baseurl(true) . '/contacts');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('contacts_post')) {
|
||||||
function contacts_post(&$a) {
|
function contacts_post(&$a) {
|
||||||
|
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
|
@ -215,10 +217,11 @@ function contacts_post(&$a) {
|
||||||
$a->data['contact'] = $r[0];
|
$a->data['contact'] = $r[0];
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*contact actions*/
|
/*contact actions*/
|
||||||
|
if(! function_exists('_contact_update')) {
|
||||||
function _contact_update($contact_id) {
|
function _contact_update($contact_id) {
|
||||||
$r = q("SELECT `uid`, `url`, `network` FROM `contact` WHERE `id` = %d", intval($contact_id));
|
$r = q("SELECT `uid`, `url`, `network` FROM `contact` WHERE `id` = %d", intval($contact_id));
|
||||||
if (!$r)
|
if (!$r)
|
||||||
|
@ -239,7 +242,9 @@ function _contact_update($contact_id) {
|
||||||
// pull feed and consume it, which should subscribe to the hub.
|
// pull feed and consume it, which should subscribe to the hub.
|
||||||
proc_run('php',"include/onepoll.php","$contact_id", "force");
|
proc_run('php',"include/onepoll.php","$contact_id", "force");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('_contact_update_profile')) {
|
||||||
function _contact_update_profile($contact_id) {
|
function _contact_update_profile($contact_id) {
|
||||||
$r = q("SELECT `uid`, `url`, `network` FROM `contact` WHERE `id` = %d", intval($contact_id));
|
$r = q("SELECT `uid`, `url`, `network` FROM `contact` WHERE `id` = %d", intval($contact_id));
|
||||||
if (!$r)
|
if (!$r)
|
||||||
|
@ -299,7 +304,9 @@ function _contact_update_profile($contact_id) {
|
||||||
// Update the entry in the gcontact table
|
// Update the entry in the gcontact table
|
||||||
update_gcontact_from_probe($data["url"]);
|
update_gcontact_from_probe($data["url"]);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('_contact_block')) {
|
||||||
function _contact_block($contact_id, $orig_record) {
|
function _contact_block($contact_id, $orig_record) {
|
||||||
$blocked = (($orig_record['blocked']) ? 0 : 1);
|
$blocked = (($orig_record['blocked']) ? 0 : 1);
|
||||||
$r = q("UPDATE `contact` SET `blocked` = %d WHERE `id` = %d AND `uid` = %d",
|
$r = q("UPDATE `contact` SET `blocked` = %d WHERE `id` = %d AND `uid` = %d",
|
||||||
|
@ -308,8 +315,10 @@ function _contact_block($contact_id, $orig_record) {
|
||||||
intval(local_user())
|
intval(local_user())
|
||||||
);
|
);
|
||||||
return $r;
|
return $r;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('_contact_ignore')) {
|
||||||
function _contact_ignore($contact_id, $orig_record) {
|
function _contact_ignore($contact_id, $orig_record) {
|
||||||
$readonly = (($orig_record['readonly']) ? 0 : 1);
|
$readonly = (($orig_record['readonly']) ? 0 : 1);
|
||||||
$r = q("UPDATE `contact` SET `readonly` = %d WHERE `id` = %d AND `uid` = %d",
|
$r = q("UPDATE `contact` SET `readonly` = %d WHERE `id` = %d AND `uid` = %d",
|
||||||
|
@ -319,6 +328,9 @@ function _contact_ignore($contact_id, $orig_record) {
|
||||||
);
|
);
|
||||||
return $r;
|
return $r;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('_contact_archive')) {
|
||||||
function _contact_archive($contact_id, $orig_record) {
|
function _contact_archive($contact_id, $orig_record) {
|
||||||
$archived = (($orig_record['archive']) ? 0 : 1);
|
$archived = (($orig_record['archive']) ? 0 : 1);
|
||||||
$r = q("UPDATE `contact` SET `archive` = %d WHERE `id` = %d AND `uid` = %d",
|
$r = q("UPDATE `contact` SET `archive` = %d WHERE `id` = %d AND `uid` = %d",
|
||||||
|
@ -331,14 +343,18 @@ function _contact_archive($contact_id, $orig_record) {
|
||||||
}
|
}
|
||||||
return $r;
|
return $r;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('_contact_drop')) {
|
||||||
function _contact_drop($contact_id, $orig_record) {
|
function _contact_drop($contact_id, $orig_record) {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
|
|
||||||
terminate_friendship($a->user,$a->contact,$orig_record);
|
terminate_friendship($a->user,$a->contact,$orig_record);
|
||||||
contact_remove($orig_record['id']);
|
contact_remove($orig_record['id']);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('contacts_content')) {
|
||||||
function contacts_content(&$a) {
|
function contacts_content(&$a) {
|
||||||
|
|
||||||
$sort_type = 0;
|
$sort_type = 0;
|
||||||
|
@ -806,7 +822,9 @@ function contacts_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('contacts_tab')) {
|
||||||
function contacts_tab($a, $contact_id, $active_tab) {
|
function contacts_tab($a, $contact_id, $active_tab) {
|
||||||
// tabs
|
// tabs
|
||||||
$tabs = array(
|
$tabs = array(
|
||||||
|
@ -880,7 +898,9 @@ function contacts_tab($a, $contact_id, $active_tab) {
|
||||||
|
|
||||||
return $tab_str;
|
return $tab_str;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('contact_posts')) {
|
||||||
function contact_posts($a, $contact_id) {
|
function contact_posts($a, $contact_id) {
|
||||||
|
|
||||||
$r = q("SELECT `url` FROM `contact` WHERE `id` = %d", intval($contact_id));
|
$r = q("SELECT `url` FROM `contact` WHERE `id` = %d", intval($contact_id));
|
||||||
|
@ -908,7 +928,9 @@ function contact_posts($a, $contact_id) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('_contact_detail_for_template')) {
|
||||||
function _contact_detail_for_template($rr){
|
function _contact_detail_for_template($rr){
|
||||||
|
|
||||||
$community = '';
|
$community = '';
|
||||||
|
@ -959,7 +981,7 @@ function _contact_detail_for_template($rr){
|
||||||
'url' => $url,
|
'url' => $url,
|
||||||
'network' => network_to_name($rr['network'], $rr['url']),
|
'network' => network_to_name($rr['network'], $rr['url']),
|
||||||
);
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
// fast - e.g. one or two milliseconds to fetch parent items for the current content,
|
// fast - e.g. one or two milliseconds to fetch parent items for the current content,
|
||||||
// and 10-20 milliseconds to fetch all the child items.
|
// and 10-20 milliseconds to fetch all the child items.
|
||||||
|
|
||||||
|
if(! function_exists('content_content')) {
|
||||||
function content_content(&$a, $update = 0) {
|
function content_content(&$a, $update = 0) {
|
||||||
|
|
||||||
require_once('include/conversation.php');
|
require_once('include/conversation.php');
|
||||||
|
@ -61,7 +61,7 @@ function content_content(&$a, $update = 0) {
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$contact_id = $a->cid;
|
$contact_id = $a->cid;
|
||||||
|
|
||||||
|
@ -100,7 +100,7 @@ function content_content(&$a, $update = 0) {
|
||||||
$def_acl = array('allow_cid' => $str);
|
$def_acl = array('allow_cid' => $str);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
$sql_options = (($star) ? " and starred = 1 " : '');
|
$sql_options = (($star) ? " and starred = 1 " : '');
|
||||||
$sql_options .= (($bmark) ? " and bookmark = 1 " : '');
|
$sql_options .= (($bmark) ? " and bookmark = 1 " : '');
|
||||||
|
|
||||||
|
@ -137,7 +137,7 @@ function content_content(&$a, $update = 0) {
|
||||||
}
|
}
|
||||||
elseif($cid) {
|
elseif($cid) {
|
||||||
|
|
||||||
$r = q("SELECT `id`,`name`,`network`,`writable`,`nurl` FROM `contact` WHERE `id` = %d
|
$r = q("SELECT `id`,`name`,`network`,`writable`,`nurl` FROM `contact` WHERE `id` = %d
|
||||||
AND `blocked` = 0 AND `pending` = 0 LIMIT 1",
|
AND `blocked` = 0 AND `pending` = 0 LIMIT 1",
|
||||||
intval($cid)
|
intval($cid)
|
||||||
);
|
);
|
||||||
|
@ -304,9 +304,9 @@ function content_content(&$a, $update = 0) {
|
||||||
echo json_encode($o);
|
echo json_encode($o);
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('render_content')) {
|
||||||
|
|
||||||
function render_content(&$a, $items, $mode, $update, $preview = false) {
|
function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
|
|
||||||
require_once('include/bbcode.php');
|
require_once('include/bbcode.php');
|
||||||
|
@ -373,7 +373,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
|
|
||||||
if($mode === 'network-new' || $mode === 'search' || $mode === 'community') {
|
if($mode === 'network-new' || $mode === 'search' || $mode === 'community') {
|
||||||
|
|
||||||
// "New Item View" on network page or search page results
|
// "New Item View" on network page or search page results
|
||||||
// - just loop through the items and format them minimally for display
|
// - just loop through the items and format them minimally for display
|
||||||
|
|
||||||
//$tpl = get_markup_template('search_item.tpl');
|
//$tpl = get_markup_template('search_item.tpl');
|
||||||
|
@ -389,7 +389,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
$sparkle = '';
|
$sparkle = '';
|
||||||
|
|
||||||
if($mode === 'search' || $mode === 'community') {
|
if($mode === 'search' || $mode === 'community') {
|
||||||
if(((activity_match($item['verb'],ACTIVITY_LIKE)) || (activity_match($item['verb'],ACTIVITY_DISLIKE)))
|
if(((activity_match($item['verb'],ACTIVITY_LIKE)) || (activity_match($item['verb'],ACTIVITY_DISLIKE)))
|
||||||
&& ($item['id'] != $item['parent']))
|
&& ($item['id'] != $item['parent']))
|
||||||
continue;
|
continue;
|
||||||
$nickname = $item['nickname'];
|
$nickname = $item['nickname'];
|
||||||
|
@ -436,7 +436,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
|
|
||||||
$drop = array(
|
$drop = array(
|
||||||
'dropping' => $dropping,
|
'dropping' => $dropping,
|
||||||
'select' => t('Select'),
|
'select' => t('Select'),
|
||||||
'delete' => t('Delete'),
|
'delete' => t('Delete'),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -526,11 +526,11 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
$comments[$item['parent']] = 1;
|
$comments[$item['parent']] = 1;
|
||||||
else
|
else
|
||||||
$comments[$item['parent']] += 1;
|
$comments[$item['parent']] += 1;
|
||||||
} elseif(! x($comments,$item['parent']))
|
} elseif(! x($comments,$item['parent']))
|
||||||
$comments[$item['parent']] = 0; // avoid notices later on
|
$comments[$item['parent']] = 0; // avoid notices later on
|
||||||
}
|
}
|
||||||
|
|
||||||
// map all the like/dislike activities for each parent item
|
// map all the like/dislike activities for each parent item
|
||||||
// Store these in the $alike and $dlike arrays
|
// Store these in the $alike and $dlike arrays
|
||||||
|
|
||||||
foreach($items as $item) {
|
foreach($items as $item) {
|
||||||
|
@ -617,14 +617,14 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
|
|
||||||
$redirect_url = $a->get_baseurl($ssl_state) . '/redir/' . $item['cid'] ;
|
$redirect_url = $a->get_baseurl($ssl_state) . '/redir/' . $item['cid'] ;
|
||||||
|
|
||||||
$lock = ((($item['private'] == 1) || (($item['uid'] == local_user()) && (strlen($item['allow_cid']) || strlen($item['allow_gid'])
|
$lock = ((($item['private'] == 1) || (($item['uid'] == local_user()) && (strlen($item['allow_cid']) || strlen($item['allow_gid'])
|
||||||
|| strlen($item['deny_cid']) || strlen($item['deny_gid']))))
|
|| strlen($item['deny_cid']) || strlen($item['deny_gid']))))
|
||||||
? t('Private Message')
|
? t('Private Message')
|
||||||
: false);
|
: false);
|
||||||
|
|
||||||
|
|
||||||
// Top-level wall post not written by the wall owner (wall-to-wall)
|
// Top-level wall post not written by the wall owner (wall-to-wall)
|
||||||
// First figure out who owns it.
|
// First figure out who owns it.
|
||||||
|
|
||||||
$osparkle = '';
|
$osparkle = '';
|
||||||
|
|
||||||
|
@ -651,13 +651,13 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
if((! $owner_linkmatch) && (! $alias_linkmatch) && (! $owner_namematch)) {
|
if((! $owner_linkmatch) && (! $alias_linkmatch) && (! $owner_namematch)) {
|
||||||
|
|
||||||
// The author url doesn't match the owner (typically the contact)
|
// The author url doesn't match the owner (typically the contact)
|
||||||
// and also doesn't match the contact alias.
|
// and also doesn't match the contact alias.
|
||||||
// The name match is a hack to catch several weird cases where URLs are
|
// The name match is a hack to catch several weird cases where URLs are
|
||||||
// all over the park. It can be tricked, but this prevents you from
|
// all over the park. It can be tricked, but this prevents you from
|
||||||
// seeing "Bob Smith to Bob Smith via Wall-to-wall" and you know darn
|
// seeing "Bob Smith to Bob Smith via Wall-to-wall" and you know darn
|
||||||
// well that it's the same Bob Smith.
|
// well that it's the same Bob Smith.
|
||||||
|
|
||||||
// But it could be somebody else with the same name. It just isn't highly likely.
|
// But it could be somebody else with the same name. It just isn't highly likely.
|
||||||
|
|
||||||
|
|
||||||
$owner_url = $item['owner-link'];
|
$owner_url = $item['owner-link'];
|
||||||
|
@ -666,7 +666,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
$template = $wallwall;
|
$template = $wallwall;
|
||||||
$commentww = 'ww';
|
$commentww = 'ww';
|
||||||
// If it is our contact, use a friendly redirect link
|
// If it is our contact, use a friendly redirect link
|
||||||
if((link_compare($item['owner-link'],$item['url']))
|
if((link_compare($item['owner-link'],$item['url']))
|
||||||
&& ($item['network'] === NETWORK_DFRN)) {
|
&& ($item['network'] === NETWORK_DFRN)) {
|
||||||
$owner_url = $redirect_url;
|
$owner_url = $redirect_url;
|
||||||
$osparkle = ' sparkle';
|
$osparkle = ' sparkle';
|
||||||
|
@ -678,7 +678,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
}
|
}
|
||||||
|
|
||||||
$likebuttons = '';
|
$likebuttons = '';
|
||||||
$shareable = ((($profile_owner == local_user()) && ($item['private'] != 1)) ? true : false);
|
$shareable = ((($profile_owner == local_user()) && ($item['private'] != 1)) ? true : false);
|
||||||
|
|
||||||
if($page_writeable) {
|
if($page_writeable) {
|
||||||
/* if($toplevelpost) { */
|
/* if($toplevelpost) { */
|
||||||
|
@ -698,7 +698,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
|
|
||||||
if(($show_comment_box) || (($show_comment_box == false) && ($override_comment_box == false) && ($item['last-child']))) {
|
if(($show_comment_box) || (($show_comment_box == false) && ($override_comment_box == false) && ($item['last-child']))) {
|
||||||
$comment = replace_macros($cmnt_tpl,array(
|
$comment = replace_macros($cmnt_tpl,array(
|
||||||
'$return_path' => '',
|
'$return_path' => '',
|
||||||
'$jsreload' => (($mode === 'display') ? $_SESSION['return_url'] : ''),
|
'$jsreload' => (($mode === 'display') ? $_SESSION['return_url'] : ''),
|
||||||
'$type' => (($mode === 'profile') ? 'wall-comment' : 'net-comment'),
|
'$type' => (($mode === 'profile') ? 'wall-comment' : 'net-comment'),
|
||||||
'$id' => $item['item_id'],
|
'$id' => $item['item_id'],
|
||||||
|
@ -739,7 +739,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
|
|
||||||
$drop = array(
|
$drop = array(
|
||||||
'dropping' => $dropping,
|
'dropping' => $dropping,
|
||||||
'select' => t('Select'),
|
'select' => t('Select'),
|
||||||
'delete' => t('Delete'),
|
'delete' => t('Delete'),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -805,9 +805,9 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
|
|
||||||
$shiny = "";
|
$shiny = "";
|
||||||
if(strcmp(datetime_convert('UTC','UTC',$item['created']),datetime_convert('UTC','UTC','now - 12 hours')) > 0)
|
if(strcmp(datetime_convert('UTC','UTC',$item['created']),datetime_convert('UTC','UTC','now - 12 hours')) > 0)
|
||||||
$shiny = 'shiny';
|
$shiny = 'shiny';
|
||||||
|
|
||||||
//
|
//
|
||||||
localize_item($item);
|
localize_item($item);
|
||||||
|
|
||||||
|
|
||||||
|
@ -897,5 +897,5 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
|
||||||
|
|
||||||
|
|
||||||
return $threads;
|
return $threads;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
* addons repository will be listed though ATM)
|
* addons repository will be listed though ATM)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
if(! function_exists('credits_content')) {
|
||||||
function credits_content (&$a) {
|
function credits_content (&$a) {
|
||||||
/* fill the page with credits */
|
/* fill the page with credits */
|
||||||
$f = fopen('util/credits.txt','r');
|
$f = fopen('util/credits.txt','r');
|
||||||
|
@ -18,3 +19,4 @@ function credits_content (&$a) {
|
||||||
'$names' => $arr,
|
'$names' => $arr,
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
require_once("include/contact_selectors.php");
|
require_once("include/contact_selectors.php");
|
||||||
require_once("mod/contacts.php");
|
require_once("mod/contacts.php");
|
||||||
|
|
||||||
|
if(! function_exists('crepair_init')) {
|
||||||
function crepair_init(&$a) {
|
function crepair_init(&$a) {
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
return;
|
return;
|
||||||
|
@ -28,8 +29,9 @@ function crepair_init(&$a) {
|
||||||
profile_load($a, "", 0, get_contact_details_by_url($contact["url"]));
|
profile_load($a, "", 0, get_contact_details_by_url($contact["url"]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('crepair_post')) {
|
||||||
function crepair_post(&$a) {
|
function crepair_post(&$a) {
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
return;
|
return;
|
||||||
|
@ -91,9 +93,9 @@ function crepair_post(&$a) {
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('crepair_content')) {
|
||||||
|
|
||||||
function crepair_content(&$a) {
|
function crepair_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -180,5 +182,5 @@ function crepair_content(&$a) {
|
||||||
));
|
));
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
<?php
|
<?php
|
||||||
require_once('mod/settings.php');
|
require_once('mod/settings.php');
|
||||||
|
|
||||||
|
if(! function_exists('delegate_init')) {
|
||||||
function delegate_init(&$a) {
|
function delegate_init(&$a) {
|
||||||
return settings_init($a);
|
return settings_init($a);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('delegate_content')) {
|
||||||
function delegate_content(&$a) {
|
function delegate_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -90,12 +92,12 @@ function delegate_content(&$a) {
|
||||||
|
|
||||||
// find every contact who might be a candidate for delegation
|
// find every contact who might be a candidate for delegation
|
||||||
|
|
||||||
$r = q("select nurl from contact where substring_index(contact.nurl,'/',3) = '%s'
|
$r = q("select nurl from contact where substring_index(contact.nurl,'/',3) = '%s'
|
||||||
and contact.uid = %d and contact.self = 0 and network = '%s' ",
|
and contact.uid = %d and contact.self = 0 and network = '%s' ",
|
||||||
dbesc(normalise_link($a->get_baseurl())),
|
dbesc(normalise_link($a->get_baseurl())),
|
||||||
intval(local_user()),
|
intval(local_user()),
|
||||||
dbesc(NETWORK_DFRN)
|
dbesc(NETWORK_DFRN)
|
||||||
);
|
);
|
||||||
|
|
||||||
if(! count($r)) {
|
if(! count($r)) {
|
||||||
notice( t('No potential page delegates located.') . EOL);
|
notice( t('No potential page delegates located.') . EOL);
|
||||||
|
@ -144,5 +146,5 @@ function delegate_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
|
|
||||||
require_once('include/enotify.php');
|
require_once('include/enotify.php');
|
||||||
|
|
||||||
|
if(! function_exists('dfrn_confirm_post')) {
|
||||||
function dfrn_confirm_post(&$a,$handsfree = null) {
|
function dfrn_confirm_post(&$a,$handsfree = null) {
|
||||||
|
|
||||||
if(is_array($handsfree)) {
|
if(is_array($handsfree)) {
|
||||||
|
@ -801,5 +802,5 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
||||||
|
|
||||||
goaway(z_root());
|
goaway(z_root());
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
|
require_once('include/dfrn.php');
|
||||||
require_once('include/event.php');
|
require_once('include/event.php');
|
||||||
|
|
||||||
require_once('library/defuse/php-encryption-1.2.1/Crypto.php');
|
require_once('library/defuse/php-encryption-1.2.1/Crypto.php');
|
||||||
|
|
||||||
|
if(! function_exists('dfrn_notify_post')) {
|
||||||
function dfrn_notify_post(&$a) {
|
function dfrn_notify_post(&$a) {
|
||||||
logger(__function__, LOGGER_TRACE);
|
logger(__function__, LOGGER_TRACE);
|
||||||
$dfrn_id = ((x($_POST,'dfrn_id')) ? notags(trim($_POST['dfrn_id'])) : '');
|
$dfrn_id = ((x($_POST,'dfrn_id')) ? notags(trim($_POST['dfrn_id'])) : '');
|
||||||
|
@ -208,13 +210,14 @@ function dfrn_notify_post(&$a) {
|
||||||
logger('rino: decrypted data: ' . $data, LOGGER_DATA);
|
logger('rino: decrypted data: ' . $data, LOGGER_DATA);
|
||||||
}
|
}
|
||||||
|
|
||||||
$ret = local_delivery($importer,$data);
|
$ret = dfrn::import($data, $importer);
|
||||||
xml_status($ret);
|
xml_status($ret);
|
||||||
|
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('dfrn_notify_content')) {
|
||||||
function dfrn_notify_content(&$a) {
|
function dfrn_notify_content(&$a) {
|
||||||
|
|
||||||
if(x($_GET,'dfrn_id')) {
|
if(x($_GET,'dfrn_id')) {
|
||||||
|
@ -338,5 +341,5 @@ function dfrn_notify_content(&$a) {
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,7 @@ require_once('include/items.php');
|
||||||
require_once('include/auth.php');
|
require_once('include/auth.php');
|
||||||
require_once('include/dfrn.php');
|
require_once('include/dfrn.php');
|
||||||
|
|
||||||
|
if(! function_exists('dfrn_poll_init')) {
|
||||||
function dfrn_poll_init(&$a) {
|
function dfrn_poll_init(&$a) {
|
||||||
|
|
||||||
|
|
||||||
|
@ -160,7 +160,7 @@ function dfrn_poll_init(&$a) {
|
||||||
|
|
||||||
if($final_dfrn_id != $orig_id) {
|
if($final_dfrn_id != $orig_id) {
|
||||||
logger('profile_check: ' . $final_dfrn_id . ' != ' . $orig_id, LOGGER_DEBUG);
|
logger('profile_check: ' . $final_dfrn_id . ' != ' . $orig_id, LOGGER_DEBUG);
|
||||||
// did not decode properly - cannot trust this site
|
// did not decode properly - cannot trust this site
|
||||||
xml_status(3, 'Bad decryption');
|
xml_status(3, 'Bad decryption');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -195,11 +195,11 @@ function dfrn_poll_init(&$a) {
|
||||||
return; // NOTREACHED
|
return; // NOTREACHED
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if(! function_exists('dfrn_poll_post')) {
|
||||||
function dfrn_poll_post(&$a) {
|
function dfrn_poll_post(&$a) {
|
||||||
|
|
||||||
$dfrn_id = ((x($_POST,'dfrn_id')) ? $_POST['dfrn_id'] : '');
|
$dfrn_id = ((x($_POST,'dfrn_id')) ? $_POST['dfrn_id'] : '');
|
||||||
|
@ -257,7 +257,7 @@ function dfrn_poll_post(&$a) {
|
||||||
|
|
||||||
if($final_dfrn_id != $orig_id) {
|
if($final_dfrn_id != $orig_id) {
|
||||||
logger('profile_check: ' . $final_dfrn_id . ' != ' . $orig_id, LOGGER_DEBUG);
|
logger('profile_check: ' . $final_dfrn_id . ' != ' . $orig_id, LOGGER_DEBUG);
|
||||||
// did not decode properly - cannot trust this site
|
// did not decode properly - cannot trust this site
|
||||||
xml_status(3, 'Bad decryption');
|
xml_status(3, 'Bad decryption');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -377,7 +377,9 @@ function dfrn_poll_post(&$a) {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('dfrn_poll_content')) {
|
||||||
function dfrn_poll_content(&$a) {
|
function dfrn_poll_content(&$a) {
|
||||||
|
|
||||||
$dfrn_id = ((x($_GET,'dfrn_id')) ? $_GET['dfrn_id'] : '');
|
$dfrn_id = ((x($_GET,'dfrn_id')) ? $_GET['dfrn_id'] : '');
|
||||||
|
@ -562,3 +564,4 @@ function dfrn_poll_content(&$a) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<?php
|
<?php
|
||||||
|
if(! function_exists('directory_init')) {
|
||||||
function directory_init(&$a) {
|
function directory_init(&$a) {
|
||||||
$a->set_pager_itemspage(60);
|
$a->set_pager_itemspage(60);
|
||||||
|
|
||||||
|
@ -16,23 +16,23 @@ function directory_init(&$a) {
|
||||||
unset($_SESSION['mobile-theme']);
|
unset($_SESSION['mobile-theme']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('directory_post')) {
|
||||||
function directory_post(&$a) {
|
function directory_post(&$a) {
|
||||||
if(x($_POST,'search'))
|
if(x($_POST,'search'))
|
||||||
$a->data['search'] = $_POST['search'];
|
$a->data['search'] = $_POST['search'];
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('directory_content')) {
|
||||||
|
|
||||||
function directory_content(&$a) {
|
function directory_content(&$a) {
|
||||||
global $db;
|
global $db;
|
||||||
|
|
||||||
require_once("mod/proxy.php");
|
require_once("mod/proxy.php");
|
||||||
|
|
||||||
if((get_config('system','block_public')) && (! local_user()) && (! remote_user()) ||
|
if((get_config('system','block_public')) && (! local_user()) && (! remote_user()) ||
|
||||||
(get_config('system','block_local_dir')) && (! local_user()) && (! remote_user())) {
|
(get_config('system','block_local_dir')) && (! local_user()) && (! remote_user())) {
|
||||||
notice( t('Public access denied.') . EOL);
|
notice( t('Public access denied.') . EOL);
|
||||||
return;
|
return;
|
||||||
|
@ -123,14 +123,14 @@ function directory_content(&$a) {
|
||||||
}
|
}
|
||||||
// if(strlen($rr['dob'])) {
|
// if(strlen($rr['dob'])) {
|
||||||
// if(($years = age($rr['dob'],$rr['timezone'],'')) != 0)
|
// if(($years = age($rr['dob'],$rr['timezone'],'')) != 0)
|
||||||
// $details .= '<br />' . t('Age: ') . $years ;
|
// $details .= '<br />' . t('Age: ') . $years ;
|
||||||
// }
|
// }
|
||||||
// if(strlen($rr['gender']))
|
// if(strlen($rr['gender']))
|
||||||
// $details .= '<br />' . t('Gender: ') . $rr['gender'];
|
// $details .= '<br />' . t('Gender: ') . $rr['gender'];
|
||||||
|
|
||||||
|
|
||||||
// show if account is a community account
|
// show if account is a community account
|
||||||
/// @TODO The other page types should be also respected, but first we need a good
|
/// @TODO The other page types should be also respected, but first we need a good
|
||||||
/// translatiion and systemwide consistency for displaying the page type
|
/// translatiion and systemwide consistency for displaying the page type
|
||||||
if((intval($rr['page-flags']) == PAGE_COMMUNITY) OR (intval($rr['page-flags']) == PAGE_PRVGROUP))
|
if((intval($rr['page-flags']) == PAGE_COMMUNITY) OR (intval($rr['page-flags']) == PAGE_PRVGROUP))
|
||||||
$community = true;
|
$community = true;
|
||||||
|
@ -158,7 +158,7 @@ function directory_content(&$a) {
|
||||||
else {
|
else {
|
||||||
$location_e = $location;
|
$location_e = $location;
|
||||||
}
|
}
|
||||||
|
|
||||||
$photo_menu = array(array(t("View Profile"), zrl($profile_link)));
|
$photo_menu = array(array(t("View Profile"), zrl($profile_link)));
|
||||||
|
|
||||||
$entry = array(
|
$entry = array(
|
||||||
|
@ -217,3 +217,4 @@ function directory_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -5,6 +5,7 @@ require_once('include/Contact.php');
|
||||||
require_once('include/contact_selectors.php');
|
require_once('include/contact_selectors.php');
|
||||||
require_once('mod/contacts.php');
|
require_once('mod/contacts.php');
|
||||||
|
|
||||||
|
if(! function_exists('dirfind_init')) {
|
||||||
function dirfind_init(&$a) {
|
function dirfind_init(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -19,9 +20,9 @@ function dirfind_init(&$a) {
|
||||||
|
|
||||||
$a->page['aside'] .= follow_widget();
|
$a->page['aside'] .= follow_widget();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('dirfind_content')) {
|
||||||
|
|
||||||
function dirfind_content(&$a, $prefix = "") {
|
function dirfind_content(&$a, $prefix = "") {
|
||||||
|
|
||||||
$community = false;
|
$community = false;
|
||||||
|
@ -235,3 +236,4 @@ function dirfind_content(&$a, $prefix = "") {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<?php
|
<?php
|
||||||
|
if(! function_exists('display_init')) {
|
||||||
function display_init(&$a) {
|
function display_init(&$a) {
|
||||||
|
|
||||||
if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) {
|
if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) {
|
||||||
|
@ -85,9 +85,10 @@ function display_init(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
profile_load($a, $nick, 0, $profiledata);
|
profile_load($a, $nick, 0, $profiledata);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('display_fetchauthor')) {
|
||||||
function display_fetchauthor($a, $item) {
|
function display_fetchauthor($a, $item) {
|
||||||
|
|
||||||
$profiledata = array();
|
$profiledata = array();
|
||||||
|
@ -220,7 +221,9 @@ function display_fetchauthor($a, $item) {
|
||||||
|
|
||||||
return($profiledata);
|
return($profiledata);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('display_content')) {
|
||||||
function display_content(&$a, $update = 0) {
|
function display_content(&$a, $update = 0) {
|
||||||
|
|
||||||
if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) {
|
if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) {
|
||||||
|
@ -522,4 +525,4 @@ function display_content(&$a, $update = 0) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
require_once('include/acl_selectors.php');
|
require_once('include/acl_selectors.php');
|
||||||
|
|
||||||
|
if(! function_exists('editpost_content')) {
|
||||||
function editpost_content(&$a) {
|
function editpost_content(&$a) {
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
@ -150,7 +151,5 @@ function editpost_content(&$a) {
|
||||||
));
|
));
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,7 @@ require_once('include/datetime.php');
|
||||||
require_once('include/event.php');
|
require_once('include/event.php');
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
|
|
||||||
|
if(! function_exists('events_post')) {
|
||||||
function events_post(&$a) {
|
function events_post(&$a) {
|
||||||
|
|
||||||
logger('post: ' . print_r($_REQUEST,true));
|
logger('post: ' . print_r($_REQUEST,true));
|
||||||
|
@ -156,9 +157,9 @@ function events_post(&$a) {
|
||||||
|
|
||||||
goaway($_SESSION['return_url']);
|
goaway($_SESSION['return_url']);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('events_content')) {
|
||||||
|
|
||||||
function events_content(&$a) {
|
function events_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -578,3 +579,4 @@ function events_content(&$a) {
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -10,6 +10,7 @@ require_once('include/Photo.php');
|
||||||
/**
|
/**
|
||||||
* @param App $a
|
* @param App $a
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('fbrowser_content')) {
|
||||||
function fbrowser_content($a){
|
function fbrowser_content($a){
|
||||||
|
|
||||||
if (!local_user())
|
if (!local_user())
|
||||||
|
@ -141,5 +142,5 @@ function fbrowser_content($a){
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@ require_once('include/security.php');
|
||||||
require_once('include/bbcode.php');
|
require_once('include/bbcode.php');
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
|
|
||||||
|
if(! function_exists('filer_content')) {
|
||||||
function filer_content(&$a) {
|
function filer_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -30,8 +30,9 @@ function filer_content(&$a) {
|
||||||
'$field' => array('term', t("Save to Folder:"), '', '', $filetags, t('- select -')),
|
'$field' => array('term', t("Save to Folder:"), '', '', $filetags, t('- select -')),
|
||||||
'$submit' => t('Save'),
|
'$submit' => t('Save'),
|
||||||
));
|
));
|
||||||
|
|
||||||
echo $o;
|
echo $o;
|
||||||
}
|
}
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('filerm_content')) {
|
||||||
function filerm_content(&$a) {
|
function filerm_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -25,3 +26,4 @@ function filerm_content(&$a) {
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -5,6 +5,7 @@ require_once('include/follow.php');
|
||||||
require_once('include/Contact.php');
|
require_once('include/Contact.php');
|
||||||
require_once('include/contact_selectors.php');
|
require_once('include/contact_selectors.php');
|
||||||
|
|
||||||
|
if(! function_exists('follow_content')) {
|
||||||
function follow_content(&$a) {
|
function follow_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -148,7 +149,9 @@ function follow_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('follow_post')) {
|
||||||
function follow_post(&$a) {
|
function follow_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -185,3 +188,4 @@ function follow_post(&$a) {
|
||||||
goaway($return_url);
|
goaway($return_url);
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('friendica_init')) {
|
||||||
function friendica_init(&$a) {
|
function friendica_init(&$a) {
|
||||||
if ($a->argv[1]=="json"){
|
if ($a->argv[1]=="json"){
|
||||||
$register_policy = Array('REGISTER_CLOSED', 'REGISTER_APPROVE', 'REGISTER_OPEN');
|
$register_policy = Array('REGISTER_CLOSED', 'REGISTER_APPROVE', 'REGISTER_OPEN');
|
||||||
|
@ -56,9 +57,9 @@ function friendica_init(&$a) {
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('friendica_content')) {
|
||||||
|
|
||||||
function friendica_content(&$a) {
|
function friendica_content(&$a) {
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
@ -70,7 +71,7 @@ function friendica_content(&$a) {
|
||||||
$o .= t('This is Friendica, version') . ' ' . FRIENDICA_VERSION . ' ';
|
$o .= t('This is Friendica, version') . ' ' . FRIENDICA_VERSION . ' ';
|
||||||
$o .= t('running at web location') . ' ' . z_root() . '</p><p>';
|
$o .= t('running at web location') . ' ' . z_root() . '</p><p>';
|
||||||
|
|
||||||
$o .= t('Please visit <a href="http://friendica.com">Friendica.com</a> to learn more about the Friendica project.') . '</p><p>';
|
$o .= t('Please visit <a href="http://friendica.com">Friendica.com</a> to learn more about the Friendica project.') . '</p><p>';
|
||||||
|
|
||||||
$o .= t('Bug reports and issues: please visit') . ' ' . '<a href="https://github.com/friendica/friendica/issues?state=open">'.t('the bugtracker at github').'</a></p><p>';
|
$o .= t('Bug reports and issues: please visit') . ' ' . '<a href="https://github.com/friendica/friendica/issues?state=open">'.t('the bugtracker at github').'</a></p><p>';
|
||||||
$o .= t('Suggestions, praise, donations, etc. - please email "Info" at Friendica - dot com') . '</p>';
|
$o .= t('Suggestions, praise, donations, etc. - please email "Info" at Friendica - dot com') . '</p>';
|
||||||
|
@ -102,8 +103,8 @@ function friendica_content(&$a) {
|
||||||
else
|
else
|
||||||
$o .= '<p>' . t('No installed plugins/addons/apps') . '</p>';
|
$o .= '<p>' . t('No installed plugins/addons/apps') . '</p>';
|
||||||
|
|
||||||
call_hooks('about_hook', $o);
|
call_hooks('about_hook', $o);
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('fsuggest_post')) {
|
||||||
function fsuggest_post(&$a) {
|
function fsuggest_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -39,11 +39,11 @@ function fsuggest_post(&$a) {
|
||||||
VALUES ( %d, %d, '%s','%s','%s','%s','%s','%s')",
|
VALUES ( %d, %d, '%s','%s','%s','%s','%s','%s')",
|
||||||
intval(local_user()),
|
intval(local_user()),
|
||||||
intval($contact_id),
|
intval($contact_id),
|
||||||
dbesc($r[0]['name']),
|
dbesc($r[0]['name']),
|
||||||
dbesc($r[0]['url']),
|
dbesc($r[0]['url']),
|
||||||
dbesc($r[0]['request']),
|
dbesc($r[0]['request']),
|
||||||
dbesc($r[0]['photo']),
|
dbesc($r[0]['photo']),
|
||||||
dbesc($hash),
|
dbesc($hash),
|
||||||
dbesc(datetime_convert())
|
dbesc(datetime_convert())
|
||||||
);
|
);
|
||||||
$r = q("SELECT `id` FROM `fsuggest` WHERE `note` = '%s' AND `uid` = %d LIMIT 1",
|
$r = q("SELECT `id` FROM `fsuggest` WHERE `note` = '%s' AND `uid` = %d LIMIT 1",
|
||||||
|
@ -65,11 +65,11 @@ function fsuggest_post(&$a) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if(! function_exists('fsuggest_content')) {
|
||||||
function fsuggest_content(&$a) {
|
function fsuggest_content(&$a) {
|
||||||
|
|
||||||
require_once('include/acl_selectors.php');
|
require_once('include/acl_selectors.php');
|
||||||
|
@ -100,7 +100,7 @@ function fsuggest_content(&$a) {
|
||||||
|
|
||||||
$o .= '<form id="fsuggest-form" action="fsuggest/' . $contact_id . '" method="post" >';
|
$o .= '<form id="fsuggest-form" action="fsuggest/' . $contact_id . '" method="post" >';
|
||||||
|
|
||||||
$o .= contact_selector('suggest','suggest-select', false,
|
$o .= contact_selector('suggest','suggest-select', false,
|
||||||
array('size' => 4, 'exclude' => $contact_id, 'networks' => 'DFRN_ONLY', 'single' => true));
|
array('size' => 4, 'exclude' => $contact_id, 'networks' => 'DFRN_ONLY', 'single' => true));
|
||||||
|
|
||||||
|
|
||||||
|
@ -109,3 +109,4 @@ function fsuggest_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,18 +1,21 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('validate_members')) {
|
||||||
function validate_members(&$item) {
|
function validate_members(&$item) {
|
||||||
$item = intval($item);
|
$item = intval($item);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('group_init')) {
|
||||||
function group_init(&$a) {
|
function group_init(&$a) {
|
||||||
if(local_user()) {
|
if(local_user()) {
|
||||||
require_once('include/group.php');
|
require_once('include/group.php');
|
||||||
$a->page['aside'] = group_side('contacts','group','extended',(($a->argc > 1) ? intval($a->argv[1]) : 0));
|
$a->page['aside'] = group_side('contacts','group','extended',(($a->argc > 1) ? intval($a->argv[1]) : 0));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('group_post')) {
|
||||||
|
|
||||||
function group_post(&$a) {
|
function group_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -64,7 +67,9 @@ function group_post(&$a) {
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('group_content')) {
|
||||||
function group_content(&$a) {
|
function group_content(&$a) {
|
||||||
$change = false;
|
$change = false;
|
||||||
|
|
||||||
|
@ -229,5 +234,5 @@ function group_content(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
return replace_macros($tpl, $context);
|
return replace_macros($tpl, $context);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('hcard_init')) {
|
||||||
function hcard_init(&$a) {
|
function hcard_init(&$a) {
|
||||||
|
|
||||||
$blocked = (((get_config('system','block_public')) && (! local_user()) && (! remote_user())) ? true : false);
|
$blocked = (((get_config('system','block_public')) && (! local_user()) && (! remote_user())) ? true : false);
|
||||||
|
@ -15,7 +16,7 @@ function hcard_init(&$a) {
|
||||||
$profile = 0;
|
$profile = 0;
|
||||||
if((local_user()) && ($a->argc > 2) && ($a->argv[2] === 'view')) {
|
if((local_user()) && ($a->argc > 2) && ($a->argv[2] === 'view')) {
|
||||||
$which = $a->user['nickname'];
|
$which = $a->user['nickname'];
|
||||||
$profile = $a->argv[1];
|
$profile = $a->argv[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
profile_load($a,$which,$profile);
|
profile_load($a,$which,$profile);
|
||||||
|
@ -23,7 +24,7 @@ function hcard_init(&$a) {
|
||||||
if((x($a->profile,'page-flags')) && ($a->profile['page-flags'] == PAGE_COMMUNITY)) {
|
if((x($a->profile,'page-flags')) && ($a->profile['page-flags'] == PAGE_COMMUNITY)) {
|
||||||
$a->page['htmlhead'] .= '<meta name="friendica.community" content="true" />';
|
$a->page['htmlhead'] .= '<meta name="friendica.community" content="true" />';
|
||||||
}
|
}
|
||||||
if(x($a->profile,'openidserver'))
|
if(x($a->profile,'openidserver'))
|
||||||
$a->page['htmlhead'] .= '<link rel="openid.server" href="' . $a->profile['openidserver'] . '" />' . "\r\n";
|
$a->page['htmlhead'] .= '<link rel="openid.server" href="' . $a->profile['openidserver'] . '" />' . "\r\n";
|
||||||
if(x($a->profile,'openid')) {
|
if(x($a->profile,'openid')) {
|
||||||
$delegate = ((strstr($a->profile['openid'],'://')) ? $a->profile['openid'] : 'http://' . $a->profile['openid']);
|
$delegate = ((strstr($a->profile['openid'],'://')) ? $a->profile['openid'] : 'http://' . $a->profile['openid']);
|
||||||
|
@ -42,10 +43,9 @@ function hcard_init(&$a) {
|
||||||
$uri = urlencode('acct:' . $a->profile['nickname'] . '@' . $a->get_hostname() . (($a->path) ? '/' . $a->path : ''));
|
$uri = urlencode('acct:' . $a->profile['nickname'] . '@' . $a->get_hostname() . (($a->path) ? '/' . $a->path : ''));
|
||||||
$a->page['htmlhead'] .= '<link rel="lrdd" type="application/xrd+xml" href="' . $a->get_baseurl() . '/xrd/?uri=' . $uri . '" />' . "\r\n";
|
$a->page['htmlhead'] .= '<link rel="lrdd" type="application/xrd+xml" href="' . $a->get_baseurl() . '/xrd/?uri=' . $uri . '" />' . "\r\n";
|
||||||
header('Link: <' . $a->get_baseurl() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false);
|
header('Link: <' . $a->get_baseurl() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false);
|
||||||
|
|
||||||
$dfrn_pages = array('request', 'confirm', 'notify', 'poll');
|
$dfrn_pages = array('request', 'confirm', 'notify', 'poll');
|
||||||
foreach($dfrn_pages as $dfrn)
|
foreach($dfrn_pages as $dfrn)
|
||||||
$a->page['htmlhead'] .= "<link rel=\"dfrn-{$dfrn}\" href=\"".$a->get_baseurl()."/dfrn_{$dfrn}/{$which}\" />\r\n";
|
$a->page['htmlhead'] .= "<link rel=\"dfrn-{$dfrn}\" href=\"".$a->get_baseurl()."/dfrn_{$dfrn}/{$which}\" />\r\n";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -18,6 +18,7 @@ if (!function_exists('load_doc_file')) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('help_content')) {
|
||||||
function help_content(&$a) {
|
function help_content(&$a) {
|
||||||
|
|
||||||
nav_set_selected('help');
|
nav_set_selected('help');
|
||||||
|
@ -98,5 +99,5 @@ function help_content(&$a) {
|
||||||
}
|
}
|
||||||
</style>".$html;
|
</style>".$html;
|
||||||
return $html;
|
return $html;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
require_once('include/crypto.php');
|
require_once('include/crypto.php');
|
||||||
|
|
||||||
|
if(! function_exists('hostxrd_init')) {
|
||||||
function hostxrd_init(&$a) {
|
function hostxrd_init(&$a) {
|
||||||
header('Access-Control-Allow-Origin: *');
|
header('Access-Control-Allow-Origin: *');
|
||||||
header("Content-type: text/xml");
|
header("Content-type: text/xml");
|
||||||
|
@ -27,5 +28,5 @@ function hostxrd_init(&$a) {
|
||||||
));
|
));
|
||||||
session_write_close();
|
session_write_close();
|
||||||
exit();
|
exit();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('ignored_init')) {
|
||||||
function ignored_init(&$a) {
|
function ignored_init(&$a) {
|
||||||
|
|
||||||
$ignored = 0;
|
$ignored = 0;
|
||||||
|
@ -43,3 +43,4 @@ function ignored_init(&$a) {
|
||||||
echo json_encode($ignored);
|
echo json_encode($ignored);
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -3,7 +3,7 @@ require_once "include/Photo.php";
|
||||||
|
|
||||||
$install_wizard_pass=1;
|
$install_wizard_pass=1;
|
||||||
|
|
||||||
|
if(! function_exists('install_init')) {
|
||||||
function install_init(&$a){
|
function install_init(&$a){
|
||||||
|
|
||||||
// $baseurl/install/testrwrite to test if rewite in .htaccess is working
|
// $baseurl/install/testrwrite to test if rewite in .htaccess is working
|
||||||
|
@ -11,20 +11,21 @@ function install_init(&$a){
|
||||||
echo "ok";
|
echo "ok";
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
|
||||||
// We overwrite current theme css, because during install we could not have a working mod_rewrite
|
// We overwrite current theme css, because during install we could not have a working mod_rewrite
|
||||||
// so we could not have a css at all. Here we set a static css file for the install procedure pages
|
// so we could not have a css at all. Here we set a static css file for the install procedure pages
|
||||||
$a->config['system']['theme'] = "../install";
|
$a->config['system']['theme'] = "../install";
|
||||||
$a->theme['stylesheet'] = $a->get_baseurl()."/view/install/style.css";
|
$a->theme['stylesheet'] = $a->get_baseurl()."/view/install/style.css";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
global $install_wizard_pass;
|
global $install_wizard_pass;
|
||||||
if (x($_POST,'pass'))
|
if (x($_POST,'pass'))
|
||||||
$install_wizard_pass = intval($_POST['pass']);
|
$install_wizard_pass = intval($_POST['pass']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('install_post')) {
|
||||||
function install_post(&$a) {
|
function install_post(&$a) {
|
||||||
global $install_wizard_pass, $db;
|
global $install_wizard_pass, $db;
|
||||||
|
|
||||||
|
@ -112,14 +113,18 @@ function install_post(&$a) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('get_db_errno')) {
|
||||||
function get_db_errno() {
|
function get_db_errno() {
|
||||||
if(class_exists('mysqli'))
|
if(class_exists('mysqli'))
|
||||||
return mysqli_connect_errno();
|
return mysqli_connect_errno();
|
||||||
else
|
else
|
||||||
return mysql_errno();
|
return mysql_errno();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('install_content')) {
|
||||||
function install_content(&$a) {
|
function install_content(&$a) {
|
||||||
|
|
||||||
global $install_wizard_pass, $db;
|
global $install_wizard_pass, $db;
|
||||||
|
@ -304,6 +309,7 @@ function install_content(&$a) {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* checks : array passed to template
|
* checks : array passed to template
|
||||||
|
@ -312,7 +318,8 @@ function install_content(&$a) {
|
||||||
* required : boolean
|
* required : boolean
|
||||||
* help : string optional
|
* help : string optional
|
||||||
*/
|
*/
|
||||||
function check_add(&$checks, $title, $status, $required, $help){
|
if(! function_exists('check_add')) {
|
||||||
|
function check_add(&$checks, $title, $status, $required, $help) {
|
||||||
$checks[] = array(
|
$checks[] = array(
|
||||||
'title' => $title,
|
'title' => $title,
|
||||||
'status' => $status,
|
'status' => $status,
|
||||||
|
@ -320,7 +327,9 @@ function check_add(&$checks, $title, $status, $required, $help){
|
||||||
'help' => $help,
|
'help' => $help,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('check_php')) {
|
||||||
function check_php(&$phpath, &$checks) {
|
function check_php(&$phpath, &$checks) {
|
||||||
$passed = $passed2 = $passed3 = false;
|
$passed = $passed2 = $passed3 = false;
|
||||||
if (strlen($phpath)){
|
if (strlen($phpath)){
|
||||||
|
@ -370,9 +379,10 @@ function check_php(&$phpath, &$checks) {
|
||||||
check_add($checks, t('PHP register_argc_argv'), $passed3, true, $help);
|
check_add($checks, t('PHP register_argc_argv'), $passed3, true, $help);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('check_keys')) {
|
||||||
function check_keys(&$checks) {
|
function check_keys(&$checks) {
|
||||||
|
|
||||||
$help = '';
|
$help = '';
|
||||||
|
@ -392,10 +402,10 @@ function check_keys(&$checks) {
|
||||||
$help .= t('If running under Windows, please see "http://www.php.net/manual/en/openssl.installation.php".');
|
$help .= t('If running under Windows, please see "http://www.php.net/manual/en/openssl.installation.php".');
|
||||||
}
|
}
|
||||||
check_add($checks, t('Generate encryption keys'), $res, true, $help);
|
check_add($checks, t('Generate encryption keys'), $res, true, $help);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('check_funcs')) {
|
||||||
function check_funcs(&$checks) {
|
function check_funcs(&$checks) {
|
||||||
$ck_funcs = array();
|
$ck_funcs = array();
|
||||||
check_add($ck_funcs, t('libCurl PHP module'), true, true, "");
|
check_add($ck_funcs, t('libCurl PHP module'), true, true, "");
|
||||||
|
@ -457,8 +467,9 @@ function check_funcs(&$checks) {
|
||||||
/*if((x($_SESSION,'sysmsg')) && is_array($_SESSION['sysmsg']) && count($_SESSION['sysmsg']))
|
/*if((x($_SESSION,'sysmsg')) && is_array($_SESSION['sysmsg']) && count($_SESSION['sysmsg']))
|
||||||
notice( t('Please see the file "INSTALL.txt".') . EOL);*/
|
notice( t('Please see the file "INSTALL.txt".') . EOL);*/
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('check_htconfig')) {
|
||||||
function check_htconfig(&$checks) {
|
function check_htconfig(&$checks) {
|
||||||
$status = true;
|
$status = true;
|
||||||
$help = "";
|
$help = "";
|
||||||
|
@ -473,9 +484,10 @@ function check_htconfig(&$checks) {
|
||||||
}
|
}
|
||||||
|
|
||||||
check_add($checks, t('.htconfig.php is writable'), $status, false, $help);
|
check_add($checks, t('.htconfig.php is writable'), $status, false, $help);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('check_smarty3')) {
|
||||||
function check_smarty3(&$checks) {
|
function check_smarty3(&$checks) {
|
||||||
$status = true;
|
$status = true;
|
||||||
$help = "";
|
$help = "";
|
||||||
|
@ -489,9 +501,10 @@ function check_smarty3(&$checks) {
|
||||||
}
|
}
|
||||||
|
|
||||||
check_add($checks, t('view/smarty3 is writable'), $status, true, $help);
|
check_add($checks, t('view/smarty3 is writable'), $status, true, $help);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('check_htaccess')) {
|
||||||
function check_htaccess(&$checks) {
|
function check_htaccess(&$checks) {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
$status = true;
|
$status = true;
|
||||||
|
@ -511,7 +524,9 @@ function check_htaccess(&$checks) {
|
||||||
// cannot check modrewrite if libcurl is not installed
|
// cannot check modrewrite if libcurl is not installed
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('check_imagik')) {
|
||||||
function check_imagik(&$checks) {
|
function check_imagik(&$checks) {
|
||||||
$imagick = false;
|
$imagick = false;
|
||||||
$gif = false;
|
$gif = false;
|
||||||
|
@ -528,16 +543,18 @@ function check_imagik(&$checks) {
|
||||||
check_add($checks, t('ImageMagick supports GIF'), $gif, false, "");
|
check_add($checks, t('ImageMagick supports GIF'), $gif, false, "");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('manual_config')) {
|
||||||
|
|
||||||
function manual_config(&$a) {
|
function manual_config(&$a) {
|
||||||
$data = htmlentities($a->data['txt'],ENT_COMPAT,'UTF-8');
|
$data = htmlentities($a->data['txt'],ENT_COMPAT,'UTF-8');
|
||||||
$o = t('The database configuration file ".htconfig.php" could not be written. Please use the enclosed text to create a configuration file in your web server root.');
|
$o = t('The database configuration file ".htconfig.php" could not be written. Please use the enclosed text to create a configuration file in your web server root.');
|
||||||
$o .= "<textarea rows=\"24\" cols=\"80\" >$data</textarea>";
|
$o .= "<textarea rows=\"24\" cols=\"80\" >$data</textarea>";
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('load_database_rem')) {
|
||||||
function load_database_rem($v, $i){
|
function load_database_rem($v, $i){
|
||||||
$l = trim($i);
|
$l = trim($i);
|
||||||
if (strlen($l)>1 && ($l[0]=="-" || ($l[0]=="/" && $l[1]=="*"))){
|
if (strlen($l)>1 && ($l[0]=="-" || ($l[0]=="/" && $l[1]=="*"))){
|
||||||
|
@ -546,8 +563,9 @@ function load_database_rem($v, $i){
|
||||||
return $v."\n".$i;
|
return $v."\n".$i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('load_database')) {
|
||||||
function load_database($db) {
|
function load_database($db) {
|
||||||
|
|
||||||
require_once("include/dbstructure.php");
|
require_once("include/dbstructure.php");
|
||||||
|
@ -567,7 +585,9 @@ function load_database($db) {
|
||||||
|
|
||||||
return $errors;
|
return $errors;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('what_next')) {
|
||||||
function what_next() {
|
function what_next() {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
$baseurl = $a->get_baseurl();
|
$baseurl = $a->get_baseurl();
|
||||||
|
@ -579,5 +599,4 @@ function what_next() {
|
||||||
.t("Go to your new Friendica node <a href='$baseurl/register'>registration page</a> and register as new user. Remember to use the same email you have entered as administrator email. This will allow you to enter the site admin panel.")
|
.t("Go to your new Friendica node <a href='$baseurl/register'>registration page</a> and register as new user. Remember to use the same email you have entered as administrator email. This will allow you to enter the site admin panel.")
|
||||||
."</p>";
|
."</p>";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
|
|
||||||
require_once('include/email.php');
|
require_once('include/email.php');
|
||||||
|
|
||||||
|
if(! function_exists('invite_post')) {
|
||||||
function invite_post(&$a) {
|
function invite_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -49,7 +50,7 @@ function invite_post(&$a) {
|
||||||
notice( sprintf( t('%s : Not a valid email address.'), $recip) . EOL);
|
notice( sprintf( t('%s : Not a valid email address.'), $recip) . EOL);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($invonly && ($x || is_site_admin())) {
|
if($invonly && ($x || is_site_admin())) {
|
||||||
$code = autoname(8) . srand(1000,9999);
|
$code = autoname(8) . srand(1000,9999);
|
||||||
$nmessage = str_replace('$invite_code',$code,$message);
|
$nmessage = str_replace('$invite_code',$code,$message);
|
||||||
|
@ -70,8 +71,8 @@ function invite_post(&$a) {
|
||||||
else
|
else
|
||||||
$nmessage = $message;
|
$nmessage = $message;
|
||||||
|
|
||||||
$res = mail($recip, email_header_encode( t('Please join us on Friendica'),'UTF-8'),
|
$res = mail($recip, email_header_encode( t('Please join us on Friendica'),'UTF-8'),
|
||||||
$nmessage,
|
$nmessage,
|
||||||
"From: " . $a->user['email'] . "\n"
|
"From: " . $a->user['email'] . "\n"
|
||||||
. 'Content-type: text/plain; charset=UTF-8' . "\n"
|
. 'Content-type: text/plain; charset=UTF-8' . "\n"
|
||||||
. 'Content-transfer-encoding: 8bit' );
|
. 'Content-transfer-encoding: 8bit' );
|
||||||
|
@ -93,8 +94,9 @@ function invite_post(&$a) {
|
||||||
notice( sprintf( tt("%d message sent.", "%d messages sent.", $total) , $total) . EOL);
|
notice( sprintf( tt("%d message sent.", "%d messages sent.", $total) , $total) . EOL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('invite_content')) {
|
||||||
function invite_content(&$a) {
|
function invite_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -134,7 +136,7 @@ function invite_content(&$a) {
|
||||||
'$msg_text' => t('Your message:'),
|
'$msg_text' => t('Your message:'),
|
||||||
'$default_message' => t('You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web.') . "\r\n" . "\r\n"
|
'$default_message' => t('You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web.') . "\r\n" . "\r\n"
|
||||||
. $linktxt
|
. $linktxt
|
||||||
. "\r\n" . "\r\n" . (($invonly) ? t('You will need to supply this invitation code: $invite_code') . "\r\n" . "\r\n" : '') .t('Once you have registered, please connect with me via my profile page at:')
|
. "\r\n" . "\r\n" . (($invonly) ? t('You will need to supply this invitation code: $invite_code') . "\r\n" . "\r\n" : '') .t('Once you have registered, please connect with me via my profile page at:')
|
||||||
. "\r\n" . "\r\n" . $a->get_baseurl() . '/profile/' . $a->user['nickname']
|
. "\r\n" . "\r\n" . $a->get_baseurl() . '/profile/' . $a->user['nickname']
|
||||||
. "\r\n" . "\r\n" . t('For more information about the Friendica project and why we feel it is important, please visit http://friendica.com') . "\r\n" . "\r\n" ,
|
. "\r\n" . "\r\n" . t('For more information about the Friendica project and why we feel it is important, please visit http://friendica.com') . "\r\n" . "\r\n" ,
|
||||||
'$submit' => t('Submit')
|
'$submit' => t('Submit')
|
||||||
|
@ -142,3 +144,4 @@ function invite_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
13
mod/item.php
13
mod/item.php
|
@ -25,6 +25,7 @@ require_once('include/text.php');
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
require_once('include/Scrape.php');
|
require_once('include/Scrape.php');
|
||||||
|
|
||||||
|
if(! function_exists('item_post')) {
|
||||||
function item_post(&$a) {
|
function item_post(&$a) {
|
||||||
|
|
||||||
if((! local_user()) && (! remote_user()) && (! x($_REQUEST,'commenter')))
|
if((! local_user()) && (! remote_user()) && (! x($_REQUEST,'commenter')))
|
||||||
|
@ -1017,7 +1018,9 @@ function item_post(&$a) {
|
||||||
item_post_return($a->get_baseurl(), $api_source, $return_path);
|
item_post_return($a->get_baseurl(), $api_source, $return_path);
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('item_post_return')) {
|
||||||
function item_post_return($baseurl, $api_source, $return_path) {
|
function item_post_return($baseurl, $api_source, $return_path) {
|
||||||
// figure out how to return, depending on from whence we came
|
// figure out how to return, depending on from whence we came
|
||||||
|
|
||||||
|
@ -1037,9 +1040,9 @@ function item_post_return($baseurl, $api_source, $return_path) {
|
||||||
echo json_encode($json);
|
echo json_encode($json);
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('item_content')) {
|
||||||
|
|
||||||
function item_content(&$a) {
|
function item_content(&$a) {
|
||||||
|
|
||||||
if((! local_user()) && (! remote_user()))
|
if((! local_user()) && (! remote_user()))
|
||||||
|
@ -1058,6 +1061,7 @@ function item_content(&$a) {
|
||||||
}
|
}
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function removes the tag $tag from the text $body and replaces it with
|
* This function removes the tag $tag from the text $body and replaces it with
|
||||||
|
@ -1071,6 +1075,7 @@ function item_content(&$a) {
|
||||||
*
|
*
|
||||||
* @return boolean true if replaced, false if not replaced
|
* @return boolean true if replaced, false if not replaced
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('handle_tag')) {
|
||||||
function handle_tag($a, &$body, &$inform, &$str_tags, $profile_uid, $tag, $network = "") {
|
function handle_tag($a, &$body, &$inform, &$str_tags, $profile_uid, $tag, $network = "") {
|
||||||
require_once("include/Scrape.php");
|
require_once("include/Scrape.php");
|
||||||
require_once("include/socgraph.php");
|
require_once("include/socgraph.php");
|
||||||
|
@ -1245,8 +1250,9 @@ function handle_tag($a, &$body, &$inform, &$str_tags, $profile_uid, $tag, $netwo
|
||||||
|
|
||||||
return array('replaced' => $replaced, 'contact' => $r[0]);
|
return array('replaced' => $replaced, 'contact' => $r[0]);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('store_diaspora_comment_sig')) {
|
||||||
function store_diaspora_comment_sig($datarray, $author, $uprvkey, $parent_item, $post_id) {
|
function store_diaspora_comment_sig($datarray, $author, $uprvkey, $parent_item, $post_id) {
|
||||||
// We won't be able to sign Diaspora comments for authenticated visitors - we don't have their private key
|
// We won't be able to sign Diaspora comments for authenticated visitors - we don't have their private key
|
||||||
|
|
||||||
|
@ -1284,3 +1290,4 @@ function store_diaspora_comment_sig($datarray, $author, $uprvkey, $parent_item,
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -5,6 +5,7 @@ require_once('include/bbcode.php');
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
require_once('include/like.php');
|
require_once('include/like.php');
|
||||||
|
|
||||||
|
if(! function_exists('like_content')) {
|
||||||
function like_content(&$a) {
|
function like_content(&$a) {
|
||||||
if(! local_user() && ! remote_user()) {
|
if(! local_user() && ! remote_user()) {
|
||||||
return false;
|
return false;
|
||||||
|
@ -28,11 +29,11 @@ function like_content(&$a) {
|
||||||
killme(); // NOTREACHED
|
killme(); // NOTREACHED
|
||||||
// return; // NOTREACHED
|
// return; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Decide how to return. If we were called with a 'return' argument,
|
// Decide how to return. If we were called with a 'return' argument,
|
||||||
// then redirect back to the calling page. If not, just quietly end
|
// then redirect back to the calling page. If not, just quietly end
|
||||||
|
if(! function_exists('like_content_return')) {
|
||||||
function like_content_return($baseurl, $return_path) {
|
function like_content_return($baseurl, $return_path) {
|
||||||
|
|
||||||
if($return_path) {
|
if($return_path) {
|
||||||
|
@ -45,4 +46,4 @@ function like_content_return($baseurl, $return_path) {
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
require_once('include/datetime.php');
|
require_once('include/datetime.php');
|
||||||
|
|
||||||
|
if(! function_exists('localtime_post')) {
|
||||||
function localtime_post(&$a) {
|
function localtime_post(&$a) {
|
||||||
|
|
||||||
$t = $_REQUEST['time'];
|
$t = $_REQUEST['time'];
|
||||||
|
@ -13,9 +13,10 @@ function localtime_post(&$a) {
|
||||||
|
|
||||||
if($_POST['timezone'])
|
if($_POST['timezone'])
|
||||||
$a->data['mod-localtime'] = datetime_convert('UTC',$_POST['timezone'],$t,$bd_format);
|
$a->data['mod-localtime'] = datetime_convert('UTC',$_POST['timezone'],$t,$bd_format);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('localtime_content')) {
|
||||||
function localtime_content(&$a) {
|
function localtime_content(&$a) {
|
||||||
$t = $_REQUEST['time'];
|
$t = $_REQUEST['time'];
|
||||||
if(! $t)
|
if(! $t)
|
||||||
|
@ -38,12 +39,12 @@ function localtime_content(&$a) {
|
||||||
|
|
||||||
$o .= '<form action ="' . $a->get_baseurl() . '/localtime?f=&time=' . $t . '" method="post" >';
|
$o .= '<form action ="' . $a->get_baseurl() . '/localtime?f=&time=' . $t . '" method="post" >';
|
||||||
|
|
||||||
$o .= '<p>' . t('Please select your timezone:') . '</p>';
|
$o .= '<p>' . t('Please select your timezone:') . '</p>';
|
||||||
|
|
||||||
$o .= select_timezone(($_REQUEST['timezone']) ? $_REQUEST['timezone'] : 'America/Los_Angeles');
|
$o .= select_timezone(($_REQUEST['timezone']) ? $_REQUEST['timezone'] : 'America/Los_Angeles');
|
||||||
|
|
||||||
$o .= '<input type="submit" name="submit" value="' . t('Submit') . '" /></form>';
|
$o .= '<input type="submit" name="submit" value="' . t('Submit') . '" /></form>';
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('lockview_content')) {
|
||||||
function lockview_content(&$a) {
|
function lockview_content(&$a) {
|
||||||
|
|
||||||
$type = (($a->argc > 1) ? $a->argv[1] : 0);
|
$type = (($a->argc > 1) ? $a->argv[1] : 0);
|
||||||
if (is_numeric($type)) {
|
if (is_numeric($type)) {
|
||||||
$item_id = intval($type);
|
$item_id = intval($type);
|
||||||
|
@ -10,13 +10,13 @@ function lockview_content(&$a) {
|
||||||
} else {
|
} else {
|
||||||
$item_id = (($a->argc > 2) ? intval($a->argv[2]) : 0);
|
$item_id = (($a->argc > 2) ? intval($a->argv[2]) : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(! $item_id)
|
if(! $item_id)
|
||||||
killme();
|
killme();
|
||||||
|
|
||||||
if (!in_array($type, array('item','photo','event')))
|
if (!in_array($type, array('item','photo','event')))
|
||||||
killme();
|
killme();
|
||||||
|
|
||||||
$r = q("SELECT * FROM `%s` WHERE `id` = %d LIMIT 1",
|
$r = q("SELECT * FROM `%s` WHERE `id` = %d LIMIT 1",
|
||||||
dbesc($type),
|
dbesc($type),
|
||||||
intval($item_id)
|
intval($item_id)
|
||||||
|
@ -33,7 +33,7 @@ function lockview_content(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(($item['private'] == 1) && (! strlen($item['allow_cid'])) && (! strlen($item['allow_gid']))
|
if(($item['private'] == 1) && (! strlen($item['allow_cid'])) && (! strlen($item['allow_gid']))
|
||||||
&& (! strlen($item['deny_cid'])) && (! strlen($item['deny_gid']))) {
|
&& (! strlen($item['deny_cid'])) && (! strlen($item['deny_gid']))) {
|
||||||
|
|
||||||
echo t('Remote privacy information not available.') . '<br />';
|
echo t('Remote privacy information not available.') . '<br />';
|
||||||
|
@ -53,7 +53,7 @@ function lockview_content(&$a) {
|
||||||
dbesc(implode(', ', $allowed_groups))
|
dbesc(implode(', ', $allowed_groups))
|
||||||
);
|
);
|
||||||
if(count($r))
|
if(count($r))
|
||||||
foreach($r as $rr)
|
foreach($r as $rr)
|
||||||
$l[] = '<b>' . $rr['name'] . '</b>';
|
$l[] = '<b>' . $rr['name'] . '</b>';
|
||||||
}
|
}
|
||||||
if(count($allowed_users)) {
|
if(count($allowed_users)) {
|
||||||
|
@ -61,7 +61,7 @@ function lockview_content(&$a) {
|
||||||
dbesc(implode(', ',$allowed_users))
|
dbesc(implode(', ',$allowed_users))
|
||||||
);
|
);
|
||||||
if(count($r))
|
if(count($r))
|
||||||
foreach($r as $rr)
|
foreach($r as $rr)
|
||||||
$l[] = $rr['name'];
|
$l[] = $rr['name'];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -71,7 +71,7 @@ function lockview_content(&$a) {
|
||||||
dbesc(implode(', ', $deny_groups))
|
dbesc(implode(', ', $deny_groups))
|
||||||
);
|
);
|
||||||
if(count($r))
|
if(count($r))
|
||||||
foreach($r as $rr)
|
foreach($r as $rr)
|
||||||
$l[] = '<b><strike>' . $rr['name'] . '</strike></b>';
|
$l[] = '<b><strike>' . $rr['name'] . '</strike></b>';
|
||||||
}
|
}
|
||||||
if(count($deny_users)) {
|
if(count($deny_users)) {
|
||||||
|
@ -79,12 +79,12 @@ function lockview_content(&$a) {
|
||||||
dbesc(implode(', ',$deny_users))
|
dbesc(implode(', ',$deny_users))
|
||||||
);
|
);
|
||||||
if(count($r))
|
if(count($r))
|
||||||
foreach($r as $rr)
|
foreach($r as $rr)
|
||||||
$l[] = '<strike>' . $rr['name'] . '</strike>';
|
$l[] = '<strike>' . $rr['name'] . '</strike>';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
echo $o . implode(', ', $l);
|
echo $o . implode(', ', $l);
|
||||||
killme();
|
killme();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<?php
|
<?php
|
||||||
|
if(! function_exists('login_content')) {
|
||||||
function login_content(&$a) {
|
function login_content(&$a) {
|
||||||
if(x($_SESSION,'theme'))
|
if(x($_SESSION,'theme'))
|
||||||
unset($_SESSION['theme']);
|
unset($_SESSION['theme']);
|
||||||
|
@ -9,5 +9,5 @@ function login_content(&$a) {
|
||||||
if(local_user())
|
if(local_user())
|
||||||
goaway(z_root());
|
goaway(z_root());
|
||||||
return login(($a->config['register_policy'] == REGISTER_CLOSED) ? false : true);
|
return login(($a->config['register_policy'] == REGISTER_CLOSED) ? false : true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@ require_once('include/email.php');
|
||||||
require_once('include/enotify.php');
|
require_once('include/enotify.php');
|
||||||
require_once('include/text.php');
|
require_once('include/text.php');
|
||||||
|
|
||||||
|
if(! function_exists('lostpass_post')) {
|
||||||
function lostpass_post(&$a) {
|
function lostpass_post(&$a) {
|
||||||
|
|
||||||
$loginame = notags(trim($_POST['login-name']));
|
$loginame = notags(trim($_POST['login-name']));
|
||||||
|
@ -74,10 +75,10 @@ function lostpass_post(&$a) {
|
||||||
'body' => $body));
|
'body' => $body));
|
||||||
|
|
||||||
goaway(z_root());
|
goaway(z_root());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('lostpass_content')) {
|
||||||
function lostpass_content(&$a) {
|
function lostpass_content(&$a) {
|
||||||
|
|
||||||
|
|
||||||
|
@ -164,5 +165,5 @@ function lostpass_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
<?php
|
<?php
|
||||||
|
if(! function_exists('maintenance_content')) {
|
||||||
function maintenance_content(&$a) {
|
function maintenance_content(&$a) {
|
||||||
return replace_macros(get_markup_template('maintenance.tpl'), array(
|
return replace_macros(get_markup_template('maintenance.tpl'), array(
|
||||||
'$sysdown' => t('System down for maintenance')
|
'$sysdown' => t('System down for maintenance')
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
require_once("include/text.php");
|
require_once("include/text.php");
|
||||||
|
|
||||||
|
if(! function_exists('manage_post')) {
|
||||||
function manage_post(&$a) {
|
function manage_post(&$a) {
|
||||||
|
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
|
@ -87,9 +87,9 @@ function manage_post(&$a) {
|
||||||
goaway( $a->get_baseurl() . "/profile/" . $a->user['nickname'] );
|
goaway( $a->get_baseurl() . "/profile/" . $a->user['nickname'] );
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('manage_content')) {
|
||||||
|
|
||||||
function manage_content(&$a) {
|
function manage_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -144,5 +144,5 @@ function manage_content(&$a) {
|
||||||
));
|
));
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,7 @@ require_once('mod/proxy.php');
|
||||||
* @param App &$a
|
* @param App &$a
|
||||||
* @return void|string
|
* @return void|string
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('match_content')) {
|
||||||
function match_content(&$a) {
|
function match_content(&$a) {
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
@ -109,3 +110,4 @@ function match_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
require_once('include/acl_selectors.php');
|
require_once('include/acl_selectors.php');
|
||||||
require_once('include/message.php');
|
require_once('include/message.php');
|
||||||
|
|
||||||
|
if(! function_exists('message_init')) {
|
||||||
function message_init(&$a) {
|
function message_init(&$a) {
|
||||||
|
|
||||||
$tabs = '';
|
$tabs = '';
|
||||||
|
@ -36,9 +37,10 @@ function message_init(&$a) {
|
||||||
'$baseurl' => $a->get_baseurl(true),
|
'$baseurl' => $a->get_baseurl(true),
|
||||||
'$base' => $base
|
'$base' => $base
|
||||||
));
|
));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('message_post')) {
|
||||||
function message_post(&$a) {
|
function message_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -91,7 +93,7 @@ function message_post(&$a) {
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']);
|
goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Note: the code in 'item_extract_images' and 'item_redir_and_replace_images'
|
// Note: the code in 'item_extract_images' and 'item_redir_and_replace_images'
|
||||||
|
@ -171,7 +173,7 @@ function item_redir_and_replace_images($body, $images, $cid) {
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
|
||||||
|
if(! function_exists('message_content')) {
|
||||||
function message_content(&$a) {
|
function message_content(&$a) {
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
@ -530,7 +532,9 @@ function message_content(&$a) {
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('get_messages')) {
|
||||||
function get_messages($user, $lstart, $lend) {
|
function get_messages($user, $lstart, $lend) {
|
||||||
|
|
||||||
return q("SELECT max(`mail`.`created`) AS `mailcreated`, min(`mail`.`seen`) AS `mailseen`,
|
return q("SELECT max(`mail`.`created`) AS `mailcreated`, min(`mail`.`seen`) AS `mailseen`,
|
||||||
|
@ -541,7 +545,9 @@ function get_messages($user, $lstart, $lend) {
|
||||||
intval($user), intval($lstart), intval($lend)
|
intval($user), intval($lstart), intval($lend)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('render_messages')) {
|
||||||
function render_messages($msg, $t) {
|
function render_messages($msg, $t) {
|
||||||
|
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
|
@ -593,3 +599,4 @@ function render_messages($msg, $t) {
|
||||||
|
|
||||||
return $rslt;
|
return $rslt;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
require_once('library/asn1.php');
|
require_once('library/asn1.php');
|
||||||
|
|
||||||
|
if(! function_exists('modexp_init')) {
|
||||||
function modexp_init(&$a) {
|
function modexp_init(&$a) {
|
||||||
|
|
||||||
if($a->argc != 2)
|
if($a->argc != 2)
|
||||||
|
@ -29,6 +30,5 @@ function modexp_init(&$a) {
|
||||||
echo 'RSA' . '.' . $m . '.' . $e ;
|
echo 'RSA' . '.' . $m . '.' . $e ;
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
10
mod/mood.php
10
mod/mood.php
|
@ -4,7 +4,7 @@ require_once('include/security.php');
|
||||||
require_once('include/bbcode.php');
|
require_once('include/bbcode.php');
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
|
|
||||||
|
if(! function_exists('mood_init')) {
|
||||||
function mood_init(&$a) {
|
function mood_init(&$a) {
|
||||||
|
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
|
@ -59,7 +59,7 @@ function mood_init(&$a) {
|
||||||
|
|
||||||
$uri = item_new_uri($a->get_hostname(),$uid);
|
$uri = item_new_uri($a->get_hostname(),$uid);
|
||||||
|
|
||||||
$action = sprintf( t('%1$s is currently %2$s'), '[url=' . $poster['url'] . ']' . $poster['name'] . '[/url]' , $verbs[$verb]);
|
$action = sprintf( t('%1$s is currently %2$s'), '[url=' . $poster['url'] . ']' . $poster['name'] . '[/url]' , $verbs[$verb]);
|
||||||
|
|
||||||
$arr = array();
|
$arr = array();
|
||||||
|
|
||||||
|
@ -105,9 +105,9 @@ function mood_init(&$a) {
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('mood_content')) {
|
||||||
|
|
||||||
function mood_content(&$a) {
|
function mood_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -138,5 +138,5 @@ function mood_content(&$a) {
|
||||||
));
|
));
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('msearch_post')) {
|
||||||
function msearch_post(&$a) {
|
function msearch_post(&$a) {
|
||||||
|
|
||||||
$perpage = (($_POST['n']) ? $_POST['n'] : 80);
|
$perpage = (($_POST['n']) ? $_POST['n'] : 80);
|
||||||
|
@ -26,8 +27,8 @@ function msearch_post(&$a) {
|
||||||
if(count($r)) {
|
if(count($r)) {
|
||||||
foreach($r as $rr)
|
foreach($r as $rr)
|
||||||
$results[] = array(
|
$results[] = array(
|
||||||
'name' => $rr['name'],
|
'name' => $rr['name'],
|
||||||
'url' => $a->get_baseurl() . '/profile/' . $rr['nickname'],
|
'url' => $a->get_baseurl() . '/profile/' . $rr['nickname'],
|
||||||
'photo' => $a->get_baseurl() . '/photo/avatar/' . $rr['uid'] . '.jpg',
|
'photo' => $a->get_baseurl() . '/photo/avatar/' . $rr['uid'] . '.jpg',
|
||||||
'tags' => str_replace(array(',',' '),array(' ',' '),$rr['pub_keywords'])
|
'tags' => str_replace(array(',',' '),array(' ',' '),$rr['pub_keywords'])
|
||||||
);
|
);
|
||||||
|
@ -38,5 +39,5 @@ function msearch_post(&$a) {
|
||||||
echo json_encode($output);
|
echo json_encode($output);
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
require_once("include/nav.php");
|
require_once("include/nav.php");
|
||||||
|
|
||||||
|
if(! function_exists('navigation_content')) {
|
||||||
function navigation_content(&$a) {
|
function navigation_content(&$a) {
|
||||||
|
|
||||||
$nav_info = nav_info($a);
|
$nav_info = nav_info($a);
|
||||||
|
@ -22,5 +23,5 @@ function navigation_content(&$a) {
|
||||||
'$apps' => $a->apps,
|
'$apps' => $a->apps,
|
||||||
'$clear_notifs' => t('Clear notifications')
|
'$clear_notifs' => t('Clear notifications')
|
||||||
));
|
));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('network_init')) {
|
||||||
function network_init(&$a) {
|
function network_init(&$a) {
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
notice( t('Permission denied.') . EOL);
|
notice( t('Permission denied.') . EOL);
|
||||||
|
@ -114,7 +116,7 @@ function network_init(&$a) {
|
||||||
require_once('include/group.php');
|
require_once('include/group.php');
|
||||||
require_once('include/contact_widgets.php');
|
require_once('include/contact_widgets.php');
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
require_once('include/forums.php');
|
require_once('include/ForumManager.php');
|
||||||
|
|
||||||
if(! x($a->page,'aside'))
|
if(! x($a->page,'aside'))
|
||||||
$a->page['aside'] = '';
|
$a->page['aside'] = '';
|
||||||
|
@ -148,14 +150,15 @@ function network_init(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
$a->page['aside'] .= (feature_enabled(local_user(),'groups') ? group_side('network/0','network','standard',$group_id) : '');
|
$a->page['aside'] .= (feature_enabled(local_user(),'groups') ? group_side('network/0','network','standard',$group_id) : '');
|
||||||
$a->page['aside'] .= (feature_enabled(local_user(),'forumlist_widget') ? widget_forumlist(local_user(),$cid) : '');
|
$a->page['aside'] .= (feature_enabled(local_user(),'forumlist_widget') ? ForumManager::widget(local_user(),$cid) : '');
|
||||||
$a->page['aside'] .= posted_date_widget($a->get_baseurl() . '/network',local_user(),false);
|
$a->page['aside'] .= posted_date_widget($a->get_baseurl() . '/network',local_user(),false);
|
||||||
$a->page['aside'] .= networks_widget($a->get_baseurl(true) . '/network',(x($_GET, 'nets') ? $_GET['nets'] : ''));
|
$a->page['aside'] .= networks_widget($a->get_baseurl(true) . '/network',(x($_GET, 'nets') ? $_GET['nets'] : ''));
|
||||||
$a->page['aside'] .= saved_searches($search);
|
$a->page['aside'] .= saved_searches($search);
|
||||||
$a->page['aside'] .= fileas_widget($a->get_baseurl(true) . '/network',(x($_GET, 'file') ? $_GET['file'] : ''));
|
$a->page['aside'] .= fileas_widget($a->get_baseurl(true) . '/network',(x($_GET, 'file') ? $_GET['file'] : ''));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('saved_searches')) {
|
||||||
function saved_searches($search) {
|
function saved_searches($search) {
|
||||||
|
|
||||||
if(! feature_enabled(local_user(),'savedsearch'))
|
if(! feature_enabled(local_user(),'savedsearch'))
|
||||||
|
@ -204,7 +207,7 @@ function saved_searches($search) {
|
||||||
));
|
));
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -222,6 +225,7 @@ function saved_searches($search) {
|
||||||
*
|
*
|
||||||
* @return Array ( $no_active, $comment_active, $postord_active, $conv_active, $new_active, $starred_active, $bookmarked_active, $spam_active );
|
* @return Array ( $no_active, $comment_active, $postord_active, $conv_active, $new_active, $starred_active, $bookmarked_active, $spam_active );
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('network_query_get_sel_tab')) {
|
||||||
function network_query_get_sel_tab($a) {
|
function network_query_get_sel_tab($a) {
|
||||||
$no_active='';
|
$no_active='';
|
||||||
$starred_active = '';
|
$starred_active = '';
|
||||||
|
@ -278,10 +282,12 @@ function network_query_get_sel_tab($a) {
|
||||||
|
|
||||||
return array($no_active, $all_active, $postord_active, $conv_active, $new_active, $starred_active, $bookmarked_active, $spam_active);
|
return array($no_active, $all_active, $postord_active, $conv_active, $new_active, $starred_active, $bookmarked_active, $spam_active);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return selected network from query
|
* Return selected network from query
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('network_query_get_sel_net')) {
|
||||||
function network_query_get_sel_net() {
|
function network_query_get_sel_net() {
|
||||||
$network = false;
|
$network = false;
|
||||||
|
|
||||||
|
@ -291,7 +297,9 @@ function network_query_get_sel_net() {
|
||||||
|
|
||||||
return $network;
|
return $network;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('network_query_get_sel_group')) {
|
||||||
function network_query_get_sel_group($a) {
|
function network_query_get_sel_group($a) {
|
||||||
$group = false;
|
$group = false;
|
||||||
|
|
||||||
|
@ -301,8 +309,9 @@ function network_query_get_sel_group($a) {
|
||||||
|
|
||||||
return $group;
|
return $group;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('network_content')) {
|
||||||
function network_content(&$a, $update = 0) {
|
function network_content(&$a, $update = 0) {
|
||||||
|
|
||||||
require_once('include/conversation.php');
|
require_once('include/conversation.php');
|
||||||
|
@ -886,4 +895,4 @@ function network_content(&$a, $update = 0) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('newmember_content')) {
|
||||||
function newmember_content(&$a) {
|
function newmember_content(&$a) {
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,7 +16,7 @@ function newmember_content(&$a) {
|
||||||
|
|
||||||
$o .= '<ul>';
|
$o .= '<ul>';
|
||||||
|
|
||||||
$o .= '<li> ' . '<a target="newmember" href="help/guide">' . t('Friendica Walk-Through') . '</a><br />' . t('On your <em>Quick Start</em> page - find a brief introduction to your profile and network tabs, make some new connections, and find some groups to join.') . '</li>' . EOL;
|
$o .= '<li> ' . '<a target="newmember" href="help/guide">' . t('Friendica Walk-Through') . '</a><br />' . t('On your <em>Quick Start</em> page - find a brief introduction to your profile and network tabs, make some new connections, and find some groups to join.') . '</li>' . EOL;
|
||||||
|
|
||||||
$o .= '</ul>';
|
$o .= '</ul>';
|
||||||
|
|
||||||
|
@ -23,7 +24,7 @@ function newmember_content(&$a) {
|
||||||
|
|
||||||
$o .= '<ul>';
|
$o .= '<ul>';
|
||||||
|
|
||||||
$o .= '<li>' . '<a target="newmember" href="settings">' . t('Go to Your Settings') . '</a><br />' . t('On your <em>Settings</em> page - change your initial password. Also make a note of your Identity Address. This looks just like an email address - and will be useful in making friends on the free social web.') . '</li>' . EOL;
|
$o .= '<li>' . '<a target="newmember" href="settings">' . t('Go to Your Settings') . '</a><br />' . t('On your <em>Settings</em> page - change your initial password. Also make a note of your Identity Address. This looks just like an email address - and will be useful in making friends on the free social web.') . '</li>' . EOL;
|
||||||
|
|
||||||
$o .= '<li>' . t('Review the other settings, particularly the privacy settings. An unpublished directory listing is like having an unlisted phone number. In general, you should probably publish your listing - unless all of your friends and potential friends know exactly how to find you.') . '</li>' . EOL;
|
$o .= '<li>' . t('Review the other settings, particularly the privacy settings. An unpublished directory listing is like having an unlisted phone number. In general, you should probably publish your listing - unless all of your friends and potential friends know exactly how to find you.') . '</li>' . EOL;
|
||||||
|
|
||||||
|
@ -33,7 +34,7 @@ function newmember_content(&$a) {
|
||||||
|
|
||||||
$o .= '<ul>';
|
$o .= '<ul>';
|
||||||
|
|
||||||
$o .= '<li>' . '<a target="newmember" href="profile_photo">' . t('Upload Profile Photo') . '</a><br />' . t('Upload a profile photo if you have not done so already. Studies have shown that people with real photos of themselves are ten times more likely to make friends than people who do not.') . '</li>' . EOL;
|
$o .= '<li>' . '<a target="newmember" href="profile_photo">' . t('Upload Profile Photo') . '</a><br />' . t('Upload a profile photo if you have not done so already. Studies have shown that people with real photos of themselves are ten times more likely to make friends than people who do not.') . '</li>' . EOL;
|
||||||
|
|
||||||
$o .= '<li>' . '<a target="newmember" href="profiles">' . t('Edit Your Profile') . '</a><br />' . t('Edit your <strong>default</strong> profile to your liking. Review the settings for hiding your list of friends and hiding the profile from unknown visitors.') . '</li>' . EOL;
|
$o .= '<li>' . '<a target="newmember" href="profiles">' . t('Edit Your Profile') . '</a><br />' . t('Edit your <strong>default</strong> profile to your liking. Review the settings for hiding your list of friends and hiding the profile from unknown visitors.') . '</li>' . EOL;
|
||||||
|
|
||||||
|
@ -46,7 +47,7 @@ function newmember_content(&$a) {
|
||||||
$o .= '<ul>';
|
$o .= '<ul>';
|
||||||
|
|
||||||
$mail_disabled = ((function_exists('imap_open') && (! get_config('system','imap_disabled'))) ? 0 : 1);
|
$mail_disabled = ((function_exists('imap_open') && (! get_config('system','imap_disabled'))) ? 0 : 1);
|
||||||
|
|
||||||
if(! $mail_disabled)
|
if(! $mail_disabled)
|
||||||
$o .= '<li>' . '<a target="newmember" href="settings/connectors">' . t('Importing Emails') . '</a><br />' . t('Enter your email access information on your Connector Settings page if you wish to import and interact with friends or mailing lists from your email INBOX') . '</li>' . EOL;
|
$o .= '<li>' . '<a target="newmember" href="settings/connectors">' . t('Importing Emails') . '</a><br />' . t('Enter your email access information on your Connector Settings page if you wish to import and interact with friends or mailing lists from your email INBOX') . '</li>' . EOL;
|
||||||
|
|
||||||
|
@ -82,3 +83,4 @@ function newmember_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* @file mod/nodeinfo.php
|
* @file mod/nodeinfo.php
|
||||||
*
|
*
|
||||||
* Documentation: http://nodeinfo.diaspora.software/schema.html
|
* Documentation: http://nodeinfo.diaspora.software/schema.html
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once("include/plugin.php");
|
require_once("include/plugin.php");
|
||||||
|
|
||||||
|
if(! function_exists('nodeinfo_wellknown')) {
|
||||||
function nodeinfo_wellknown(&$a) {
|
function nodeinfo_wellknown(&$a) {
|
||||||
if (!get_config("system", "nodeinfo")) {
|
if (!get_config("system", "nodeinfo")) {
|
||||||
http_status_exit(404);
|
http_status_exit(404);
|
||||||
|
@ -19,7 +20,9 @@ function nodeinfo_wellknown(&$a) {
|
||||||
echo json_encode($nodeinfo, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
|
echo json_encode($nodeinfo, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('nodeinfo_init')) {
|
||||||
function nodeinfo_init(&$a){
|
function nodeinfo_init(&$a){
|
||||||
if (!get_config("system", "nodeinfo")) {
|
if (!get_config("system", "nodeinfo")) {
|
||||||
http_status_exit(404);
|
http_status_exit(404);
|
||||||
|
@ -143,9 +146,9 @@ function nodeinfo_init(&$a){
|
||||||
echo json_encode($nodeinfo, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
|
echo json_encode($nodeinfo, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('nodeinfo_cron')) {
|
||||||
|
|
||||||
function nodeinfo_cron() {
|
function nodeinfo_cron() {
|
||||||
|
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
|
@ -260,5 +263,5 @@ function nodeinfo_cron() {
|
||||||
logger("cron_end");
|
logger("cron_end");
|
||||||
set_config('nodeinfo','last_calucation', time());
|
set_config('nodeinfo','last_calucation', time());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -4,6 +4,7 @@ require_once('include/Contact.php');
|
||||||
require_once('include/socgraph.php');
|
require_once('include/socgraph.php');
|
||||||
require_once('include/contact_selectors.php');
|
require_once('include/contact_selectors.php');
|
||||||
|
|
||||||
|
if(! function_exists('nogroup_init')) {
|
||||||
function nogroup_init(&$a) {
|
function nogroup_init(&$a) {
|
||||||
|
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
|
@ -17,8 +18,9 @@ function nogroup_init(&$a) {
|
||||||
|
|
||||||
$a->page['aside'] .= group_side('contacts','group','extended',0,$contact_id);
|
$a->page['aside'] .= group_side('contacts','group','extended',0,$contact_id);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('nogroup_content')) {
|
||||||
function nogroup_content(&$a) {
|
function nogroup_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -66,5 +68,5 @@ function nogroup_content(&$a) {
|
||||||
));
|
));
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('noscrape_init')) {
|
||||||
function noscrape_init(&$a) {
|
function noscrape_init(&$a) {
|
||||||
|
|
||||||
if($a->argc > 1)
|
if($a->argc > 1)
|
||||||
|
@ -62,5 +63,5 @@ function noscrape_init(&$a) {
|
||||||
header('Content-type: application/json; charset=utf-8');
|
header('Content-type: application/json; charset=utf-8');
|
||||||
echo json_encode($json_info);
|
echo json_encode($json_info);
|
||||||
exit;
|
exit;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('notes_init')) {
|
||||||
function notes_init(&$a) {
|
function notes_init(&$a) {
|
||||||
|
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
|
@ -12,10 +13,10 @@ function notes_init(&$a) {
|
||||||
nav_set_selected('home');
|
nav_set_selected('home');
|
||||||
|
|
||||||
// profile_load($a,$which,$profile);
|
// profile_load($a,$which,$profile);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('notes_content')) {
|
||||||
function notes_content(&$a,$update = false) {
|
function notes_content(&$a,$update = false) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -69,12 +70,12 @@ function notes_content(&$a,$update = false) {
|
||||||
// Construct permissions
|
// Construct permissions
|
||||||
|
|
||||||
// default permissions - anonymous user
|
// default permissions - anonymous user
|
||||||
|
|
||||||
$sql_extra = " AND `allow_cid` = '<" . $a->contact['id'] . ">' ";
|
$sql_extra = " AND `allow_cid` = '<" . $a->contact['id'] . ">' ";
|
||||||
|
|
||||||
$r = q("SELECT COUNT(*) AS `total`
|
$r = q("SELECT COUNT(*) AS `total`
|
||||||
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
|
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
|
||||||
WHERE `item`.`uid` = %d AND `item`.`visible` = 1 and `item`.`moderated` = 0
|
WHERE `item`.`uid` = %d AND `item`.`visible` = 1 and `item`.`moderated` = 0
|
||||||
AND `item`.`deleted` = 0 AND `item`.`type` = 'note'
|
AND `item`.`deleted` = 0 AND `item`.`type` = 'note'
|
||||||
AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self` = 1
|
AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self` = 1
|
||||||
AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 0
|
AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 0
|
||||||
|
@ -90,7 +91,7 @@ function notes_content(&$a,$update = false) {
|
||||||
|
|
||||||
$r = q("SELECT `item`.`id` AS `item_id`, `contact`.`uid` AS `contact-uid`
|
$r = q("SELECT `item`.`id` AS `item_id`, `contact`.`uid` AS `contact-uid`
|
||||||
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
|
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
|
||||||
WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
|
WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
|
||||||
and `item`.`moderated` = 0 AND `item`.`type` = 'note'
|
and `item`.`moderated` = 0 AND `item`.`type` = 'note'
|
||||||
AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self` = 1
|
AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self` = 1
|
||||||
AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 0
|
AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 0
|
||||||
|
@ -109,10 +110,10 @@ function notes_content(&$a,$update = false) {
|
||||||
foreach($r as $rr)
|
foreach($r as $rr)
|
||||||
$parents_arr[] = $rr['item_id'];
|
$parents_arr[] = $rr['item_id'];
|
||||||
$parents_str = implode(', ', $parents_arr);
|
$parents_str = implode(', ', $parents_arr);
|
||||||
|
|
||||||
$r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
|
$r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
|
||||||
`contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`alias`, `contact`.`network`, `contact`.`rel`,
|
`contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`alias`, `contact`.`network`, `contact`.`rel`,
|
||||||
`contact`.`thumb`, `contact`.`self`, `contact`.`writable`,
|
`contact`.`thumb`, `contact`.`self`, `contact`.`writable`,
|
||||||
`contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`
|
`contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`
|
||||||
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
|
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
|
||||||
WHERE `item`.`uid` = %d AND `item`.`visible` = 1 and `item`.`moderated` = 0 AND `item`.`deleted` = 0
|
WHERE `item`.`uid` = %d AND `item`.`visible` = 1 and `item`.`moderated` = 0 AND `item`.`deleted` = 0
|
||||||
|
@ -135,3 +136,4 @@ function notes_content(&$a,$update = false) {
|
||||||
$o .= paginate($a);
|
$o .= paginate($a);
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
<?php
|
<?php
|
||||||
/* identi.ca -> friendica items permanent-url compatibility */
|
/* identi.ca -> friendica items permanent-url compatibility */
|
||||||
|
|
||||||
function notice_init(&$a){
|
if(! function_exists('notice_init')) {
|
||||||
|
function notice_init(&$a) {
|
||||||
$id = $a->argv[1];
|
$id = $a->argv[1];
|
||||||
$r = q("SELECT user.nickname FROM user LEFT JOIN item ON item.uid=user.uid WHERE item.id=%d",
|
$r = q("SELECT user.nickname FROM user LEFT JOIN item ON item.uid=user.uid WHERE item.id=%d",
|
||||||
intval($id)
|
intval($id)
|
||||||
|
@ -16,5 +17,5 @@
|
||||||
|
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@ include_once("include/bbcode.php");
|
||||||
include_once("include/contact_selectors.php");
|
include_once("include/contact_selectors.php");
|
||||||
include_once("include/Scrape.php");
|
include_once("include/Scrape.php");
|
||||||
|
|
||||||
|
if(! function_exists('notifications_post')) {
|
||||||
function notifications_post(&$a) {
|
function notifications_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -58,11 +59,11 @@ function notifications_post(&$a) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if(! function_exists('notifications_content')) {
|
||||||
|
|
||||||
function notifications_content(&$a) {
|
function notifications_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -579,3 +580,4 @@ function notifications_content(&$a) {
|
||||||
$o .= paginate($a);
|
$o .= paginate($a);
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('notify_init')) {
|
||||||
function notify_init(&$a) {
|
function notify_init(&$a) {
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
return;
|
return;
|
||||||
|
@ -42,10 +42,10 @@ function notify_init(&$a) {
|
||||||
echo $j;
|
echo $j;
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('notify_content')) {
|
||||||
function notify_content(&$a) {
|
function notify_content(&$a) {
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
return login();
|
return login();
|
||||||
|
@ -80,5 +80,5 @@ function notify_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
<?php
|
<?php
|
||||||
require_once("include/oembed.php");
|
require_once("include/oembed.php");
|
||||||
|
|
||||||
function oembed_content(&$a){
|
if(! function_exists('oembed_content')) {
|
||||||
|
function oembed_content(&$a) {
|
||||||
// logger('mod_oembed ' . $a->query_string, LOGGER_ALL);
|
// logger('mod_oembed ' . $a->query_string, LOGGER_ALL);
|
||||||
|
|
||||||
if ($a->argv[1]=='b2h'){
|
if ($a->argv[1]=='b2h'){
|
||||||
|
@ -33,3 +34,4 @@ function oembed_content(&$a){
|
||||||
}
|
}
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('oexchange_init')) {
|
||||||
function oexchange_init(&$a) {
|
function oexchange_init(&$a) {
|
||||||
|
|
||||||
if(($a->argc > 1) && ($a->argv[1] === 'xrd')) {
|
if(($a->argc > 1) && ($a->argv[1] === 'xrd')) {
|
||||||
|
@ -11,9 +11,10 @@ function oexchange_init(&$a) {
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('oexchange_content')) {
|
||||||
function oexchange_content(&$a) {
|
function oexchange_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -26,13 +27,13 @@ function oexchange_content(&$a) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$url = (((x($_REQUEST,'url')) && strlen($_REQUEST['url']))
|
$url = (((x($_REQUEST,'url')) && strlen($_REQUEST['url']))
|
||||||
? urlencode(notags(trim($_REQUEST['url']))) : '');
|
? urlencode(notags(trim($_REQUEST['url']))) : '');
|
||||||
$title = (((x($_REQUEST,'title')) && strlen($_REQUEST['title']))
|
$title = (((x($_REQUEST,'title')) && strlen($_REQUEST['title']))
|
||||||
? '&title=' . urlencode(notags(trim($_REQUEST['title']))) : '');
|
? '&title=' . urlencode(notags(trim($_REQUEST['title']))) : '');
|
||||||
$description = (((x($_REQUEST,'description')) && strlen($_REQUEST['description']))
|
$description = (((x($_REQUEST,'description')) && strlen($_REQUEST['description']))
|
||||||
? '&description=' . urlencode(notags(trim($_REQUEST['description']))) : '');
|
? '&description=' . urlencode(notags(trim($_REQUEST['description']))) : '');
|
||||||
$tags = (((x($_REQUEST,'tags')) && strlen($_REQUEST['tags']))
|
$tags = (((x($_REQUEST,'tags')) && strlen($_REQUEST['tags']))
|
||||||
? '&tags=' . urlencode(notags(trim($_REQUEST['tags']))) : '');
|
? '&tags=' . urlencode(notags(trim($_REQUEST['tags']))) : '');
|
||||||
|
|
||||||
$s = fetch_url($a->get_baseurl() . '/parse_url?f=&url=' . $url . $title . $description . $tags);
|
$s = fetch_url($a->get_baseurl() . '/parse_url?f=&url=' . $url . $title . $description . $tags);
|
||||||
|
@ -52,7 +53,5 @@ function oexchange_content(&$a) {
|
||||||
$_REQUEST = $post;
|
$_REQUEST = $post;
|
||||||
require_once('mod/item.php');
|
require_once('mod/item.php');
|
||||||
item_post($a);
|
item_post($a);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
|
||||||
require_once('library/openid.php');
|
require_once('library/openid.php');
|
||||||
|
|
||||||
|
if(! function_exists('openid_content')) {
|
||||||
function openid_content(&$a) {
|
function openid_content(&$a) {
|
||||||
|
|
||||||
$noid = get_config('system','no_openid');
|
$noid = get_config('system','no_openid');
|
||||||
|
@ -25,8 +24,8 @@ function openid_content(&$a) {
|
||||||
goaway(z_root());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
$r = q("SELECT `user`.*, `user`.`pubkey` as `upubkey`, `user`.`prvkey` as `uprvkey`
|
$r = q("SELECT `user`.*, `user`.`pubkey` as `upubkey`, `user`.`prvkey` as `uprvkey`
|
||||||
FROM `user` WHERE `openid` = '%s' AND `blocked` = 0
|
FROM `user` WHERE `openid` = '%s' AND `blocked` = 0
|
||||||
AND `account_expired` = 0 AND `account_removed` = 0 AND `verified` = 1 LIMIT 1",
|
AND `account_expired` = 0 AND `account_removed` = 0 AND `verified` = 1 LIMIT 1",
|
||||||
dbesc($authid)
|
dbesc($authid)
|
||||||
);
|
);
|
||||||
|
@ -40,7 +39,7 @@ function openid_content(&$a) {
|
||||||
require_once('include/security.php');
|
require_once('include/security.php');
|
||||||
authenticate_success($r[0],true,true);
|
authenticate_success($r[0],true,true);
|
||||||
|
|
||||||
// just in case there was no return url set
|
// just in case there was no return url set
|
||||||
// and we fell through
|
// and we fell through
|
||||||
|
|
||||||
goaway(z_root());
|
goaway(z_root());
|
||||||
|
@ -94,3 +93,4 @@ function openid_content(&$a) {
|
||||||
goaway(z_root());
|
goaway(z_root());
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,18 +1,18 @@
|
||||||
<?php
|
<?php
|
||||||
function opensearch_content(&$a) {
|
if(! function_exists('opensearch_content')) {
|
||||||
|
function opensearch_content(&$a) {
|
||||||
$tpl = get_markup_template('opensearch.tpl');
|
$tpl = get_markup_template('opensearch.tpl');
|
||||||
|
|
||||||
header("Content-type: application/opensearchdescription+xml");
|
header("Content-type: application/opensearchdescription+xml");
|
||||||
|
|
||||||
$o = replace_macros($tpl, array(
|
$o = replace_macros($tpl, array(
|
||||||
'$baseurl' => $a->get_baseurl(),
|
'$baseurl' => $a->get_baseurl(),
|
||||||
'$nodename' => $a->get_hostname(),
|
'$nodename' => $a->get_hostname(),
|
||||||
));
|
));
|
||||||
|
|
||||||
echo $o;
|
echo $o;
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
|
|
||||||
}
|
}
|
||||||
?>
|
}
|
||||||
|
?>
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
require_once('include/Scrape.php');
|
require_once('include/Scrape.php');
|
||||||
require_once('include/follow.php');
|
require_once('include/follow.php');
|
||||||
|
|
||||||
|
if(! function_exists('ostatus_subscribe_content')) {
|
||||||
function ostatus_subscribe_content(&$a) {
|
function ostatus_subscribe_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -76,3 +77,4 @@ function ostatus_subscribe_content(&$a) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -4,7 +4,8 @@ This file is part of the Diaspora protocol. It is used for fetching single publi
|
||||||
*/
|
*/
|
||||||
require_once("include/diaspora.php");
|
require_once("include/diaspora.php");
|
||||||
|
|
||||||
function p_init($a){
|
if(! function_exists('p_init')) {
|
||||||
|
function p_init($a) {
|
||||||
if ($a->argc != 2) {
|
if ($a->argc != 2) {
|
||||||
header($_SERVER["SERVER_PROTOCOL"].' 510 '.t('Not Extended'));
|
header($_SERVER["SERVER_PROTOCOL"].' 510 '.t('Not Extended'));
|
||||||
killme();
|
killme();
|
||||||
|
@ -79,3 +80,4 @@ function p_init($a){
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* @file mod/parse_url.php
|
* @file mod/parse_url.php
|
||||||
*
|
*
|
||||||
* @todo https://developers.google.com/+/plugins/snippet/
|
* @todo https://developers.google.com/+/plugins/snippet/
|
||||||
*
|
*
|
||||||
* @verbatim
|
* @verbatim
|
||||||
* <meta itemprop="name" content="Toller Titel">
|
* <meta itemprop="name" content="Toller Titel">
|
||||||
* <meta itemprop="description" content="Eine tolle Beschreibung">
|
* <meta itemprop="description" content="Eine tolle Beschreibung">
|
||||||
* <meta itemprop="image" content="http://maple.libertreeproject.org/images/tree-icon.png">
|
* <meta itemprop="image" content="http://maple.libertreeproject.org/images/tree-icon.png">
|
||||||
*
|
*
|
||||||
* <body itemscope itemtype="http://schema.org/Product">
|
* <body itemscope itemtype="http://schema.org/Product">
|
||||||
* <h1 itemprop="name">Shiny Trinket</h1>
|
* <h1 itemprop="name">Shiny Trinket</h1>
|
||||||
* <img itemprop="image" src="{image-url}" />
|
* <img itemprop="image" src="{image-url}" />
|
||||||
|
@ -27,6 +27,7 @@ if(!function_exists('deletenode')) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('completeurl')) {
|
||||||
function completeurl($url, $scheme) {
|
function completeurl($url, $scheme) {
|
||||||
$urlarr = parse_url($url);
|
$urlarr = parse_url($url);
|
||||||
|
|
||||||
|
@ -53,7 +54,9 @@ function completeurl($url, $scheme) {
|
||||||
|
|
||||||
return($complete);
|
return($complete);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('parseurl_getsiteinfo_cached')) {
|
||||||
function parseurl_getsiteinfo_cached($url, $no_guessing = false, $do_oembed = true) {
|
function parseurl_getsiteinfo_cached($url, $no_guessing = false, $do_oembed = true) {
|
||||||
|
|
||||||
if ($url == "")
|
if ($url == "")
|
||||||
|
@ -77,7 +80,9 @@ function parseurl_getsiteinfo_cached($url, $no_guessing = false, $do_oembed = tr
|
||||||
|
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('parseurl_getsiteinfo')) {
|
||||||
function parseurl_getsiteinfo($url, $no_guessing = false, $do_oembed = true, $count = 1) {
|
function parseurl_getsiteinfo($url, $no_guessing = false, $do_oembed = true, $count = 1) {
|
||||||
require_once("include/network.php");
|
require_once("include/network.php");
|
||||||
require_once("include/Photo.php");
|
require_once("include/Photo.php");
|
||||||
|
@ -400,11 +405,15 @@ function parseurl_getsiteinfo($url, $no_guessing = false, $do_oembed = true, $co
|
||||||
|
|
||||||
return($siteinfo);
|
return($siteinfo);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('arr_add_hashes')) {
|
||||||
function arr_add_hashes(&$item,$k) {
|
function arr_add_hashes(&$item,$k) {
|
||||||
$item = '#' . $item;
|
$item = '#' . $item;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('parse_url_content')) {
|
||||||
function parse_url_content(&$a) {
|
function parse_url_content(&$a) {
|
||||||
|
|
||||||
$text = null;
|
$text = null;
|
||||||
|
@ -558,4 +567,5 @@ function parse_url_content(&$a) {
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
require_once('include/security.php');
|
require_once('include/security.php');
|
||||||
require_once('include/Photo.php');
|
require_once('include/Photo.php');
|
||||||
|
|
||||||
|
if(! function_exists('photo_init')) {
|
||||||
function photo_init(&$a) {
|
function photo_init(&$a) {
|
||||||
global $_SERVER;
|
global $_SERVER;
|
||||||
|
|
||||||
|
@ -209,3 +210,4 @@ function photo_init(&$a) {
|
||||||
killme();
|
killme();
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -9,6 +9,7 @@ require_once('include/redir.php');
|
||||||
require_once('include/tags.php');
|
require_once('include/tags.php');
|
||||||
require_once('include/threads.php');
|
require_once('include/threads.php');
|
||||||
|
|
||||||
|
if(! function_exists('photos_init')) {
|
||||||
function photos_init(&$a) {
|
function photos_init(&$a) {
|
||||||
|
|
||||||
if($a->argc > 1)
|
if($a->argc > 1)
|
||||||
|
@ -121,9 +122,9 @@ function photos_init(&$a) {
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('photos_post')) {
|
||||||
|
|
||||||
function photos_post(&$a) {
|
function photos_post(&$a) {
|
||||||
|
|
||||||
logger('mod-photos: photos_post: begin' , LOGGER_DEBUG);
|
logger('mod-photos: photos_post: begin' , LOGGER_DEBUG);
|
||||||
|
@ -957,9 +958,9 @@ function photos_post(&$a) {
|
||||||
goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']);
|
goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']);
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('photos_content')) {
|
||||||
|
|
||||||
function photos_content(&$a) {
|
function photos_content(&$a) {
|
||||||
|
|
||||||
// URLs:
|
// URLs:
|
||||||
|
@ -1328,7 +1329,7 @@ function photos_content(&$a) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Display one photo
|
* Display one photo
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1861,7 +1862,7 @@ function photos_content(&$a) {
|
||||||
//hide profile photos to others
|
//hide profile photos to others
|
||||||
if((! $is_owner) && (! remote_user()) && ($rr['album'] == t('Profile Photos')))
|
if((! $is_owner) && (! remote_user()) && ($rr['album'] == t('Profile Photos')))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if($twist == 'rotright')
|
if($twist == 'rotright')
|
||||||
$twist = 'rotleft';
|
$twist = 'rotleft';
|
||||||
else
|
else
|
||||||
|
@ -1906,4 +1907,4 @@ function photos_content(&$a) {
|
||||||
$o .= paginate($a);
|
$o .= paginate($a);
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
14
mod/ping.php
14
mod/ping.php
|
@ -1,10 +1,11 @@
|
||||||
<?php
|
<?php
|
||||||
require_once("include/datetime.php");
|
require_once("include/datetime.php");
|
||||||
require_once('include/bbcode.php');
|
require_once('include/bbcode.php');
|
||||||
require_once('include/forums.php');
|
require_once('include/ForumManager.php');
|
||||||
require_once('include/group.php');
|
require_once('include/group.php');
|
||||||
require_once("mod/proxy.php");
|
require_once("mod/proxy.php");
|
||||||
|
|
||||||
|
if(! function_exists('ping_init')) {
|
||||||
function ping_init(&$a) {
|
function ping_init(&$a) {
|
||||||
|
|
||||||
header("Content-type: text/xml");
|
header("Content-type: text/xml");
|
||||||
|
@ -96,7 +97,7 @@ function ping_init(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if(intval(feature_enabled(local_user(),'forumlist_widget'))) {
|
if(intval(feature_enabled(local_user(),'forumlist_widget'))) {
|
||||||
$forums_unseen = forums_count_unseen();
|
$forums_unseen = ForumManager::count_unseen_items();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -338,7 +339,9 @@ function ping_init(&$a) {
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('ping_get_notifications')) {
|
||||||
function ping_get_notifications($uid) {
|
function ping_get_notifications($uid) {
|
||||||
|
|
||||||
$result = array();
|
$result = array();
|
||||||
|
@ -389,7 +392,11 @@ function ping_get_notifications($uid) {
|
||||||
// Replace the name with {0} but ensure to make that only once
|
// Replace the name with {0} but ensure to make that only once
|
||||||
// The {0} is used later and prints the name in bold.
|
// The {0} is used later and prints the name in bold.
|
||||||
|
|
||||||
$pos = strpos($notification["message"],$notification['name']);
|
if ($notification['name'] != "")
|
||||||
|
$pos = strpos($notification["message"],$notification['name']);
|
||||||
|
else
|
||||||
|
$pos = false;
|
||||||
|
|
||||||
if ($pos !== false)
|
if ($pos !== false)
|
||||||
$notification["message"] = substr_replace($notification["message"],"{0}",$pos,strlen($notification["name"]));
|
$notification["message"] = substr_replace($notification["message"],"{0}",$pos,strlen($notification["name"]));
|
||||||
|
|
||||||
|
@ -406,3 +413,4 @@ function ping_get_notifications($uid) {
|
||||||
|
|
||||||
return($result);
|
return($result);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('poco_init')) {
|
||||||
function poco_init(&$a) {
|
function poco_init(&$a) {
|
||||||
require_once("include/bbcode.php");
|
require_once("include/bbcode.php");
|
||||||
|
|
||||||
|
@ -324,5 +325,5 @@ function poco_init(&$a) {
|
||||||
else
|
else
|
||||||
http_status_exit(500);
|
http_status_exit(500);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
12
mod/poke.php
12
mod/poke.php
|
@ -4,11 +4,11 @@
|
||||||
*
|
*
|
||||||
* Poke, prod, finger, or otherwise do unspeakable things to somebody - who must be a connection in your address book
|
* Poke, prod, finger, or otherwise do unspeakable things to somebody - who must be a connection in your address book
|
||||||
* This function can be invoked with the required arguments (verb and cid and private and possibly parent) silently via ajax or
|
* This function can be invoked with the required arguments (verb and cid and private and possibly parent) silently via ajax or
|
||||||
* other web request. You must be logged in and connected to a profile.
|
* other web request. You must be logged in and connected to a profile.
|
||||||
* If the required arguments aren't present, we'll display a simple form to choose a recipient and a verb.
|
* If the required arguments aren't present, we'll display a simple form to choose a recipient and a verb.
|
||||||
* parent is a special argument which let's you attach this activity as a comment to an existing conversation, which
|
* parent is a special argument which let's you attach this activity as a comment to an existing conversation, which
|
||||||
* may have started with somebody else poking (etc.) somebody, but this isn't necessary. This can be used in the more pokes
|
* may have started with somebody else poking (etc.) somebody, but this isn't necessary. This can be used in the more pokes
|
||||||
* plugin version to have entire conversations where Alice poked Bob, Bob fingered Alice, Alice hugged Bob, etc.
|
* plugin version to have entire conversations where Alice poked Bob, Bob fingered Alice, Alice hugged Bob, etc.
|
||||||
*
|
*
|
||||||
* private creates a private conversation with the recipient. Otherwise your profile's default post privacy is used.
|
* private creates a private conversation with the recipient. Otherwise your profile's default post privacy is used.
|
||||||
*
|
*
|
||||||
|
@ -18,7 +18,7 @@ require_once('include/security.php');
|
||||||
require_once('include/bbcode.php');
|
require_once('include/bbcode.php');
|
||||||
require_once('include/items.php');
|
require_once('include/items.php');
|
||||||
|
|
||||||
|
if(! function_exists('poke_init')) {
|
||||||
function poke_init(&$a) {
|
function poke_init(&$a) {
|
||||||
|
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
|
@ -140,9 +140,9 @@ function poke_init(&$a) {
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('poke_content')) {
|
||||||
|
|
||||||
function poke_content(&$a) {
|
function poke_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -201,5 +201,5 @@ function poke_content(&$a) {
|
||||||
));
|
));
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,7 +9,8 @@ require_once('include/salmon.php');
|
||||||
require_once('include/crypto.php');
|
require_once('include/crypto.php');
|
||||||
// not yet ready for prime time
|
// not yet ready for prime time
|
||||||
//require_once('include/zot.php');
|
//require_once('include/zot.php');
|
||||||
|
|
||||||
|
if(! function_exists('post_post')) {
|
||||||
function post_post(&$a) {
|
function post_post(&$a) {
|
||||||
|
|
||||||
$bulk_delivery = false;
|
$bulk_delivery = false;
|
||||||
|
@ -19,7 +20,7 @@ function post_post(&$a) {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$nickname = $a->argv[2];
|
$nickname = $a->argv[2];
|
||||||
$r = q("SELECT * FROM `user` WHERE `nickname` = '%s'
|
$r = q("SELECT * FROM `user` WHERE `nickname` = '%s'
|
||||||
AND `account_expired` = 0 AND `account_removed` = 0 LIMIT 1",
|
AND `account_expired` = 0 AND `account_removed` = 0 LIMIT 1",
|
||||||
dbesc($nickname)
|
dbesc($nickname)
|
||||||
);
|
);
|
||||||
|
@ -48,4 +49,4 @@ function post_post(&$a) {
|
||||||
http_status_exit(($ret) ? $ret : 200);
|
http_status_exit(($ret) ? $ret : 200);
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('pretheme_init')) {
|
||||||
function pretheme_init(&$a) {
|
function pretheme_init(&$a) {
|
||||||
|
|
||||||
if($_REQUEST['theme']) {
|
if($_REQUEST['theme']) {
|
||||||
$theme = $_REQUEST['theme'];
|
$theme = $_REQUEST['theme'];
|
||||||
$info = get_theme_info($theme);
|
$info = get_theme_info($theme);
|
||||||
|
@ -20,3 +21,4 @@ function pretheme_init(&$a) {
|
||||||
}
|
}
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,13 +2,14 @@
|
||||||
|
|
||||||
require_once('include/Scrape.php');
|
require_once('include/Scrape.php');
|
||||||
|
|
||||||
|
if(! function_exists('probe_content')) {
|
||||||
function probe_content(&$a) {
|
function probe_content(&$a) {
|
||||||
|
|
||||||
$o .= '<h3>Probe Diagnostic</h3>';
|
$o .= '<h3>Probe Diagnostic</h3>';
|
||||||
|
|
||||||
$o .= '<form action="probe" method="get">';
|
$o .= '<form action="probe" method="get">';
|
||||||
$o .= 'Lookup address: <input type="text" style="width: 250px;" name="addr" value="' . $_GET['addr'] .'" />';
|
$o .= 'Lookup address: <input type="text" style="width: 250px;" name="addr" value="' . $_GET['addr'] .'" />';
|
||||||
$o .= '<input type="submit" name="submit" value="Submit" /></form>';
|
$o .= '<input type="submit" name="submit" value="Submit" /></form>';
|
||||||
|
|
||||||
$o .= '<br /><br />';
|
$o .= '<br /><br />';
|
||||||
|
|
||||||
|
@ -22,3 +23,4 @@ function probe_content(&$a) {
|
||||||
}
|
}
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
require_once('include/contact_widgets.php');
|
require_once('include/contact_widgets.php');
|
||||||
require_once('include/redir.php');
|
require_once('include/redir.php');
|
||||||
|
|
||||||
|
if(! function_exists('profile_init')) {
|
||||||
function profile_init(&$a) {
|
function profile_init(&$a) {
|
||||||
|
|
||||||
if(! x($a->page,'aside'))
|
if(! x($a->page,'aside'))
|
||||||
|
@ -65,10 +65,10 @@ function profile_init(&$a) {
|
||||||
foreach($dfrn_pages as $dfrn)
|
foreach($dfrn_pages as $dfrn)
|
||||||
$a->page['htmlhead'] .= "<link rel=\"dfrn-{$dfrn}\" href=\"".$a->get_baseurl()."/dfrn_{$dfrn}/{$which}\" />\r\n";
|
$a->page['htmlhead'] .= "<link rel=\"dfrn-{$dfrn}\" href=\"".$a->get_baseurl()."/dfrn_{$dfrn}/{$which}\" />\r\n";
|
||||||
$a->page['htmlhead'] .= "<link rel=\"dfrn-poco\" href=\"".$a->get_baseurl()."/poco/{$which}\" />\r\n";
|
$a->page['htmlhead'] .= "<link rel=\"dfrn-poco\" href=\"".$a->get_baseurl()."/poco/{$which}\" />\r\n";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('profile_content')) {
|
||||||
function profile_content(&$a, $update = 0) {
|
function profile_content(&$a, $update = 0) {
|
||||||
|
|
||||||
$category = $datequery = $datequery2 = '';
|
$category = $datequery = $datequery2 = '';
|
||||||
|
@ -350,3 +350,4 @@ function profile_content(&$a, $update = 0) {
|
||||||
|
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
require_once("include/Photo.php");
|
require_once("include/Photo.php");
|
||||||
|
|
||||||
|
if(! function_exists('profile_photo_init')) {
|
||||||
function profile_photo_init(&$a) {
|
function profile_photo_init(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -9,10 +10,10 @@ function profile_photo_init(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
profile_load($a,$a->user['nickname']);
|
profile_load($a,$a->user['nickname']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('profile_photo_post')) {
|
||||||
function profile_photo_post(&$a) {
|
function profile_photo_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -143,7 +144,7 @@ function profile_photo_post(&$a) {
|
||||||
$filesize = intval($_FILES['userfile']['size']);
|
$filesize = intval($_FILES['userfile']['size']);
|
||||||
$filetype = $_FILES['userfile']['type'];
|
$filetype = $_FILES['userfile']['type'];
|
||||||
if ($filetype=="") $filetype=guess_image_type($filename);
|
if ($filetype=="") $filetype=guess_image_type($filename);
|
||||||
|
|
||||||
$maximagesize = get_config('system','maximagesize');
|
$maximagesize = get_config('system','maximagesize');
|
||||||
|
|
||||||
if(($maximagesize) && ($filesize > $maximagesize)) {
|
if(($maximagesize) && ($filesize > $maximagesize)) {
|
||||||
|
@ -164,7 +165,7 @@ function profile_photo_post(&$a) {
|
||||||
$ph->orient($src);
|
$ph->orient($src);
|
||||||
@unlink($src);
|
@unlink($src);
|
||||||
return profile_photo_crop_ui_head($a, $ph);
|
return profile_photo_crop_ui_head($a, $ph);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -175,7 +176,7 @@ function profile_photo_content(&$a) {
|
||||||
notice( t('Permission denied.') . EOL );
|
notice( t('Permission denied.') . EOL );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$newuser = false;
|
$newuser = false;
|
||||||
|
|
||||||
if($a->argc == 2 && $a->argv[1] === 'new')
|
if($a->argc == 2 && $a->argv[1] === 'new')
|
||||||
|
@ -186,9 +187,9 @@ function profile_photo_content(&$a) {
|
||||||
notice( t('Permission denied.') . EOL );
|
notice( t('Permission denied.') . EOL );
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
|
|
||||||
// check_form_security_token_redirectOnErr('/profile_photo', 'profile_photo');
|
// check_form_security_token_redirectOnErr('/profile_photo', 'profile_photo');
|
||||||
|
|
||||||
$resource_id = $a->argv[2];
|
$resource_id = $a->argv[2];
|
||||||
//die(":".local_user());
|
//die(":".local_user());
|
||||||
$r=q("SELECT * FROM `photo` WHERE `uid` = %d AND `resource-id` = '%s' ORDER BY `scale` ASC",
|
$r=q("SELECT * FROM `photo` WHERE `uid` = %d AND `resource-id` = '%s' ORDER BY `scale` ASC",
|
||||||
|
@ -240,7 +241,7 @@ function profile_photo_content(&$a) {
|
||||||
|
|
||||||
|
|
||||||
if(! x($a->config,'imagecrop')) {
|
if(! x($a->config,'imagecrop')) {
|
||||||
|
|
||||||
$tpl = get_markup_template('profile_photo.tpl');
|
$tpl = get_markup_template('profile_photo.tpl');
|
||||||
|
|
||||||
$o .= replace_macros($tpl,array(
|
$o .= replace_macros($tpl,array(
|
||||||
|
@ -295,11 +296,11 @@ function profile_photo_crop_ui_head(&$a, $ph){
|
||||||
}
|
}
|
||||||
|
|
||||||
$hash = photo_new_resource();
|
$hash = photo_new_resource();
|
||||||
|
|
||||||
|
|
||||||
$smallest = 0;
|
$smallest = 0;
|
||||||
|
|
||||||
$r = $ph->store(local_user(), 0 , $hash, $filename, t('Profile Photos'), 0 );
|
$r = $ph->store(local_user(), 0 , $hash, $filename, t('Profile Photos'), 0 );
|
||||||
|
|
||||||
if($r)
|
if($r)
|
||||||
info( t('Image uploaded successfully.') . EOL );
|
info( t('Image uploaded successfully.') . EOL );
|
||||||
|
@ -308,8 +309,8 @@ function profile_photo_crop_ui_head(&$a, $ph){
|
||||||
|
|
||||||
if($width > 640 || $height > 640) {
|
if($width > 640 || $height > 640) {
|
||||||
$ph->scaleImage(640);
|
$ph->scaleImage(640);
|
||||||
$r = $ph->store(local_user(), 0 , $hash, $filename, t('Profile Photos'), 1 );
|
$r = $ph->store(local_user(), 0 , $hash, $filename, t('Profile Photos'), 1 );
|
||||||
|
|
||||||
if($r === false)
|
if($r === false)
|
||||||
notice( sprintf(t('Image size reduction [%s] failed.'),"640") . EOL );
|
notice( sprintf(t('Image size reduction [%s] failed.'),"640") . EOL );
|
||||||
else
|
else
|
||||||
|
@ -323,4 +324,3 @@ function profile_photo_crop_ui_head(&$a, $ph){
|
||||||
$a->page['end'] .= replace_macros(get_markup_template("cropend.tpl"), array());
|
$a->page['end'] .= replace_macros(get_markup_template("cropend.tpl"), array());
|
||||||
return;
|
return;
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
<?php
|
<?php
|
||||||
require_once("include/Contact.php");
|
require_once("include/Contact.php");
|
||||||
|
|
||||||
|
if(! function_exists('profiles_init')) {
|
||||||
function profiles_init(&$a) {
|
function profiles_init(&$a) {
|
||||||
|
|
||||||
nav_set_selected('profiles');
|
nav_set_selected('profiles');
|
||||||
|
@ -139,9 +140,10 @@ function profiles_init(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('profile_clean_keywords')) {
|
||||||
function profile_clean_keywords($keywords) {
|
function profile_clean_keywords($keywords) {
|
||||||
$keywords = str_replace(","," ",$keywords);
|
$keywords = str_replace(","," ",$keywords);
|
||||||
$keywords = explode(" ", $keywords);
|
$keywords = explode(" ", $keywords);
|
||||||
|
@ -158,7 +160,9 @@ function profile_clean_keywords($keywords) {
|
||||||
|
|
||||||
return $keywords;
|
return $keywords;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('profiles_post')) {
|
||||||
function profiles_post(&$a) {
|
function profiles_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -502,8 +506,9 @@ function profiles_post(&$a) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('profile_activity')) {
|
||||||
function profile_activity($changed, $value) {
|
function profile_activity($changed, $value) {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
|
|
||||||
|
@ -593,8 +598,9 @@ function profile_activity($changed, $value) {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('profiles_content')) {
|
||||||
function profiles_content(&$a) {
|
function profiles_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -818,5 +824,5 @@ function profiles_content(&$a) {
|
||||||
}
|
}
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('profperm_init')) {
|
||||||
function profperm_init(&$a) {
|
function profperm_init(&$a) {
|
||||||
|
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
|
@ -9,10 +10,10 @@ function profperm_init(&$a) {
|
||||||
$profile = $a->argv[1];
|
$profile = $a->argv[1];
|
||||||
|
|
||||||
profile_load($a,$which,$profile);
|
profile_load($a,$which,$profile);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(! function_exists('profperm_content')) {
|
||||||
function profperm_content(&$a) {
|
function profperm_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
|
@ -108,9 +109,9 @@ function profperm_content(&$a) {
|
||||||
}
|
}
|
||||||
|
|
||||||
$o .= '<div id="prof-update-wrapper">';
|
$o .= '<div id="prof-update-wrapper">';
|
||||||
if($change)
|
if($change)
|
||||||
$o = '';
|
$o = '';
|
||||||
|
|
||||||
$o .= '<div id="prof-members-title">';
|
$o .= '<div id="prof-members-title">';
|
||||||
$o .= '<h3>' . t('Visible To') . '</h3>';
|
$o .= '<h3>' . t('Visible To') . '</h3>';
|
||||||
$o .= '</div>';
|
$o .= '</div>';
|
||||||
|
@ -156,6 +157,5 @@ function profperm_content(&$a) {
|
||||||
}
|
}
|
||||||
$o .= '</div>';
|
$o .= '</div>';
|
||||||
return $o;
|
return $o;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -12,6 +12,7 @@ define("PROXY_SIZE_LARGE", "large");
|
||||||
require_once('include/security.php');
|
require_once('include/security.php');
|
||||||
require_once("include/Photo.php");
|
require_once("include/Photo.php");
|
||||||
|
|
||||||
|
if(! function_exists('proxy_init')) {
|
||||||
function proxy_init() {
|
function proxy_init() {
|
||||||
global $a, $_SERVER;
|
global $a, $_SERVER;
|
||||||
|
|
||||||
|
@ -232,7 +233,9 @@ function proxy_init() {
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('proxy_url')) {
|
||||||
function proxy_url($url, $writemode = false, $size = "") {
|
function proxy_url($url, $writemode = false, $size = "") {
|
||||||
global $_SERVER;
|
global $_SERVER;
|
||||||
|
|
||||||
|
@ -294,11 +297,13 @@ function proxy_url($url, $writemode = false, $size = "") {
|
||||||
else
|
else
|
||||||
return ($proxypath.$size);
|
return ($proxypath.$size);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param $url string
|
* @param $url string
|
||||||
* @return boolean
|
* @return boolean
|
||||||
*/
|
*/
|
||||||
|
if(! function_exists('proxy_is_local_image')) {
|
||||||
function proxy_is_local_image($url) {
|
function proxy_is_local_image($url) {
|
||||||
if ($url[0] == '/') return true;
|
if ($url[0] == '/') return true;
|
||||||
|
|
||||||
|
@ -309,7 +314,9 @@ function proxy_is_local_image($url) {
|
||||||
$url = normalise_link($url);
|
$url = normalise_link($url);
|
||||||
return (substr($url, 0, strlen($baseurl)) == $baseurl);
|
return (substr($url, 0, strlen($baseurl)) == $baseurl);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('proxy_parse_query')) {
|
||||||
function proxy_parse_query($var) {
|
function proxy_parse_query($var) {
|
||||||
/**
|
/**
|
||||||
* Use this function to parse out the query array element from
|
* Use this function to parse out the query array element from
|
||||||
|
@ -328,7 +335,9 @@ function proxy_parse_query($var) {
|
||||||
unset($val, $x, $var);
|
unset($val, $x, $var);
|
||||||
return $arr;
|
return $arr;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('proxy_img_cb')) {
|
||||||
function proxy_img_cb($matches) {
|
function proxy_img_cb($matches) {
|
||||||
|
|
||||||
// if the picture seems to be from another picture cache then take the original source
|
// if the picture seems to be from another picture cache then take the original source
|
||||||
|
@ -342,10 +351,13 @@ function proxy_img_cb($matches) {
|
||||||
|
|
||||||
return $matches[1].proxy_url(htmlspecialchars_decode($matches[2])).$matches[3];
|
return $matches[1].proxy_url(htmlspecialchars_decode($matches[2])).$matches[3];
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('proxy_parse_html')) {
|
||||||
function proxy_parse_html($html) {
|
function proxy_parse_html($html) {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
$html = str_replace(normalise_link($a->get_baseurl())."/", $a->get_baseurl()."/", $html);
|
$html = str_replace(normalise_link($a->get_baseurl())."/", $a->get_baseurl()."/", $html);
|
||||||
|
|
||||||
return preg_replace_callback("/(<img [^>]*src *= *[\"'])([^\"']+)([\"'][^>]*>)/siU", "proxy_img_cb", $html);
|
return preg_replace_callback("/(<img [^>]*src *= *[\"'])([^\"']+)([\"'][^>]*>)/siU", "proxy_img_cb", $html);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('hub_return')) {
|
||||||
function hub_return($valid,$body) {
|
function hub_return($valid,$body) {
|
||||||
|
|
||||||
if($valid) {
|
if($valid) {
|
||||||
|
@ -14,18 +15,18 @@ function hub_return($valid,$body) {
|
||||||
|
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// when receiving an XML feed, always return OK
|
// when receiving an XML feed, always return OK
|
||||||
|
if(! function_exists('hub_post_return')) {
|
||||||
function hub_post_return() {
|
function hub_post_return() {
|
||||||
|
|
||||||
header($_SERVER["SERVER_PROTOCOL"] . ' 200 ' . 'OK');
|
header($_SERVER["SERVER_PROTOCOL"] . ' 200 ' . 'OK');
|
||||||
killme();
|
killme();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if(! function_exists('pubsub_init')) {
|
||||||
function pubsub_init(&$a) {
|
function pubsub_init(&$a) {
|
||||||
|
|
||||||
$nick = (($a->argc > 1) ? notags(trim($a->argv[1])) : '');
|
$nick = (($a->argc > 1) ? notags(trim($a->argv[1])) : '');
|
||||||
|
@ -57,7 +58,7 @@ function pubsub_init(&$a) {
|
||||||
|
|
||||||
$sql_extra = ((strlen($hub_verify)) ? sprintf(" AND `hub-verify` = '%s' ", dbesc($hub_verify)) : '');
|
$sql_extra = ((strlen($hub_verify)) ? sprintf(" AND `hub-verify` = '%s' ", dbesc($hub_verify)) : '');
|
||||||
|
|
||||||
$r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d
|
$r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d
|
||||||
AND `blocked` = 0 AND `pending` = 0 $sql_extra LIMIT 1",
|
AND `blocked` = 0 AND `pending` = 0 $sql_extra LIMIT 1",
|
||||||
intval($contact_id),
|
intval($contact_id),
|
||||||
intval($owner['uid'])
|
intval($owner['uid'])
|
||||||
|
@ -75,7 +76,7 @@ function pubsub_init(&$a) {
|
||||||
|
|
||||||
$contact = $r[0];
|
$contact = $r[0];
|
||||||
|
|
||||||
// We must initiate an unsubscribe request with a verify_token.
|
// We must initiate an unsubscribe request with a verify_token.
|
||||||
// Don't allow outsiders to unsubscribe us.
|
// Don't allow outsiders to unsubscribe us.
|
||||||
|
|
||||||
if($hub_mode === 'unsubscribe') {
|
if($hub_mode === 'unsubscribe') {
|
||||||
|
@ -95,9 +96,11 @@ function pubsub_init(&$a) {
|
||||||
hub_return(true, $hub_challenge);
|
hub_return(true, $hub_challenge);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
require_once('include/security.php');
|
require_once('include/security.php');
|
||||||
|
|
||||||
|
if(! function_exists('pubsub_post')) {
|
||||||
function pubsub_post(&$a) {
|
function pubsub_post(&$a) {
|
||||||
|
|
||||||
$xml = file_get_contents('php://input');
|
$xml = file_get_contents('php://input');
|
||||||
|
@ -155,8 +158,5 @@ function pubsub_post(&$a) {
|
||||||
consume_feed($xml,$importer,$contact,$feedhub,1,2);
|
consume_feed($xml,$importer,$contact,$feedhub,1,2);
|
||||||
|
|
||||||
hub_post_return();
|
hub_post_return();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,12 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('post_var')) {
|
||||||
function post_var($name) {
|
function post_var($name) {
|
||||||
return (x($_POST, $name)) ? notags(trim($_POST[$name])) : '';
|
return (x($_POST, $name)) ? notags(trim($_POST[$name])) : '';
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(! function_exists('pubsubhubbub_init')) {
|
||||||
function pubsubhubbub_init(&$a) {
|
function pubsubhubbub_init(&$a) {
|
||||||
// PuSH subscription must be considered "public" so just block it
|
// PuSH subscription must be considered "public" so just block it
|
||||||
// if public access isn't enabled.
|
// if public access isn't enabled.
|
||||||
|
@ -158,5 +161,5 @@ function pubsubhubbub_init(&$a) {
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists('qsearch_init')) {
|
||||||
function qsearch_init(&$a) {
|
function qsearch_init(&$a) {
|
||||||
|
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
|
@ -47,4 +48,4 @@ function qsearch_init(&$a) {
|
||||||
echo json_encode((object) $results);
|
echo json_encode((object) $results);
|
||||||
killme();
|
killme();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue