HEX
Server: nginx/1.24.0
System: Linux DGT-WORDPRESS-VM-SERVER 6.14.0-1017-azure #17~24.04.1-Ubuntu SMP Mon Dec 1 20:10:50 UTC 2025 x86_64
User: ubuntu (1000)
PHP: 8.4.12
Disabled: NONE
Upload Files
File: /mnt/data/dreamsrent-wp-demo/wp-content/plugins/loco-translate/src/config/CustomSaved.php
<?php
/**
 * Bundle configuration saved as a WordPress site option.
 */
class Loco_config_CustomSaved extends Loco_data_Option {
    
    /**
     * @var Loco_package_Bundle
     */
    private $bundle;
    
    
    /**
     * {@inheritdoc}
     */
    public function getKey(){
        return strtolower( $this->bundle->getType() ).'_config__'.$this->bundle->getHandle();
    }
    
    
    /**
     * {@inheritdoc}
     */
    public function persist(){
        $writer = new Loco_config_BundleWriter( $this->bundle );
        $this->exchangeArray( $writer->toArray() );
        return parent::persist(); 
    }


    /**
     * @return Loco_config_CustomSaved
     */
    public function setBundle( Loco_package_Bundle $bundle ){
        $this->bundle = $bundle;
        return $this;
    }


    /**
     * Modify currently set bundle according to saved config data
     * @return Loco_package_Bundle 
     */
    public function configure(){
        $this->bundle->clear();
        $reader = new Loco_config_BundleReader( $this->bundle );
        $reader->loadArray( $this->getArrayCopy() );
        return $this->bundle;
    }

}