Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

iHost - Post Upload Form


Przejdź do rozwiązania Rozwiązane przez Macsch15,

Rekomendowane odpowiedzi

Opublikowano

Korzystam z modyfikacji iHost, do której doinstalowałem iHost - Post Upload Form. Podczas pisania tematu/postu, mam następujący błąd:

 

pre_1375942778__ihostpostupload.png

 

 

Zawartość pliku attachiHost

 

Linia 48

if ( ! $settings['dp3_ihost_enable']
			or ( $app == 'forums' and $extra['forum'] 
				and in_array( $extra['forum'], explode( ',', $settings['iHostPostUploadFormExclude'] ) ) ) )

Linia 69

if( ( $settings['dp3_ihost_access_type'] == 'perm' ) && ! $registry->iHostLibrary->checkPerms( 'add' ) )
		{
			return FALSE;
		}
Opublikowano (edytowane)

$settings zastąp $this->settings.

 

Po zamianie, biała strona z błędem Fatal error: Using $this when not in object context. Nadal wskazanie na linie nr 48.

 

Załączam całą zawartość pliku. Jedynie w funkcji sprawdzającej dostęp jako argument jest $settings. W reszcie this->settings.

 

<?php

if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}

class public_core_attach_attachiHost extends ipsCommand
{

/**
* Class entry point
*
* @param object Registry reference
* @return @e void [Outputs to screen/redirects]
*/
public function doExecute( ipsRegistry $registry )
{

if ( ! self::checkAccess( $registry, $this->settings, $this->request['fromApp'], array( 'forum' => $this->request['fromForum'] ) ) )
{
return '';
}

$this->lang->loadLanguageFile( array( 'public_ihost' ), 'ihost' );

$data = array();

/* Generate max filesize */
$data['max_size'] = IPSLib::sizeFormat( $this->settings['dp3_ihost_max_size'] * 1024 );
/* Build allowed extensions info */
$data['ext'] = str_replace( ',', ', ', $this->settings['dp3_ihost_ext'] );

/* AJAX Class */
if ( ! $this->registry->isClassLoaded( 'classAjax' ) )
{
require_once( IPS_KERNEL_PATH . 'classAjax.php' );
$this->registry->setClass( 'classAjax', new classAjax() );
}
return $this->registry->classAjax->returnHtml( $this->registry->output->getTemplate('post')->attachiFrameiHost($data) );
}

public static function checkAccess( ipsRegistry $registry, $app, $settings, $extra )
{

/* Check enabled and forum not excluded */
if ( ! $settings['dp3_ihost_enable']
or ( $app == 'forums' and $extra['forum']
and in_array( $extra['forum'], explode( ',', $settings['iHostPostUploadFormExclude'] ) ) ) )
{
return FALSE;
}

/* Load class */
if ( ! $registry->isClassLoaded( 'iHostLibrary' ) )
{
require_once( IPSLib::getAppDir( 'ihost' ) . '/sources/classes/library.php' );
$registry->setClass( 'iHostLibrary', new iHostLibrary( $registry ) );
}

/* Check main access */
if( ! $registry->iHostLibrary->checkAccess() )
{
return FALSE;
}

/* Check main permissions to add */
if( ( $settings['dp3_ihost_access_type'] == 'perm' ) && ! $registry->iHostLibrary->checkPerms( 'add' ) )
{
return FALSE;
}

return TRUE;
}
}
Edytowane przez barthav
Opublikowano

Macsch15, wystarczyło zamienić w wyżej wymienionych linijkach. Po zamianie całości, biała strona z błędem. Dzięki za rozwiązanie. Temat do zamknięcia.

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.