<?php $site_id = get_config("site_id"); $swordfish_api_shared_key = elgg_get_plugin_setting("swordfish_api_shared_key", "pleio_api"); $license_key = elgg_get_plugin_setting("license_key", "pleio_api"); $gcm_api_key = elgg_get_plugin_setting("gcm_api_key", "pleio_api"); $logo_url = pleio_api_get_mobile_logo($site_id); $ios_push_certificate = pleio_api_get_ios_push_certificate($site_id); $ios_push_certificate_status = "Niet beschikbaar"; if (file_exists($ios_push_certificate)) { $ios_push_certificate_status = "Opgeslagen op " . date("d-m-Y", filemtime($ios_push_certificate)); if (function_exists("openssl_x509_parse")) { $cert_info = openssl_x509_parse(file_get_contents($ios_push_certificate)); $ios_push_certificate_status = sprintf("%s %s - %s", $cert_info["subject"]["CN"], date("d-m-Y", $cert_info["validFrom_time_t"]), date("d-m-Y", $cert_info["validTo_time_t"])); } } ?> <form action="<?php echo $vars["url"]; ?> action/pleio_api/settings" method="post" enctype="multipart/form-data"> <?php echo elgg_view("input/securitytoken"); ?> <?php if ($site_id == 1) { $html = elgg_view('input/text', array('name' => 'params[gcm_api_key]', 'value' => $gcm_api_key)); echo elgg_view_module("inline", elgg_echo('pleio_api:settings:gcm_api_key'), $html); ?>
function pleio_api_get_all_subsites($search = null, $subsite_id = 0, $locked_filter = 0, $order_by = 0, $offset = 0, $wheres = array(), $joins = array()) { $list = array(); $total = 0; $joins[] = sprintf(" INNER JOIN %ssites_entity s USING (guid) ", get_config("dbprefix")); $offset = intval($offset); if ($search) { $search = sanitise_string($search); $wheres[] = " (s.name LIKE '%{$search}%' OR s.url LIKE '%{$search}%' OR s.description LIKE '%{$search}%') "; } if ($locked_filter == 1) { $joins[] = sprintf(" INNER JOIN %sprivate_settings ps ON ps.entity_guid = guid ", get_config("dbprefix")); $wheres[] = " ps.name = 'membership' AND ps.value = 'open' "; } elseif ($locked_filter == 2) { $joins[] = sprintf(" INNER JOIN %sprivate_settings ps ON ps.entity_guid = guid ", get_config("dbprefix")); $wheres[] = " ps.name = 'membership' AND ps.value != 'open' "; } $options = array('type' => 'site', 'limit' => 20, 'offset' => $offset, 'count' => true, "wheres" => $wheres, "joins" => $joins, 'site_guid' => ELGG_ENTITIES_ANY_VALUE); if ($subsite_id) { $options["guids"] = $subsite_id; } $total = elgg_get_entities($options); if ($total > 0) { $options['count'] = false; if ($order_by == 1) { $options['order_by'] = ' s.name '; } elseif ($order_by == 2) { $options['order_by'] = ' s.name DESC '; } $sites = elgg_get_entities($options); /* @var $site Subsite */ foreach ($sites as $site) { $e = pleio_api_export($site, explode(",", "guid,name,url")); $membership = get_private_setting($site->guid, "membership"); $e["o"] = !$membership || $membership == "open" ? 1 : 0; $is_member = $site instanceof Subsite && $site->isUser() || !$site instanceof Subsite && $site instanceof ElggSite ? 1 : 0; $e["m"] = $is_member; $e["i"] = !$is_member && $site instanceof Subsite && $site->hasInvitation() ? 1 : 0; $e["p"] = !$is_member && $site instanceof Subsite && $site->pendingMembershipRequest() ? 1 : 0; $e["l"] = pleio_api_get_mobile_logo($e['guid'], $e["url"]); $colors = pleio_api_get_site_colors($e['guid']); $e["c"] = $colors[0]; $e["fc"] = $colors[1]; $count_result = get_data_row(sprintf("select count(*) as c from %sentity_relationships where guid_two = %d and relationship = 'member_of_site' ", get_config("dbprefix"), $e['guid'])); $e["mt"] = $count_result->c; $e["e"] = $site->email; $list[] = $e; } } return array("total" => $total, "list" => $list, "offset" => $offset); }