Exemplo n.º 1
0
 /**
  * Handle the moving of a group phase
  *
  * @param mixed $handler_id The ID of the handler.
  * @param Array $args The argument list.
  * @param Array &$data The local request data.
  */
 public function _handler_move($handler_id, array $args, array &$data)
 {
     $data['group'] = new midcom_db_group($args[0]);
     // Get the prefix
     $data['prefix'] = midcom_core_context::get()->get_key(MIDCOM_CONTEXT_ANCHORPREFIX);
     if (isset($_POST['f_cancel'])) {
         return new midcom_response_relocate("__mfa/asgard_midcom.admin.user/group/edit/{$data['group']->guid}/");
     }
     if (isset($_POST['f_submit'])) {
         echo "<pre>\n";
         print_r($_POST);
         echo "</pre>\n";
         $data['group']->owner = (int) $_POST['midcom_admin_user_move_group'];
         if ($data['group']->update()) {
             midcom::get('uimessages')->add($this->_l10n->get('midcom.admin.user'), midcom::get('i18n')->get_string('updated', 'midcom'));
             return new midcom_response_relocate("__mfa/asgard_midcom.admin.user/group/edit/{$data['group']->guid}/");
         } else {
             debug_add('Failed to update the group, last midcom_connection::get_error_string was ' . midgard_connection::get_error_string(), MIDCOM_LOG_ERROR);
             debug_print_r('We operated on this object', $data['group'], MIDCOM_LOG_ERROR);
             throw new midcom_error('Failed to update the group, see error level log for details');
         }
     }
     $data['view_title'] = sprintf($this->_l10n->get('move %s'), $data['group']->official);
     midcom::get('head')->set_pagetitle($data['view_title']);
     $this->_update_breadcrumb($handler_id);
 }
Exemplo n.º 2
0
 /**
  * Get Midgard error message
  *
  * @return string Midgard error message
  */
 public static function get_error_string()
 {
     if (method_exists('midgard_connection', 'get_instance')) {
         // Midgard 9.09 or newer
         return midgard_connection::get_instance()->get_error_string();
     }
     // Midgard 8.09 or 9.03
     return midgard_connection::get_error_string();
 }
Exemplo n.º 3
0
 function deletePost($message)
 {
     $args = $this->_params_to_args($message);
     if (count($args) != 5) {
         return new XML_RPC_Response(0, midcom_connection::get_error(), 'Invalid arguments.');
     }
     if (!midcom::get('auth')->login($args[2], $args[3])) {
         return new XML_RPC_Response(0, midcom_connection::get_error(), 'Authentication failed.');
     }
     midcom::get('auth')->initialize();
     try {
         $article = new midcom_db_article($args[1]);
     } catch (midcom_error $e) {
         return new XML_RPC_Response(0, midcom_connection::get_error(), 'Article not found: ' . $e->getMessage());
     }
     if (!$article->delete()) {
         return new XML_RPC_Response(0, midcom_connection::get_error(), 'Failed to delete article: ' . midgard_connection::get_error_string());
     }
     // Update the index
     $indexer = midcom::get('indexer');
     $indexer->delete($article->guid);
     return new XML_RPC_Response(new XML_RPC_Value(true, 'boolean'));
 }