method = 'post'; if($INFO['writable']) { $this->accesskey = 'e'; if(!empty($INFO['draft'])) { $this->type = 'draft'; $this->params['do'] = 'draft'; } else { $this->params['rev'] = $REV; if(!$INFO['exists']) { $this->type = 'create'; } } } else { if(!actionOK($this->type)) throw new \RuntimeException("action disabled: source"); $params['rev'] = $REV; $this->type = 'source'; $this->accesskey = 'v'; } } else { $this->params = array('do' => ''); $this->type = 'show'; $this->accesskey = 'v'; } $this->setIcon(); } /** * change the icon according to what type the edit button has */ protected function setIcon() { $icons = array( 'edit' => '01-edit_pencil.svg', 'create' => '02-create_pencil.svg', 'draft' => '03-draft_android-studio.svg', 'show' => '04-show_file-document.svg', 'source' => '05-source_file-xml.svg', ); if(isset($icons[$this->type])) { $this->svg = DOKU_INC . 'lib/images/menu/' . $icons[$this->type]; } } }