CodeBlockNode   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Importance

Changes 2
Bugs 1 Features 0
Metric Value
eloc 14
c 2
b 1
f 0
dl 0
loc 24
rs 10
wmc 4

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A toSyntax() 0 13 3
1
<?php
2
3
namespace dokuwiki\plugin\prosemirror\parser;
4
5
class CodeBlockNode extends Node
6
{
7
    protected $parent;
8
    protected $data;
9
10
    public function __construct($data, Node $parent)
11
    {
12
        $this->parent = &$parent;
13
        $this->data = $data;
14
    }
15
16
    public function toSyntax()
17
    {
18
        $openingTag = '<code';
19
        if (!empty($this->data['attrs']['data-language'])) {
20
            $openingTag .= ' ' . $this->data['attrs']['data-language'];
21
        } else {
22
            $openingTag .= ' -';
23
        }
24
        if (!empty($this->data['attrs']['data-filename'])) {
25
            $openingTag .= ' ' . $this->data['attrs']['data-filename'];
26
        }
27
        $openingTag .= '>';
28
        return $openingTag . "\n" . $this->data['content'][0]['text'] . "\n</code>";
29
    }
30
}
31