public function _on_watched_dba_create($object) { $ret = array(); //Check if we have data in session, if so use that. $session = new midcom_services_session('org.openpsa.relatedto'); if ($session->exists('relatedto2get_array')) { $relatedto_arr = $session->get('relatedto2get_array'); $session->remove('relatedto2get_array'); } else { $relatedto_arr = org_openpsa_relatedto_plugin::get2relatedto(); } foreach ($relatedto_arr as $k => $rel) { $ret[$k] = array('stat' => false, 'method' => false, 'obj' => false); $rel->fromClass = get_class($object); $rel->fromGuid = $object->guid; if (!$rel->id) { $ret[$k]['method'] = 'create'; $ret[$k]['stat'] = $rel->create(); } else { //In theory we should not ever hit this, but better to be sure. $ret[$k]['method'] = 'update'; $ret[$k]['stat'] = $rel->update(); } $ret[$k]['obj'] = $rel; } }
public static function get_location($when = null) { if (midcom::get('auth')->user) { // Get from user's location log return org_routamc_positioning_user::get_location_for_person(midcom::get('auth')->user->get_storage(), $when); } // Get from session $session = new midcom_services_session(); if (!$session->exists('org_routamc_positioning_user_location')) { return null; } return $session->get('org_routamc_positioning_user_location'); }
<?php midcom::get('auth')->require_valid_user(); $user = midcom::get('auth')->user->get_storage(); // Use the FireEagle PHP library from http://fireeagle.yahoo.net/developer/code/php require_once MIDCOM_ROOT . '/external/fireeagle.php'; $access_key = $user->get_parameter('net.yahoo.fireeagle', 'access_key'); $access_secret = $user->get_parameter('net.yahoo.fireeagle', 'access_secret'); $fireeagle_consumer_key = midcom_baseclasses_components_configuration::get('org.routamc.positioning', 'config')->get('fireeagle_consumer_key'); $fireeagle_consumer_secret = midcom_baseclasses_components_configuration::get('org.routamc.positioning', 'config')->get('fireeagle_consumer_secret'); if (!$access_key || !$access_secret) { $session = new midcom_services_session('org_routamc_positioning_fireeagle'); if (isset($_GET['f']) && $_GET['f'] == 'start') { // get a request token + secret from FE and redirect to the authorization page $fireeagle = new FireEagle($fireeagle_consumer_key, $fireeagle_consumer_secret); $request_token = $fireeagle->getRequestToken(); if (!isset($request_token['oauth_token']) || !is_string($request_token['oauth_token']) || !isset($request_token['oauth_token_secret']) || !is_string($request_token['oauth_token_secret'])) { throw new midcom_error("Failed to get FireEagle request token\n"); } // Save request token to session and redirect user $session->set('auth_state', 'start'); $session->set('request_token', $request_token['oauth_token']); $session->set('request_secret', $request_token['oauth_token_secret']); ?> <p><a href="<?php echo $fireeagle->getAuthorizeURL($request_token['oauth_token']); ?> " target="_blank">Authorize this application</a></p> <p><a href="?f=callback">And then click here</a></p> <?php midcom::get()->finish();
/** * When syncing data we clear the capatcha data in the session. */ function sync_type_with_widget($results) { $session = new midcom_services_session($this->_session_domain); $session->remove($this->_session_key); }
/** * Store unshown UI messages from the stack to user session. */ function store() { if (count($this->_message_stack) == 0) { // No unshown messages return true; } // We have to be careful what messages to store to session to prevent them // from accumulating $messages_to_store = array(); foreach ($this->_message_stack as $id => $message) { // Check that the messages were not coming from earlier session if (!in_array($id, $this->_messages_from_session)) { $messages_to_store[$id] = $message; } } if (count($messages_to_store) == 0) { // We have only messages coming from earlier sessions, and we ditch those return true; } $session = new midcom_services_session('midcom_services_uimessages'); // Check if some other request has added stuff to session as well if ($session->exists('midcom_services_uimessages_stack')) { $old_stack = $session->get('midcom_services_uimessages_stack'); $messages_to_store = array_merge($old_stack, $messages_to_store); } $session->set('midcom_services_uimessages_stack', $messages_to_store); $this->_message_stack = array(); }
<?php /** * Captcha display handler. Takes the session data and renders the captcha PNG. * * No caching is done so far. * * If the session is not valid, a 500 will be triggered. * * @package midcom.helper.datamanager2 * @author The Midgard Project, http://www.midgard-project.org * @copyright The Midgard Project, http://www.midgard-project.org * @license http://www.gnu.org/licenses/lgpl.html GNU Lesser General Public License */ global $argc, $argv; $session = new midcom_services_session('midcom_helper_datamanager2_widget_captcha'); if (!isset($argv[0])) { throw new midcom_error_notfound("Missing CAPTCHA session key."); } if ($argc == 0 || !$session->exists($argv[0])) { throw new midcom_error('Failed to generate CAPTCHA, the session key passed is invalid.'); } $passphrase = $session->get($argv[0]); if (empty($passphrase)) { throw new midcom_error('Failed to generate CAPTCHA, no passphrase in session.'); } // Set Captcha options (font must exist!) $options = array('width' => 200, 'height' => 80, 'phrase' => $passphrase, 'imageOptions' => array('font_path' => MIDCOM_ROOT . '/midcom/helper/datamanager2/widget/', 'font_file' => 'captcha-font.ttf', 'background_color' => '#000000', 'text_color' => '#FFFFFF')); /* Generate a new Text_CAPTCHA object, Image driver * This is working at least with Text_CAPTCHAS latest alpha version. Older versions * give missing font error
/** * Clean up after get2session() (in case we cancel or something) * * To be used in case we do not get to call on_created_handle_relatedto() * or some other method that reads and saves the data (and while at it cleans * up after itself) */ function get2session_cleanup() { $session = new midcom_services_session('org.openpsa.relatedto'); if ($session->exists('relatedto2get_array')) { $session->remove('relatedto2get_array'); } }
$pos = $_COOKIE['midcom_services_toolbars_position']; $pos = explode('_', $pos); $x = $pos[0]; $y = $pos[1]; } break; case 'session': $session = new midcom_services_session('midcom.services.toolbars'); $x = $session->get('position_x'); $y = $session->get('position_y'); break; } echo "{$x},{$y}"; _midcom_stop_request(); } // Interface for storing the toolbar position switch ($GLOBALS['midcom_config']['toolbars_position_storagemode']) { case 'parameter': $person = new midcom_db_person(midcom::get('auth')->user); $person->set_parameter('midcom.services.toolbars', 'position_x', $_REQUEST['position_x']); $person->set_parameter('midcom.services.toolbars', 'position_y', $_REQUEST['position_y']); break; case 'cookie': _midcom_setcookie('midcom_services_toolbars_position', $_REQUEST['position_x'] . '_' . $_REQUEST['position_y'], time() + 30 * 24 * 3600, midcom_connection::get_url('self')); break; case 'session': $session = new midcom_services_session('midcom.services.toolbars'); $session->set('position_x', $_REQUEST['position_x']); $session->set('position_y', $_REQUEST['position_y']); break; }