Перейти к содержанию

by_ix

Актив
  • Постов

    2310
  • Зарегистрирован

  • Посещение

  • Победитель дней

    171

Сообщения, опубликованные by_ix

  1. 7 минут назад, Fixlenskiy сказал:

    Указал прямую ссылку , ничего не происходит

    проверил у себя сейчас.
    в ипс не происходит загрузка на сервер, просто добавляется ссылка для перенаправления на скачивание.

    после чего именно ошибка происходит?

  2. в ипс система добавления файлов через ссылку работает как?
    при нажатии на скачивание перекидывает на стороннюю страницу загрузки или при добавления файла по ссылке он загружается на сервер форума?
    если второе, то нужно указывать прямую ссылку на загрузку.

  3. не знаю, насколько это корректно, но всё работает.

    в файл /applications/nexus/sources/Subscription/Subscription.php
    в самый конец перед последней } вставить:

    	/**
    	 * Load a subscription by member and purchase
    	 *
    	 * @param	\IPS\Member							$member		Take a guess
    	 * @param	\IPS\nexus\Purchase		$purchase	I mean it's really writing itself
    	 * @return	\IPS\nexus\Subscription
    	 * @throws \OutOfRangeException
    	 */
    	public static function loadByMemberAndPurchase( \IPS\Member $member, \IPS\nexus\Purchase $purchase )
    	{
    		try
    		{
    			$where = array( array( 'sub_purchase_id=? and sub_member_id=?', $purchase->id, $member->member_id ) );
    
    			return static::constructFromData( \IPS\Db::i()->select( '*', 'nexus_member_subscriptions', $where )->first() );
    		}
    		catch( \Exception $ex )
    		{
    			throw new \OutOfRangeException;
    		}
    	}
    
    	/**
    	 * Check if the subscription expired
    	 *
    	 * @return bool
    	 */
    	public function isExpired() : bool
    	{
    		return $this->expire AND $this->expire < \IPS\DateTime::create()->getTimestamp();
    	}
    
    	/**
    	 * Can we cancel this subscription?
    	 *
    	 * @return bool
    	 */
    	public function canCancel() : bool
    	{
    		return !$this->expire or $this->isExpired();
    	}


    в файле /applications/nexus/modules/front/subscriptions/subscriptions.php
    на 182 строке заменить:

    if ( $current = \IPS\nexus\Subscription::loadByMember( \IPS\nexus\Customer::loggedIn(), FALSE ) AND ( $current->purchase AND ( !$current->purchase->cancelled OR $current->purchase->can_reactivate ) ) )

    на:

    if ( $current = \IPS\nexus\Subscription::loadByMember( \IPS\nexus\Customer::loggedIn(), FALSE ) AND ( $current->purchase AND !$current->cancelled AND ( !$current->purchase->cancelled OR $current->purchase->can_reactivate ) ) )

    и в самый конец перед последней } вставить:

    	/**
    	 * Cancel an expired subscription so that we can purchase another subscription
    	 */
    	public function cancel()
    	{
    		/* CSRF Check */
    		\IPS\Session::i()->csrfCheck();
    
    		try
    		{
    			$purchase = \IPS\nexus\Purchase::load( \IPS\Request::i()->id );
    		}
    		catch( \OutOfRangeException $e )
    		{
    			\IPS\Output::i()->error( 'nexus_no_subs_package', '2X379/8', 404, '' );
    		}
    		try
    		{
    			$subscription = \IPS\nexus\Subscription::loadByMemberAndPurchase( \IPS\Member::loggedIn(), $purchase, FALSE );
    		}
    		catch( \OutOfRangeException $e )
    		{
    			\IPS\Output::i()->error( 'nexus_no_subs_subs', '2X379/9', 404, '' );
    		}
    
    		if( !$subscription->canCancel() )
    		{
    			\IPS\Output::i()->error( 'no_module_permission', '1X379/A', 403, '' );
    		}
    
    		foreach ( \IPS\nexus\extensions\nexus\Item\Subscription::getPurchases( \IPS\nexus\Customer::loggedIn(), $subscription->package->id, TRUE, TRUE ) as $row )
    		{
    			$row->cancelled = TRUE;
    			$row->save();
    		}
    		$subscription->cancelled = TRUE;
    		$subscription->save();
    
    		\IPS\Output::i()->redirect( \IPS\Http\Url::internal( 'app=nexus&module=subscriptions&controller=subscriptions', 'front', 'nexus_subscriptions' ), 'cancelled' );
    	}

    в шаблон nexus/front/subscription/row
    на 25 строке заменить:
    {{if $subscription}}
    на:
    {{if $subscription AND !$subscription->cancelled}}

    на 57 строке заменить:
    {{endif}}
    на:

    							{{elseif $subscription->canCancel()}}
    								<li>
    									<a href="{url="app=nexus&module=subscriptions&controller=subscriptions&do=cancel&id={$subscription->purchase->id}" base="front" csrf="true" )"}&ref={expression="base64_encode( \IPS\Http\Url::internal( 'app=nexus&module=subscriptions&controller=subscriptions', 'front', 'nexus_subscriptions' ) )"}" class="ipsButton ipsButton_small ipsButton_link ipsButton_link--negative ipsButton_fullWidth" data-confirm ">
    										{lang="nexus_subs_cancel"}
    									</a>
    								</li>
    							{{endif}}


    вроде, всё.
    мб, конечно, она включается теперь где-то, что более логично, чем вырезание функции под корень, но кто знает. :bk:

  4. 34 минуты назад, begunok сказал:

    Спасибо за поддержку моральную

    если не делали копии хотя бы раз в неделю или даже месяц, не говоря уже о ежедневных, то и расстраиваться нет смысла. забудьте и всё. сами себе яму вырыли. 

  5. 17 минут назад, begunok сказал:

    я походу Обнулил БАЗУ , вчера она весила 9гб, сегодня 25мб.

    и как это можно было сразу не заметить. 👍

    19 минут назад, begunok сказал:

    Может там откатят как, но не уверен, а значит потеряны труды 5 лет 

    резервных копий не делали за 5 лет ни разу? 

  6. 1 час назад, deeverbs сказал:

    злоупотребляли энтером

    по стандарту на энтер включён абзац, если включить просто перенос строки, то вполне достаточно этого и больше ничего делать не приходится. 

    да и на скринах, судя по всему, какой-то газетный форум из нулевых. такое тоже читать не особо приятно, когда весь текст слипается.

  7. 4 часа назад, the.bunin сказал:

    постконтейнер

    я тоже так думаю, судя по плагину. но зачем тогда про профиль писать и скрин профиля кидать. мб он хочет сделать вывод инфы в левые блоки профиля, которая выводится в постконтейнер этим плагином. 

  8. 3 минуты назад, umbro32111 сказал:

    image.png.a5b98a3324f138cf22acd649ab430d2f.pngimage.png.fda9b901a22ebf0c1b7997bb7e7c9e96.png

     

    ну так не туда вставили значит, а сказали, что нашли, куда надо. 

    ссылки нет, давно качал, не помню уже где. 

    просто посмотрите, как устроен виджет "кто в онлайне" в этом месте и сделайте так же.

    и вы, видимо, не ту версию скачали, в указанной мной строение шаблона другое. 

  9. 4 минуты назад, umbro32111 сказал:

    как мне в html прописать отступ?

    редактор темы. не настойки, а именно редактор, значок </>. далее в поиске ищите нужный файл плагина, либо ксс, либо шаблон, смотря куда хотите внести изменения.

×
×
  • Создать...