/**
  * ELEMENT Marker - Replicates element content
  *
  * [$CONTENT[{
  *	"el":"<elem's id>"
  * }]]
  *
  * @param  array
  * @return string
  */
 public static function ELEMENT($vars = array())
 {
     //Get variables from array $vars
     if (!empty($vars)) {
         extract($vars);
     }
     //Bind variables
     $_el = '';
     if (isset($el) and !empty($el)) {
         $_el = $el;
     }
     if (!empty($_el)) {
         //CACHE DATA
         if (CACHE) {
             $query = Cache::remember('page_element_' . $_el, function () use($_el) {
                 return $menu = CmsElement::find($_el);
             }, 1440);
         } else {
             $query = CmsElement::find($_el);
         }
         $txt = !empty($query) ? $query->text : '';
         return strlen($txt) > 0 ? self::decode($txt, array()) : $txt;
     }
 }
 public function post_clone_element()
 {
     if (Input::has('page_id') and Input::has('element_id') and Input::has('newpage_id')) {
         $pid = Input::get('page_id');
         $nid = Input::get('newpage_id');
         $eid = Input::get('element_id');
         $now = date('Y-m-d H:i:s');
         if (Input::has('to_clone')) {
             //CREATE NEW ELEMENT
             //GET ELEMENT MODEL
             $element = CmsElement::find($eid);
             $new_element_attr = array('author_id' => AUTHORID, 'name' => $element->name, 'label' => $element->label, 'text' => $element->text, 'zone' => $element->zone, 'lang' => LANG, 'is_valid' => 0);
             $new_element = new CmsElement($new_element_attr);
             $page = CmsPage::find($nid);
             $page->elements()->insert($new_element);
         } else {
             //GET ELEMENT MODEL
             $element = CmsElement::find($eid);
             $clone_array = array('cmselement_id' => $eid, 'cmspage_id' => $nid, 'created_at' => $now, 'updated_at' => $now);
             DB::table('elements_pages')->insert($clone_array);
         }
         Notification::success(LL('cms::alert.clone_element_success', CMSLANG, array('element' => $element->name)), 1500);
         return Redirect::to_action('cms::page', array(LANG));
     } else {
         Notification::error(LL('cms::alert.clone_element_error', CMSLANG), 1500);
         return Redirect::to_action('cms::page', array(LANG));
     }
 }
 public function post_order_element()
 {
     $order = Input::get('order');
     if (is_array($order)) {
         foreach ($order as $order_id => $item) {
             $order_id++;
             $p = explode("_", $item);
             $element = CmsElement::find($p[1]);
             $order = array('order_id' => $order_id);
             DB::table('elements_pages')->where_cmspage_id($p[0])->where_cmselement_id($p[1])->update($order);
         }
     }
     return true;
 }