Пример #1
0
    switch (@$_REQUEST['srv_format']) {
        case 'dnsmasq':
            return 'srv_host=_ischedules._tcp.' . $domain . ',' . ($c->scheduling_dkim_domain ? $c->scheduling_dkim_domain : $_SERVER['SERVER_NAME']) . ',' . $_SERVER['SERVER_PORT'];
        case 'bind':
            //_http._tcp.example.com. IN      SRV 0    5      80   www.example.com.
            return '_ischedules._tcp.' . $domain . '. IN SRV  0 5 ' . $_SERVER['SERVER_PORT'] . ' ' . ($c->scheduling_dkim_domain ? $c->scheduling_dkim_domain : $_SERVER['SERVER_NAME']);
        default:
            return '_ischedules._tcp.' . $domain . '  ' . ($c->scheduling_dkim_domain ? $c->scheduling_dkim_domain : $_SERVER['SERVER_NAME']) . '  ' . $_SERVER['SERVER_PORT'];
    }
}
$browser = new Browser(translate('iSchedule Domains'));
$browser->AddColumn("domain", translate('Domain'), 'left', '');
// function AddColumn( $field, $header="", $align="", $format="", $sql="", $class="", $datatype="", $hook=null ) {
$browser->AddColumn("srvok", translate('SRV Record'), 'right', '', "''", '', '', 'SRVOk');
$browser->SetJoins("usr ");
$browser->SetWhere(" email is not null and email <> ''");
$browser->SetDistinct(" split_part(email,'@',2) as ");
$sql = "select distinct split_part(email,'@',2) as domain  from usr where email is not null and email <> ''";
$page_elements[] = $browser;
$c->stylesheets[] = 'css/edit.css';
include "page-header.php";
/**
* Page elements could be an array of viewers, browsers or something else
* that supports the Render() method... or a non-object which we assume is
* just a string of text that we echo.
*/
$heading_level = null;
foreach ($page_elements as $k => $page_element) {
    if (is_object($page_element)) {
        echo $page_element->Render($heading_level);
        $heading_level = 'h2';
Пример #2
0
function bindings_to_us_browser()
{
    global $c, $page_elements, $id, $editor;
    $browser = new Browser(translate('Bindings to this Principal\'s Collections'));
    $browser->AddColumn('bind_id', translate('ID'), '', '');
    $browser->AddHidden('b.dav_owner_id');
    $browser->AddHidden('p.principal_id');
    $browser->AddColumn('dav_name', translate('Collection'), '', '<td style="white-space:nowrap;">%s</td>', 'c.dav_name');
    $browser->AddColumn('bound_as', translate('Bound As'), '', '<td style="white-space:nowrap;">%s</td>', 'b.dav_name');
    $browser->AddColumn('access_ticket_id', translate('Ticket ID'), '', '');
    $browser->AddColumn('privs', translate('Privileges'), '', '', "privileges_list(privileges)");
    $delurl = $c->base_url . '/admin.php?action=edit&t=principal&id=##principal_id##&bind_id=##bind_id##&subaction=delete_binding';
    $browser->AddColumn('delete', translate('Action'), 'center', '', "'<a class=\"submit\" href=\"{$delurl}\">" . translate('Delete') . "</a>'");
    $browser->SetOrdering('target', 'A');
    $browser->SetJoins('dav_binding b LEFT JOIN collection c ON (bound_source_id=collection_id) LEFT JOIN access_ticket t ON (ticket_id=access_ticket_id) LEFT JOIN principal p USING(user_no)');
    $browser->SetWhere('p.principal_id = ' . intval($editor->Value('principal_id')));
    $browser->RowFormat('<tr class="r%d">', '</tr>', '#even');
    $browser->DoQuery();
    return $browser;
}
Пример #3
0
    $browser->AddColumn('user_no', 'User#', 'center', '<a href="/user.php?user_no=##user_no##">%d</a>');
} else {
    $browser->AddHidden('user_no');
}
$browser->AddColumn('query_name', 'Query Name', 'left', '<a href="/wrsearch.php?style=plain&saved_query=##URL:query_name##">%s</a>');
$browser->AddColumn('query_type', 'Type', 'center', '%s');
//  $browser->AddColumn( 'query_sql', 'SQL', 'left', '%s' );
//  $browser->AddColumn( 'query_params', 'Params', 'left', '%s' );
$browser->AddColumn('maxresults', 'Max#', 'left', '%s');
$browser->AddColumn('rlsort', 'SortBy', 'center', '%s');
$browser->AddColumn('rlseq', 'Up/Dn', 'center', '%s');
$browser->AddColumn('updated', 'Last Modified', 'center', '%-16.16s');
$browser->AddColumn('public_checkbox', 'Public?', '', '<td class="center"><input name="query_is_public[##user_no##][##URL:query_name##]" value="off" type="hidden"><input name="query_is_public[##user_no##][##URL:query_name##]" class="fcheckbox" type="checkbox"%s></td>', "CASE WHEN public THEN ' checked' ELSE '' END");
$browser->AddColumn('menu_checkbox', 'Menu?', '', '<td class="center"><input name="show_in_menu[##user_no##][##URL:query_name##]" value="off" type="hidden"><input name="show_in_menu[##user_no##][##URL:query_name##]" class="fcheckbox" type="checkbox"%s></td>', "CASE WHEN in_menu THEN ' checked' ELSE '' END");
$browser->AddColumn('query_params', 'Actions', 'center', '<a href="/wrsearch.php?saved_query=##URL:query_name##" class="submit">Edit Query</a>');
$browser->SetJoins("saved_queries JOIN usr USING(user_no) ");
$browser->SetWhere("usr.user_no = " . $session->user_no);
if (isset($_GET['o']) && isset($_GET['d'])) {
    $browser->AddOrder($_GET['o'], $_GET['d']);
} else {
    $browser->AddOrder('query_name', 'A');
}
$browser->RowFormat("<tr onMouseOver=\"LinkHref(this,1);\" title=\"Click to Display Search Detail\" class=\"r%d\">\n", "</tr>\n", '#even');
$browser->DoQuery();
$c->page_title = "Saved Searches";
include "page-header.php";
echo "<form method=\"POST\">\n";
echo $browser->Render();
echo "<input type=\"submit\" name=\"submit\" class=\"submit\" value=\"Save Changes\">";
echo "</form>\n";
include "page-footer.php";
Пример #4
0
            $browser->Title(translate('Group Principals'));
            break;
    }
}
$browser->AddColumn('principal_id', translate('ID'), 'right', '##principal_link##');
$browser->AddColumn('username', translate('Name'));
$rowurl = $c->base_url . '/admin.php?action=edit&t=principal&id=';
$browser->AddHidden('principal_link', "'<a href=\"{$rowurl}' || principal_id || '\">' || principal_id || '</a>'");
$browser->AddColumn('displayname', translate('Display Name'));
$browser->AddColumn('email', translate('EMail'));
$browser->AddColumn('member_of', translate('Is Member of'), '', '', 'is_member_of_list(principal_id)');
if (!isset($principal_type) || $principal_type == 3) {
    $browser->AddColumn('members', translate('Has Members'), '', '', 'has_members_list(principal_id)');
}
$browser->SetOrdering('username', 'A');
$browser->SetJoins("dav_principal ");
if (isset($principal_active) && $principal_active == 'f') {
    $browser->SetWhere('NOT user_active');
} else {
    $browser->SetWhere('user_active');
}
if (isset($principal_type)) {
    $browser->AndWhere('type_id = ' . $principal_type);
}
$c->page_title = $browser->Title();
if ($c->enable_row_linking) {
    $browser->RowFormat('<tr onMouseover="LinkHref(this,1);" title="' . htmlspecialchars(translate('Click to display user details')) . '" class="r%d">', '</tr>', '#even');
} else {
    $browser->RowFormat('<tr class="r%d">', '</tr>', '#even');
}
$page_elements[] = $browser;
Пример #5
0
    $browser->AddColumn('delete', translate('Action'), 'center', '', "'<a class=\"submit\" href=\"{$delurl}\">" . translate('Delete') . "</a>'");
    $browser->SetOrdering('target', 'A');
    $browser->SetJoins('access_ticket t LEFT JOIN collection c ON (target_collection_id=collection_id) LEFT JOIN caldav_data d ON (target_resource_id=dav_id)');
    $browser->SetWhere('target_collection_id = ' . intval($editor->Value('collection_id')));
    $browser->RowFormat('<tr class="r%d">', '</tr>', '#even');
    $browser->DoQuery();
    $page_elements[] = $browser;
    /**
    bind_id          | bigint | not null default nextval('dav_id_seq'::regclass)
    bound_source_id  | bigint | 
    access_ticket_id | text   | 
    dav_owner_id     | bigint | not null
    parent_container | text   | not null
    dav_name         | text   | not null
    dav_displayname  | text   | 
    */
    $browser = new Browser(translate('Bindings to this Collection'));
    $browser->AddColumn('bind_id', translate('ID'), '', '');
    $browser->AddHidden('b.dav_owner_id');
    $browser->AddColumn('bound_as', translate('Bound As'), '', '<td style="white-space:nowrap;">%s</td>', 'b.dav_name');
    $browser->AddColumn('access_ticket_id', translate('Ticket ID'), '', '');
    $browser->AddColumn('privs', translate('Privileges'), '', '', "privileges_list(privileges)");
    $delurl = $c->base_url . '/admin.php?action=edit&t=principal&id=##dav_owner_id##&bind_id=##URL:bind_id##&subaction=delete_binding';
    $browser->AddColumn('delete', translate('Action'), 'center', '', "'<a class=\"submit\" href=\"{$delurl}\">" . translate('Delete') . "</a>'");
    $browser->SetOrdering('target', 'A');
    $browser->SetJoins('dav_binding b LEFT JOIN collection c ON (bound_source_id=collection_id) LEFT JOIN access_ticket t ON (ticket_id=access_ticket_id)');
    $browser->SetWhere('bound_source_id = ' . intval($editor->Value('collection_id')));
    $browser->RowFormat('<tr class="r%d">', '</tr>', '#even');
    $browser->DoQuery();
    $page_elements[] = $browser;
}
Пример #6
0
<?php

