/var/www/html_sp/wp-content/plugins/loco-translate/src/config/CustomSaved.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?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 setBundleLoco_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;
    }

}