Files
shopPRO/autoload/shop/class.Coupon.php
Jacek Pyziak 431add234c ver. 0.283: Legacy class cleanup — S, Html, Email, Image, Log, Mobile_Detect → Shared namespace
- Migrate class.S → Shared\Helpers\Helpers (140+ files), remove 12 unused methods
- Migrate class.Html → Shared\Html\Html
- Migrate class.Email → Shared\Email\Email
- Migrate class.Image → Shared\Image\ImageManipulator
- Delete class.Log (unused), class.Mobile_Detect (outdated UA detection)
- Remove grid library loading from admin (index.php, ajax.php)
- Replace gridEdit usage in 10 admin templates with grid-edit-replacement.php
- Fix grid-edit-replacement.php AJAX to send values as JSON (grid.js compat)
- Remove mobile layout conditionals (m_html/m_css/m_js) from Site + LayoutsRepository
- Remove \Log::save_log() calls from OrderAdminService, ShopOrder, Order

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 23:06:06 +01:00

77 lines
1.6 KiB
PHP

<?
namespace shop;
class Coupon implements \ArrayAccess
{
public function __construct( int $element_id )
{
global $mdb;
if ( $element_id )
{
$result = $mdb -> get( 'pp_shop_coupon', '*', [ 'id' => $element_id ] );
if ( \Shared\Helpers\Helpers::is_array_fix( $result ) ) foreach ( $result as $key => $val )
$this -> $key = $val;
}
}
public function load_from_db_by_name( string $name )
{
global $mdb;
$result = $mdb -> get( 'pp_shop_coupon', '*', [ 'name' => $name ] );
if ( is_array( $result ) ) foreach ( $result as $key => $val )
$this -> $key = $val;
}
public function is_one_time() {
// return $this -> bean -> one_time;
}
public function is_available()
{
if ( !$this -> id )
return false;
if ( !$this -> status )
return false;
return !$this -> used;
}
public function set_as_used()
{
// $this -> bean -> used = 1;
// $this -> bean -> date_used = date( 'Y-m-d H:i:s' );
// \R::store( $this -> bean );
}
public function __get( $variable )
{
if ( array_key_exists( $variable, $this -> data ) )
return $this -> $variable;
}
public function __set( $variable, $value )
{
$this -> $variable = $value;
}
public function offsetExists( $offset )
{
return isset( $this -> $offset );
}
public function offsetGet( $offset )
{
return $this -> $offset;
}
public function offsetSet( $offset, $value )
{
$this -> $offset = $value;
}
public function offsetUnset( $offset )
{
unset( $this -> $offset );
}
}