Dotclear

source: plugins/pings/lib.pings.php @ 3975:403e3ea2c10e

Revision 3975:403e3ea2c10e, 3.0 KB checked in by franck <carnet.franck.paul@…>, 6 years ago (diff)

Pings plugin: remove unused label

Line 
1<?php
2/**
3 * @brief pings, a plugin for Dotclear 2
4 *
5 * @package Dotclear
6 * @subpackage Plugins
7 *
8 * @copyright Olivier Meunier & Association Dotclear
9 * @copyright GPL-2.0-only
10 */
11
12if (!defined('DC_RC_PATH')) {return;}
13
14class pingsAPI extends xmlrpcClient
15{
16    public static function doPings($srv_uri, $site_name, $site_url)
17    {
18        $o          = new self($srv_uri);
19        $o->timeout = 3;
20
21        $rsp = $o->query('weblogUpdates.ping', $site_name, $site_url);
22
23        if (isset($rsp['flerror']) && $rsp['flerror']) {
24            throw new Exception($rsp['message']);
25        }
26
27        return true;
28    }
29}
30
31class pingsAdminBehaviors
32{
33    public static function pingJS()
34    {
35        return dcPage::jsLoad(dcPage::getPF('pings/js/post.js'));
36    }
37
38    public static function pingsFormItems($main, $sidebar, $post)
39    {
40        $core = &$GLOBALS['core'];
41        if (!$core->blog->settings->pings->pings_active) {
42            return;
43        }
44
45        $pings_uris = $core->blog->settings->pings->pings_uris;
46        if (empty($pings_uris) || !is_array($pings_uris)) {
47            return;
48        }
49
50        if (!empty($_POST['pings_do']) && is_array($_POST['pings_do'])) {
51            $pings_do = $_POST['pings_do'];
52        } else {
53            $pings_do = [];
54        }
55
56        $item = '<h5 class="ping-services">' . __('Pings') . '</h5>';
57        $i    = 0;
58        foreach ($pings_uris as $k => $v) {
59            $item .=
60            '<p class="ping-services"><label for="pings_do-' . $i . '" class="classic">' .
61            form::checkbox(['pings_do[]', 'pings_do-' . $i], html::escapeHTML($v), in_array($v, $pings_do), 'check-ping-services') . ' ' .
62            html::escapeHTML($k) . '</label></p>';
63            $i++;
64        }
65        $sidebar['options-box']['items']['pings'] = $item;
66
67    }
68
69    public static function doPings($cur, $post_id)
70    {
71        if (empty($_POST['pings_do']) || !is_array($_POST['pings_do'])) {
72            return;
73        }
74
75        $core = &$GLOBALS['core'];
76        if (!$core->blog->settings->pings->pings_active) {
77            return;
78        }
79
80        $pings_uris = $core->blog->settings->pings->pings_uris;
81        if (empty($pings_uris) || !is_array($pings_uris)) {
82            return;
83        }
84
85        foreach ($_POST['pings_do'] as $uri) {
86            if (in_array($uri, $pings_uris)) {
87                try {
88                    pingsAPI::doPings($uri, $core->blog->name, $core->blog->url);
89                } catch (Exception $e) {}
90            }
91        }
92    }
93}
94
95class pingsCoreBehaviour
96{
97    public static function doPings($blog, $ids)
98    {
99        if (!$blog->settings->pings->pings_active) {
100            return;
101        }
102        if (!$blog->settings->pings->pings_auto) {
103            return;
104        }
105
106        $pings_uris = $blog->settings->pings->pings_uris;
107        if (empty($pings_uris) || !is_array($pings_uris)) {
108            return;
109        }
110
111        foreach ($pings_uris as $uri) {
112            try {
113                pingsAPI::doPings($uri, $blog->name, $blog->url);
114            } catch (Exception $e) {}
115        }
116    }
117}
Note: See TracBrowser for help on using the repository browser.

Sites map