param_to_global('external_active', '([tf])', 'active');
$browser = new Browser(translate('External Calendars'));
$browser->AddColumn('collection_id', translate('ID'), 'right', '##collection_link##');
$rowurl = $c->base_url . '/admin.php?action=edit&t=collection&id=';
$browser->AddHidden('collection_link', "'<a href=\"{$rowurl}' || collection_id || '\">' || collection_id || '</a>'");
$browser->AddColumn('dav_displayname', translate('Display Name'));
$browser->AddColumn('refs', translate('References'), 'right', '', '(select count(*) from dav_binding where bound_source_id=collection_id )');
$browser->SetOrdering('dav_displayname', 'A');
$browser->SetJoins("collection ");
$browser->SetWhere("parent_container='/.external/'");
$c->page_title = $browser->Title();
if ($c->enable_row_linking) {
    $browser->RowFormat('<tr onMouseover="LinkHref(this,1);" title="' . htmlspecialchars(translate('Click to display user details')) . '" class="r%d">', '</tr>', '#even');
} else {
    $browser->RowFormat('<tr class="r%d">', '</tr>', '#even');
}
$page_elements[] = $browser;
$externalqry = new AwlQuery("SELECT count(*) as count from collection where parent_container='/.external/' and collection_id not in ( select bound_source_id from dav_binding where external_url is not null)");
$externalqry->Exec('external-bind-url');
$external = $externalqry->Fetch();
if ($external->count > 0) {
    $link = '<a href="' . $c->base_url . '/admin.php?action=edit&t=external&subaction=clean" class="submit">' . translate("Remove dangling external calendars") . '(' . $external->count . ')</a>';
    $c->stylesheets[] = 'css/edit.css';
    $page_elements[] = $link;
}