Flag expressions that have no side effects but are used as statements.
1 | 1 | var extend = require('deep-extend'); |
|
2 | |||
3 | /** |
||
4 | * includes/renders a pattern into current position |
||
5 | * (wraps Handlebars'/Panini's {{> ...}} helper) |
||
6 | * |
||
7 | */ |
||
8 | function patternLibary (options) { |
||
9 | |||
10 | var args = []; |
||
11 | var patternContent = ''; |
||
12 | var patternData = {}; |
||
13 | var patternName = false; |
||
14 | var result = ''; |
||
15 | |||
16 | 2 | if (arguments.length > 1) { |
|
17 | for (var i = 0; i < arguments.length; i++) { |
||
18 | 2 | if ( i != (arguments.length-1) ) { |
|
19 | args.push(arguments[i]) |
||
20 | } else { |
||
21 | options = arguments[arguments.length-1]; |
||
22 | } |
||
23 | } |
||
24 | } |
||
25 | |||
26 | 2 | if (typeof options.hash.atom != 'undefined') { |
|
27 | patternName = 'atom/'+options.hash.atom; |
||
28 | } |
||
29 | 2 | if (typeof options.hash.molecule != 'undefined') { |
|
30 | patternName = 'molecule/'+options.hash.molecule; |
||
31 | } |
||
32 | 2 | if (typeof options.hash.organism != 'undefined') { |
|
33 | patternName = 'organism/'+options.hash.organism; |
||
34 | } |
||
35 | 2 | if (typeof options.hash.page != 'undefined') { |
|
36 | patternName = 'page/'+options.hash.template; |
||
37 | } |
||
38 | |||
39 | 2 | if (patternName) { |
|
40 | args.push(patternName); |
||
41 | } |
||
42 | |||
43 | var $PL = options.data.root.Patternlibrary; |
||
44 | var patterns = $PL.getPatterns(); |
||
45 | |||
46 | for (var j = 0; j < args.length; j++) { |
||
47 | var thisPatternName = args[j]; |
||
48 | |||
49 | $PL.Panini.data.Patternlibrary = null; |
||
50 | extend(patternData, $PL.Panini.data); |
||
51 | $PL.Panini.data.Patternlibrary = $PL; |
||
52 | |||
53 | 2 | if (typeof patterns[thisPatternName] != 'undefined') { |
|
54 | patternContent = patterns[thisPatternName].body; |
||
55 | $PL.patternUsage(thisPatternName, options.data.root); |
||
56 | } else { |
||
57 | throw ('Patternlibrary error: pattern "'+thisPatternName+'" not found'); |
||
58 | } |
||
59 | |||
60 | options.data.root.Patternlibrary = null ; |
||
61 | extend(patternData, patterns[thisPatternName]); |
||
62 | extend(patternData, options.data.root); |
||
63 | extend(patternData, options.hash); |
||
64 | |||
65 | $PL.updateDataFile(); |
||
66 | options.data.root.Patternlibrary = $PL ; |
||
67 | |||
68 | try { |
||
69 | |||
70 | var layoutTemplate = $PL.Handlebars.compile('{{> body}}', {noEscape: true}); |
||
71 | var patternTemplate = $PL.Handlebars.compile(patternContent, {noEscape: true}); |
||
72 | |||
73 | $PL.Handlebars.registerPartial('body', patternTemplate); |
||
74 | var rendered = layoutTemplate(patternData); |
||
75 | |||
76 | result = ( new $PL.Panini.Handlebars.SafeString( rendered ) ); |
||
77 | |||
78 | } catch (err) { |
||
79 | this.$PL.warn('pattern Helper Error: ', err); |
||
80 | } |
||
81 | } |
||
82 | return (result); |
||
83 | |||
84 | } |
||
85 | |||
86 | module.exports = function () {}; // patternLibary; |
||
0 ignored issues
–
show
Unused Code
introduced
by
Loading history...
|