0c8ae3b7 by Joshua Tundag

Merge branch '11515_encrypted_flag' into 'master'

update 11515_encrypted_flag

See merge request !2
2 parents 0adf9d88 783c9be5
......@@ -156,25 +156,31 @@ class FlagManager {
if(!$flags) return [];
foreach($flags as $flag){
$value = $this->checkFlag($flag, !empty($flag['default']) ? $flag['default'] : null);
setcookie($flag['encrypted_name'], $value, time() + (86400 * 30), "/");
setcookie($flag['encrypted_name'], $value['cookie_value'], time() + (86400 * 30), "/");
}
}
private function filterFlag($flag, $needle, $defaultValue){
$this->checkDir();
if(!$flag['is_filtered']) return $needle;
if(!$flag['is_filtered']) return array('value' => $needle, 'cookie_value' => $needle );
$acceptedValues = $flag['accepted_values'];
if(isset($flag['both_usable'])){
if($flag['both_usable']){
return count(array_filter($acceptedValues, function($value) use ($needle) {
return $value['encrypted_value'] == $needle || $value['value'] == $needle;
})) ? $needle : $defaultValue;
$flag_value = '';
foreach($acceptedValues as $value) {
if($value['encrypted_value'] == $needle || $value['value'] == $needle)
$flag_value = $value['value'];
}
return $flag_value != '' ? array('value' => $flag_value, 'cookie_value' => $needle ) : array('value' => $defaultValue, 'cookie_value' => $defaultValue );
}
return count(array_filter($acceptedValues, function($value) use ($needle) {
return $value['encrypted_value'] == $needle;
})) ? $needle : $defaultValue;
}
$flag_value = '';
foreach($acceptedValues as $value) {
if($value['encrypted_value'] == $needle)
$flag_value = $value['value'];
}
return $flag_value != '' ? array('value' => $flag_value, 'cookie_value' => $needle ) : array('value' => $defaultValue, 'cookie_value' => $defaultValue );
}
public function checkFlag($flag, $defaultValue, $driver = 'cookie'){
......
......@@ -18,7 +18,7 @@ class Flags{
$flagManager = new FlagManager();
$flag = $flagManager->getFlag($flagName, $encrypted);
if(!$flag) return null;
return $flagManager->checkFlag($flag, $defaultValue ? $defaultValue : (isset($flag['has_default']) && $flag['has_default'] ? $flag['default'] : null));
return $flagManager->checkFlag($flag, $defaultValue ? $defaultValue : (isset($flag['has_default']) && $flag['has_default'] ? $flag['default'] : null))['value'];
}
/**
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!