Example #1
0
 function layers_too_light_then_dark($color, $factor = 30)
 {
     if ('#ffffff' == layers_hex_lighter($color, 96)) {
         $color = layers_hex_darker($color, $factor / 3);
     } else {
         $color = layers_hex_lighter($color, $factor);
     }
     return $color;
 }
 function layers_inline_button_styles($container_id = NULL, $type = 'background', $args = array())
 {
     // Auto text color based on background color
     if (isset($args['button']['background-color']) && NULL !== layers_is_light_or_dark($args['button']['background-color'])) {
         // temporarily darken the background color, so we only switch text color if very light
         $background_darker = layers_hex_darker($args['button']['background-color'], 28);
         if ('light' == layers_is_light_or_dark($background_darker)) {
             $args['button']['color'] = 'rgba(0,0,0,.85)';
         } else {
             if ('dark' == layers_is_light_or_dark($background_darker)) {
                 $args['button']['color'] = '#FFFFFF';
             }
         }
     }
     // Add styling for the standard colors
     layers_inline_styles($container_id, $type, $args);
     // Add styling for the hover colors
     if (isset($args['selectors'])) {
         if (!is_array($args['selectors'])) {
             // Make sure selectors is array if comma seperated string is passed
             $args['selectors'] = explode(',', $args['selectors']);
             $args['selectors'] = array_map('trim', $args['selectors']);
         }
         $hover_args = $args;
         foreach ($args['selectors'] as $selector) {
             $new_selectors[] = $selector . ':hover';
         }
         $hover_args['selectors'] = $new_selectors;
     }
     // Generate a lighter text background color
     if (isset($args['button']['background-color'])) {
         $hover_args['button']['background-color'] = layers_hex_lighter($args['button']['background-color']);
     }
     // Apply hover colors
     if (isset($hover_args)) {
         layers_inline_styles($container_id, $type, $hover_args);
     }
 }