Hive Mail Module | > Module written by Matt Mecham | > Date started: 8th July 2003 | +-------------------------------------------------------------------------- */ //===================================== // Define class, this must be the same // in all modules //===================================== class module extends module_loader { var $class = ""; var $module = ""; var $html = ""; var $result = ""; var $hive = ""; var $hiveid = ""; function module() { global $ibforums, $DB, $std, $print; //------------------------------------------- // Load skin / lang stuff //------------------------------------------- $ibforums->lang = $std->load_words($ibforums->lang, 'lang_register', $ibforums->lang_id); $this->html = $std->load_template('skin_register'); //------------------------------------------- // Are we a hivemail member? //------------------------------------------- $DB->query("SELECT id, hiveuserid FROM ibf_member_extra WHERE id={$ibforums->member['id']}"); $r = $DB->fetch_row(); $this->hiveid = intval($r['hiveuserid']); //------------------------------------------- // Load Hivemail plug in //------------------------------------------- define('IPB_PLUGIN', true); require_once('../mail/includes/invision_plugin.php'); $this->hive = new invision_plugin(); //------------------------------------------- // If we're not a member... //------------------------------------------- if ( ! $ibforums->member['id'] ) { $std->boink_it( $ibforums->base_url ); } //------------------------------------------- // Do we already have a hivemail membership? //------------------------------------------- if ( $this->hiveid AND $hiveuser = $this->hive->DB_Hive->query_first("SELECT userid FROM ".HIVE_TBL."user WHERE userid = {$this->hiveid}")) { $this->hive->destructor(); $std->boink_it( $ibforums->base_url ); } //------------------------------------------- // Whatcha doin'? Yes - you? //------------------------------------------- switch( $ibforums->input['show'] ) { case 'forumform': $this->show_forumform(); break; case 'addmail': $this->add_mail(); default: $this->show_forumform(); break; } } function add_mail() { global $ibforums, $DB, $std, $print; $hive_username = trim($ibforums->input['hive_username']); //------------------------------------------ // Check for errors //------------------------------------------ if ( $hive_username == "" ) { $this->show_forumform('js_blanks'); } $this->hive->hivemail_register_user($ibforums->member, false); if ( $this->hive->hive_error != "" ) { $ibforums->lang['thing_name_taken'] = sprintf( $ibforums->lang['thing_name_taken'] , 'Board Email Address' ); $ibforums->lang['incorrect_thing_name'] = sprintf( $ibforums->lang['incorrect_thing_name'], 'Board Email Address' ); $this->show_forumform($this->hive->hive_error); $this->error = 1; $this->hive->destructor(); return; } $this->hive->destructor(); $print->redirect_screen("your email account has been created, forwarding you to the email log-in page", "/mail/index.php", 1); } //------------------------------------------ // Show Forum Form // // Show the already reg'd member's mail form // //------------------------------------------ function show_forumform($errors="") { global $ibforums, $DB, $std, $print; $this->page_title = "Sign up for your email account"; $hidden = ""; $action = $ibforums->base_url.'act=module&module=hivemail&show=addmail'; $content = $this->html->field_entry('Account Name:', 'The password for your email account will be the same as your forum account.
Letters and numbers only please.', $this->html->field_textinput('hive_username', $ibforums->input['hive_username'])." " ); if ($errors != "") { $this->output .= $this->html->errors( $ibforums->lang[$errors] ); } $this->output .= $this->html->tmpl_form($action, $hidden, $this->page_title, $content ); $print->add_output("$this->output"); $print->do_output( array( 'TITLE' => $this->page_title, 'JS' => 0, NAV => $this->nav ) ); } } ?>