BBCode Box in Extensionen

In diesem Forum gibt es Starthilfe zum neuen Extension-System von phpBB 3.1/3.2. Fragen zur Entwicklung von Extensions und zur Konvertierung von phpBB 3.0.x MODs sind ebenfalls willkommen.
Benutzeravatar
Crizzo
Administrator
Administrator
Beiträge: 11953
Registriert: 19.05.2005 21:45
Kontaktdaten:

Re: BBCode Box in Extensionen

Beitrag von Crizzo »

Hast du mal den aktuellen Code? Der Editor ist dann nicht im ACP, sondern auf Frontend/Userseite?
Benutzeravatar
Scanialady
Supporter
Supporter
Beiträge: 1723
Registriert: 23.02.2009 16:29
Wohnort: Velbert (NRW)
Kontaktdaten:

Re: BBCode Box in Extensionen

Beitrag von Scanialady »

Doch, das Problem gab es schon oft. Man hat nur aufgegeben, sich darum zu kümmern, weil keiner helfen konnte. ;-)
Beispielsweise funktioniert es nicht im Board3 Portal - Willkommensblock.

Mit controller: wenn ich richtig verstanden habe, was du suchst: die PM Welcome von Rich McGirr machts so glaub ich. https://github.com/rmcgirr83/pmwelcome
Die Bosheit trinkt die Hälfte ihres eigenen Giftes (Lucius Annaeus Seneca)
-
Wenn von etwas kein Backup existiert, dann ist es nicht wichtig.
Benutzeravatar
waldkatze
Ehemaliges Teammitglied
Beiträge: 792
Registriert: 08.03.2013 21:50

Re: BBCode Box in Extensionen

Beitrag von waldkatze »

@Scanialady
Die Extension PM Welcome hat die Eingabe leider auch im ACP und da funktioniert das auch.

@Crizzo
Das ist mein Codeabschnitt für das Eintragen im Controller.

Code: Alles auswählen

   /*------------------
	 TOURZIEL EINTRAGEN 
	------------------*/
    public function create()
    {	
		if(!$this->auth->acl_get('u_tzv_add'))      
		{
			trigger_error('TOURZIEL_NO_ADD'); 
		}

        if($this->auth->acl_get('m_tzv_edit'))
		{
			$this->template->assign_vars(array(
			    'U_TOURZIEL_MODERATE' => $this->helper->route('moderate'),
			));
		}		

	    $this->template->assign_block_vars('navlinks', array(
			'FORUM_NAME'	=> $this->user->lang('TOURZIEL'),
			'U_VIEW_FORUM'	=> $this->helper->route('index'),
		));
		
		$submit = (isset($_POST['post'])) ? true : false;
		{	
		    $c_action = $this->helper->route('create');           
			
		    $this->template->assign_vars(array(
			    'U_PAGE_1' => $this->helper->route('index'),       
			    'U_PAGE_3' => $this->helper->route('tzvlist'),  
			    'U_PAGE_5' => $this->helper->route('search'),  
		    ));
		}
		
        $submit = (isset($_POST['post'])) ? true : false;
		
		$user_id    = $this->user->data['user_id'];	
		$name 	    = request_var('name', '', true);
		$land       = request_var('land', '', true);
		$kategorie  = request_var('kategorie', '', true);
		$region	    = request_var('region', '', true);
		$plz 	    = request_var('plz', '', true);
		$ort 	    = request_var('ort', '', true);
		$strasse 	= request_var('strasse', '', true);
		$telefon    = request_var('telefon', '', true);
		$email	    = request_var('email', '', true);
		$homepage	= request_var('homepage', '', true);
		$maps_l	    = request_var('maps_l', '', true);
		$maps_b	    = request_var('maps_b', '', true);
        $wlan       = request_var('wlan', '', true);
		
		$message    = request_var('message', '', true);
		if($message == '')
		{
			$message = NULL;
		}
		
		// Pflichtfelder prüfen
		$errors = array();
		if($submit)
		{
			if (strlen($name) == 0)
			{
				$errors[] = $this->user->lang('FIELD_REQUIRED', $this->user->lang('ERROR_NAME'));
			}
			
			if ($plz == '')
			{
				$errors[] = $this->user->lang('FIELD_REQUIRED', $this->user->lang('ERROR_PLZ'));
			}	
			
			if ($ort == '')
			{
				$errors[] = $this->user->lang('FIELD_REQUIRED', $this->user->lang('ERROR_ORT'));
			}	
			
			if (strlen($message) == 0)
			{
				$errors[] = $this->user->lang('FIELD_REQUIRED', $this->user->lang('ERROR_MESSAGE'));
			}
		}
		
		// wenn kein Fehler
		if($submit && empty($errors))
		{
			$new_id = $this->events->add_event($user_id, time(), $name, $land, $kategorie, $region, $plz, $ort, $strasse, $telefon, $email, $homepage, $maps_l, $maps_b, $wlan, $message);

            meta_refresh(15, $this->helper->route('tzvlist')); // nach 15 Sek. zu Tourziel-Liste

			$message =  $this->user->lang['EVENT_ADD_SUCCESSFUL'] . '<br /><br /><a href="' . $this->helper->route('event', array('id' => $new_id)) . '">'. $this->user->lang['VIEW_EVENT'] . '</a><br /><a href="' . generate_board_url() . '/app.php/tzv">'. $this->user->lang['RETURN_TOURZIEL'] . '</a>';
			trigger_error($message);
		}
		else
		{
			$c_action = $this->helper->route('create');
			
			$this->template->assign_vars(array(
				'S_CREATE_ACTION'	=> $c_action,
				'S_HAS_ERRORS'		=> !empty($errors),
				'U_TOURZIEL_PAGE'	=> $this->helper->route('index'),
				'ERRORS'			=> implode($errors, '<br />'),
				
				'POST_NAME'		    => $name,
				'POST_LAND'		    => $land,
				'POST_KATEGORIE'    => $kategorie,
				'POST_REGION'		=> $region,
				'POST_PLZ'		    => $plz,
				'POST_STRASSE'		=> $strasse,
				'POST_TELEFON'		=> $telefon,
				'POST_EMAIL'		=> $email,
				'POST_HOMEPAGE'		=> $homepage,
				'POST_MAPS_L'		=> $maps_l,
				'POST_MAPS_B'		=> $maps_b,
				'POST_WLAN'		    => $wlan,

			    'BBCODE_STATUS'		=> $language->lang('BBCODE_IS_ON', '<a href="' . $phpbb_container->get('controller.helper')->route('phpbb_help_bbcode_controller') . '">', '</a>'),
				'FLASH_STATUS'		=> $language->lang('FLASH_IS_ON'),
				'IMG_STATUS'		=> $language->lang('IMAGES_ARE_ON'),
				'SMILIES_STATUS'	=> $language->lang('SMILIES_ARE_ON'),
				'URL_STATUS'		=> $language->lang('URL_IS_ON'),
			
			    'S_BBCODE_ALLOWED'	=> true,
				'S_BBCODE_FLASH'	=> true,
				'S_BBCODE_IMG'		=> true,
				'S_LINKS_ALLOWED'	=> true,
				'S_SMILIES_ALLOWED'	=> true,
			));
			display_custom_bbcodes();
			generate_smilies('inline', 1);
		}
		
		return $this->helper->render('tzv_main_add.html', $this->user->lang('MAIN_ADD'));  
	}
Das Bremsen eines Motorrades ist die Verschwendung hochwertiger Geschwindigkeit in sinnlose Wärmeenergie.
Antworten

Zurück zu „Extension Bastelstube“