Widgets for SiteOrigin - Version 1.1.0

Version Description

  • December 3 2015 =
  • Cleaned up code and fixed bugs.
  • Updated scripts and styles.
  • Cleaned and updated widget forms.
  • Added links to widget documentation.
  • Added Media Box and Filter Accordion Widgets.
Download this release

Release Info

Developer iamadi
Plugin Icon 128x128 Widgets for SiteOrigin
Version 1.1.0
Comparing to
See all releases

Version 1.1.0

Files changed (100) hide show
  1. inc/enqueue.php +20 -0
  2. inc/functions.php +84 -0
  3. inc/visibility.php +58 -0
  4. languages/wpinked-widgets-en.po +1217 -0
  5. readme.txt +70 -0
  6. statics/admin.css +3 -0
  7. statics/bigplay-dark.svg +19 -0
  8. statics/controls-dark.svg +139 -0
  9. statics/defaults.css +302 -0
  10. statics/easing.js +205 -0
  11. statics/equalizer.js +104 -0
  12. statics/foundation.js +725 -0
  13. statics/mixitup.min.js +14 -0
  14. statics/modernizr.js +8 -0
  15. widgets-for-siteorigin.php +64 -0
  16. widgets/ink-alrt-widget/assets/banner.svg +17 -0
  17. widgets/ink-alrt-widget/ink-alrt-widget.php +163 -0
  18. widgets/ink-alrt-widget/scripts/alert.init.js +1 -0
  19. widgets/ink-alrt-widget/scripts/alert.js +43 -0
  20. widgets/ink-alrt-widget/styles/alert.css +44 -0
  21. widgets/ink-alrt-widget/styles/alert.less +68 -0
  22. widgets/ink-alrt-widget/tpl/alert.php +18 -0
  23. widgets/ink-ardn-widget/assets/banner.svg +17 -0
  24. widgets/ink-ardn-widget/ink-ardn-widget.php +236 -0
  25. widgets/ink-ardn-widget/scripts/accordion.init.js +1 -0
  26. widgets/ink-ardn-widget/scripts/accordion.js +125 -0
  27. widgets/ink-ardn-widget/styles/accordion.css +96 -0
  28. widgets/ink-ardn-widget/styles/accordion.less +44 -0
  29. widgets/ink-ardn-widget/tpl/accordion.php +42 -0
  30. widgets/ink-auds-widget/assets/banner.svg +21 -0
  31. widgets/ink-auds-widget/ink-auds-widget.php +225 -0
  32. widgets/ink-auds-widget/styles/audio-oembed.css +6 -0
  33. widgets/ink-auds-widget/styles/audio.css +80 -0
  34. widgets/ink-auds-widget/styles/audio.less +15 -0
  35. widgets/ink-auds-widget/tpl/audio.php +40 -0
  36. widgets/ink-blgs-widget/assets/banner.svg +23 -0
  37. widgets/ink-blgs-widget/ink-blgs-widget.php +570 -0
  38. widgets/ink-blgs-widget/scripts/equalizer.init.js +8 -0
  39. widgets/ink-blgs-widget/styles/blog.css +23 -0
  40. widgets/ink-blgs-widget/styles/button.less +159 -0
  41. widgets/ink-blgs-widget/styles/thumb-above.less +140 -0
  42. widgets/ink-blgs-widget/styles/thumb-behind.less +132 -0
  43. widgets/ink-blgs-widget/styles/thumb-left.less +140 -0
  44. widgets/ink-blgs-widget/styles/thumb-none.less +122 -0
  45. widgets/ink-blgs-widget/styles/thumb-right.less +140 -0
  46. widgets/ink-blgs-widget/tpl/thumb-above.php +153 -0
  47. widgets/ink-blgs-widget/tpl/thumb-behind.php +149 -0
  48. widgets/ink-blgs-widget/tpl/thumb-left.php +152 -0
  49. widgets/ink-blgs-widget/tpl/thumb-none.php +134 -0
  50. widgets/ink-blgs-widget/tpl/thumb-right.php +152 -0
  51. widgets/ink-btns-widget/assets/banner.svg +20 -0
  52. widgets/ink-btns-widget/ink-btns-widget.php +216 -0
  53. widgets/ink-btns-widget/styles/buttons.css +23 -0
  54. widgets/ink-btns-widget/styles/buttons.less +177 -0
  55. widgets/ink-btns-widget/tpl/buttons.php +24 -0
  56. widgets/ink-dvdr-widget/assets/banner.svg +19 -0
  57. widgets/ink-dvdr-widget/ink-dvdr-widget.php +115 -0
  58. widgets/ink-dvdr-widget/styles/divider.less +21 -0
  59. widgets/ink-dvdr-widget/tpl/divider.php +4 -0
  60. widgets/ink-fard-widget/assets/banner.svg +23 -0
  61. widgets/ink-fard-widget/ink-fard-widget.php +306 -0
  62. widgets/ink-fard-widget/scripts/filter.init.js +11 -0
  63. widgets/ink-fard-widget/styles/accordion.css +124 -0
  64. widgets/ink-fard-widget/styles/accordion.less +103 -0
  65. widgets/ink-fard-widget/tpl/accordion.php +55 -0
  66. widgets/ink-mbox-widget/assets/banner.svg +20 -0
  67. widgets/ink-mbox-widget/ink-mbox-widget.php +344 -0
  68. widgets/ink-mbox-widget/styles/media-box.css +25 -0
  69. widgets/ink-mbox-widget/styles/media-box.less +166 -0
  70. widgets/ink-mbox-widget/tpl/media-box.php +46 -0
  71. widgets/ink-prsn-widget/assets/banner.svg +18 -0
  72. widgets/ink-prsn-widget/ink-prsn-widget.php +243 -0
  73. widgets/ink-prsn-widget/styles/person.css +44 -0
  74. widgets/ink-prsn-widget/styles/person.less +52 -0
  75. widgets/ink-prsn-widget/tpl/person.php +48 -0
  76. widgets/ink-ptfl-widget/assets/banner.svg +23 -0
  77. widgets/ink-ptfl-widget/ink-ptfl-widget.php +223 -0
  78. widgets/ink-ptfl-widget/scripts/equalizer.init.js +5 -0
  79. widgets/ink-ptfl-widget/scripts/folio.js +9 -0
  80. widgets/ink-ptfl-widget/styles/folio.css +86 -0
  81. widgets/ink-ptfl-widget/styles/folio.less +134 -0
  82. widgets/ink-ptfl-widget/tpl/folio.php +93 -0
  83. widgets/ink-tabb-widget/assets/banner.svg +18 -0
  84. widgets/ink-tabb-widget/ink-tabb-widget.php +198 -0
  85. widgets/ink-tabb-widget/scripts/tabs.init.js +1 -0
  86. widgets/ink-tabb-widget/scripts/tabs.js +249 -0
  87. widgets/ink-tabb-widget/styles/tabs.css +100 -0
  88. widgets/ink-tabb-widget/styles/tabs.less +83 -0
  89. widgets/ink-tabb-widget/tpl/tabs.php +31 -0
  90. widgets/ink-tsml-widget/assets/banner.svg +22 -0
  91. widgets/ink-tsml-widget/ink-tsml-widget.php +188 -0
  92. widgets/ink-tsml-widget/styles/testimonial.css +21 -0
  93. widgets/ink-tsml-widget/styles/testimonial.less +42 -0
  94. widgets/ink-tsml-widget/tpl/testimonial.php +52 -0
  95. widgets/ink-vids-widget/assets/banner.svg +16 -0
  96. widgets/ink-vids-widget/ink-vids-widget.php +171 -0
  97. widgets/ink-vids-widget/styles/video-oembed.css +20 -0
  98. widgets/ink-vids-widget/styles/video.css +68 -0
  99. widgets/ink-vids-widget/styles/video.less +6 -0
  100. widgets/ink-vids-widget/tpl/video.php +26 -0
inc/enqueue.php ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // Enqueueing Backend CSS File
4
+ function wpinked_so_admin_style() {
5
+ wp_enqueue_style( 'iw-admin-style', plugin_dir_url( __FILE__ ) . '../statics/admin.css', array(), INKED_SO_WIDGETS );
6
+ }
7
+ add_action('admin_enqueue_scripts', 'wpinked_so_admin_style' );
8
+
9
+ // Register style sheet.
10
+ function wpinked_so_register_styles() {
11
+ // Registering Javascript Files
12
+ wp_register_script( 'iw-mixitup-js', plugin_dir_url(__FILE__) . '../statics/mixitup.min.js', array( 'jquery' ), INKED_SO_WIDGETS, true );
13
+ wp_register_script( 'iw-modernizr-js', plugin_dir_url(__FILE__) . '../statics/modernizr.js', array( ), INKED_SO_WIDGETS, false );
14
+ wp_register_script( 'iw-foundation-js', plugin_dir_url(__FILE__) . '../statics/foundation.js', array( 'jquery', 'iw-modernizr-js' ), INKED_SO_WIDGETS, true );
15
+ wp_register_script( 'iw-equalizer-js', plugin_dir_url(__FILE__) . '../statics/equalizer.js', array( 'iw-foundation-js' ), INKED_SO_WIDGETS, true );
16
+
17
+ // Enqueueing CSS Files
18
+ wp_enqueue_style( 'iw-defaults', plugin_dir_url(__FILE__) . '../statics/defaults.css', array(), INKED_SO_WIDGETS );
19
+ }
20
+ add_action( 'wp_enqueue_scripts', 'wpinked_so_register_styles' );
inc/functions.php ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ add_image_size( 'folio', 600, 400, true );
4
+
5
+
6
+ add_filter( 'wpinked_byline', 'wpinked_so_post_byline_filter' );
7
+
8
+ function wpinked_so_post_byline_filter( $byline ) {
9
+
10
+ $byline = str_replace( '%date%', '%1$s', $byline );
11
+ $byline = str_replace( '%category%', '%2$s', $byline );
12
+ $byline = str_replace( '%author%', '%3$s', $byline );
13
+ $byline = str_replace( '%comments%', '%4$s', $byline );
14
+
15
+ return $byline;
16
+ }
17
+
18
+ function wpinked_so_post_excerpt ( $limit, $after ) {
19
+
20
+ if ( $limit ) :
21
+
22
+ $excerpt = explode(' ', get_the_excerpt(), $limit);
23
+
24
+ if ( count($excerpt) >= $limit):
25
+ array_pop($excerpt);
26
+ $excerpt = implode(" ",$excerpt). $after;
27
+ else:
28
+ $excerpt = implode(" ",$excerpt);
29
+ endif;
30
+
31
+ else :
32
+
33
+ $excerpt = get_the_excerpt();
34
+
35
+ endif;
36
+
37
+ $excerpt = preg_replace('`\[[^\]]*\]`','',$excerpt);
38
+
39
+ echo $excerpt;
40
+
41
+ }
42
+
43
+ function wpinked_so_person_social ( $profiles, $align, $target ) {
44
+
45
+ if ( $profiles ) { ?>
46
+
47
+ <p class="iw-so-person-profiles <?php echo $align;?>">
48
+
49
+ <?php
50
+ $icon_styles = array();
51
+
52
+ foreach( $profiles as $index => $profile ) { ?>
53
+
54
+ <a href="<?php echo $profile['link']; ?>" target="<?php echo $target; ?>"><?php echo siteorigin_widget_get_icon( $profile['icon'], $icon_styles );?></a>
55
+
56
+ <?php } ?>
57
+
58
+ </p>
59
+
60
+ <?php }
61
+ }
62
+
63
+ function wpinked_so_testimonial_name ( $name, $company, $link, $target, $align ) {
64
+
65
+ if ( $name ) { ?>
66
+
67
+ <h4 class="iw-so-testimonial-name <?php echo $align; ?>"><?php echo $name; ?></h4>
68
+
69
+ <?php }
70
+
71
+ if ( $company ) { ?>
72
+
73
+ <h5 class="iw-so-testimonial-company <?php echo $align; ?>">
74
+
75
+ <?php if ( $link ) : ?>
76
+ <a target="<?php echo $target; ?>" href="<?php echo $link; ?>"><?php echo $company; ?></a>
77
+ <?php else : ?>
78
+ <?php echo $company; ?>
79
+ <?php endif; ?>
80
+ </h5>
81
+
82
+ <?php }
83
+
84
+ }
inc/visibility.php ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ // Adding Visibility fields to rows and widgets
3
+ add_filter( 'siteorigin_panels_row_style_fields', 'wpinked_so_visibility_fields' );
4
+ add_filter( 'siteorigin_panels_widget_style_fields', 'wpinked_so_visibility_fields' );
5
+
6
+ // Adding Visibility classes to rows and widgets
7
+ add_filter('siteorigin_panels_row_style_attributes', 'wpinked_so_visibility_attributes', 10, 2);
8
+ add_filter('siteorigin_panels_widget_style_attributes', 'wpinked_so_visibility_attributes', 10, 2);
9
+
10
+ // The functions that make it happen
11
+ function wpinked_so_visibility_fields($fields) {
12
+
13
+ $fields['iw-visible-screen'] = array(
14
+ 'name' => __('Visibility - By screen size', 'wpinked-widgets'),
15
+ 'type' => 'select',
16
+ 'group' => 'attributes',
17
+ 'default' => 'iw-all',
18
+ 'options' => array(
19
+ 'iw-all' => __( 'All', 'wpinked-widgets' ),
20
+ 'iw-small' => __( 'Small', 'wpinked-widgets' ),
21
+ 'iw-med-up' => __( 'Medium Up', 'wpinked-widgets' ),
22
+ 'iw-medium' => __( 'Medium', 'wpinked-widgets' ),
23
+ 'iw-med-dw' => __( 'Medium Down', 'wpinked-widgets' ),
24
+ 'iw-large' => __( 'Large', 'wpinked-widgets' )
25
+ ),
26
+ 'description' => __('Show by screen size.', 'wpinked-widgets'),
27
+ 'priority' => 12,
28
+ );
29
+
30
+ $fields['iw-visible-layout'] = array(
31
+ 'name' => __('Visibility - By screen layout', 'wpinked-widgets'),
32
+ 'type' => 'select',
33
+ 'group' => 'attributes',
34
+ 'default' => 'iw-all',
35
+ 'options' => array(
36
+ 'iw-all' => __( 'All', 'wpinked-widgets' ),
37
+ 'iw-show-p' => __( 'Show Portrait', 'wpinked-widgets' ),
38
+ 'iw-show-l' => __( 'Show Landscape', 'wpinked-widgets' ),
39
+ 'iw-hide-p' => __( 'Hide Portrait', 'wpinked-widgets' ),
40
+ 'iw-hide-l' => __( 'Hide Landscape', 'wpinked-widgets' )
41
+ ),
42
+ 'description' => __('Show based on screen orientation.', 'wpinked-widgets'),
43
+ 'priority' => 13,
44
+ );
45
+
46
+ return $fields;
47
+ }
48
+
49
+ function wpinked_so_visibility_attributes( $attributes, $args ) {
50
+ if( !empty( $args['iw-visible-screen'] ) && ( $args['iw-visible-screen'] !== 'iw-all' ) ) {
51
+ array_push($attributes['class'], $args['iw-visible-screen']);
52
+ }
53
+ if( !empty( $args['iw-visible-layout'] ) && ( $args['iw-visible-screen'] !== 'iw-all' ) ) {
54
+ array_push($attributes['class'], $args['iw-visible-layout']);
55
+ }
56
+
57
+ return $attributes;
58
+ }
languages/wpinked-widgets-en.po ADDED
@@ -0,0 +1,1217 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Widgets for SiteOrigin\n"
4
+ "POT-Creation-Date: 2015-11-02 04:58+0530\n"
5
+ "PO-Revision-Date: 2015-11-02 04:59+0530\n"
6
+ "Last-Translator: \n"
7
+ "Language-Team: \n"
8
+ "Language: en\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 1.7.3\n"
13
+ "X-Poedit-Basepath: ..\n"
14
+ "X-Poedit-SourceCharset: UTF-8\n"
15
+ "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
16
+ "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;"
17
+ "_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
18
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
+ "X-Poedit-SearchPath-0: .\n"
20
+ "X-Poedit-SearchPathExcluded-0: *.js\n"
21
+
22
+ #: inc/visibility.php:14
23
+ msgid "Visibility - By screen size"
24
+ msgstr ""
25
+
26
+ #: inc/visibility.php:19 inc/visibility.php:36
27
+ msgid "All"
28
+ msgstr ""
29
+
30
+ #: inc/visibility.php:20 widgets/ink-alrt-widget/ink-alrt-widget.php:113
31
+ #: widgets/ink-btns-widget/ink-btns-widget.php:141
32
+ msgid "Small"
33
+ msgstr ""
34
+
35
+ #: inc/visibility.php:21
36
+ msgid "Medium Up"
37
+ msgstr ""
38
+
39
+ #: inc/visibility.php:22 widgets/ink-blgs-widget/ink-blgs-widget.php:164
40
+ msgid "Medium"
41
+ msgstr ""
42
+
43
+ #: inc/visibility.php:23
44
+ msgid "Medium Down"
45
+ msgstr ""
46
+
47
+ #: inc/visibility.php:24 widgets/ink-alrt-widget/ink-alrt-widget.php:115
48
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:165
49
+ #: widgets/ink-btns-widget/ink-btns-widget.php:143
50
+ msgid "Large"
51
+ msgstr ""
52
+
53
+ #: inc/visibility.php:26
54
+ msgid "Show by screen size."
55
+ msgstr ""
56
+
57
+ #: inc/visibility.php:31
58
+ msgid "Visibility - By screen layout"
59
+ msgstr ""
60
+
61
+ #: inc/visibility.php:37
62
+ msgid "Show Portrait"
63
+ msgstr ""
64
+
65
+ #: inc/visibility.php:38
66
+ msgid "Show Landscape"
67
+ msgstr ""
68
+
69
+ #: inc/visibility.php:39
70
+ msgid "Hide Portrait"
71
+ msgstr ""
72
+
73
+ #: inc/visibility.php:40
74
+ msgid "Hide Landscape"
75
+ msgstr ""
76
+
77
+ #: inc/visibility.php:42
78
+ msgid "Show based on screen orientation."
79
+ msgstr ""
80
+
81
+ #: widgets-for-siteorigin.php:39
82
+ msgid "Widgets for SiteOrigin"
83
+ msgstr ""
84
+
85
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:18
86
+ msgid "Inked Alert"
87
+ msgstr ""
88
+
89
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:21
90
+ msgid "Communicate success, warnings, failure or just information."
91
+ msgstr ""
92
+
93
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:31
94
+ msgid "Message"
95
+ msgstr ""
96
+
97
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:37
98
+ msgid "Show Close Button ?"
99
+ msgstr ""
100
+
101
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:43
102
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:49
103
+ #: widgets/ink-btns-widget/ink-btns-widget.php:47
104
+ #: widgets/ink-btns-widget/ink-btns-widget.php:52
105
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:100
106
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:54
107
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:67
108
+ msgid "Icon"
109
+ msgstr ""
110
+
111
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:53
112
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:93
113
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:155
114
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:150
115
+ msgid "Icon Color"
116
+ msgstr ""
117
+
118
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:61
119
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:116
120
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:263
121
+ #: widgets/ink-btns-widget/ink-btns-widget.php:71
122
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:44
123
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:111
124
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:80
125
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:90
126
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:92
127
+ msgid "Styling"
128
+ msgstr ""
129
+
130
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:67
131
+ #: widgets/ink-btns-widget/ink-btns-widget.php:89
132
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:106
133
+ msgid "Theme"
134
+ msgstr ""
135
+
136
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:70
137
+ #: widgets/ink-btns-widget/ink-btns-widget.php:92
138
+ msgid "Classic"
139
+ msgstr ""
140
+
141
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:71
142
+ #: widgets/ink-btns-widget/ink-btns-widget.php:93
143
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:91
144
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:110
145
+ msgid "Flat"
146
+ msgstr ""
147
+
148
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:72
149
+ #: widgets/ink-btns-widget/ink-btns-widget.php:94
150
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:90
151
+ msgid "Outline"
152
+ msgstr ""
153
+
154
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:73
155
+ #: widgets/ink-btns-widget/ink-btns-widget.php:95
156
+ msgid "3D"
157
+ msgstr ""
158
+
159
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:74
160
+ #: widgets/ink-btns-widget/ink-btns-widget.php:96
161
+ msgid "Shadow"
162
+ msgstr ""
163
+
164
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:75
165
+ msgid "Modern"
166
+ msgstr ""
167
+
168
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:81
169
+ #: widgets/ink-auds-widget/ink-auds-widget.php:90
170
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:106
171
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:131
172
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:121
173
+ msgid "Background Color"
174
+ msgstr ""
175
+
176
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:87
177
+ #: widgets/ink-auds-widget/ink-auds-widget.php:113
178
+ msgid "Text Color"
179
+ msgstr ""
180
+
181
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:93
182
+ msgid "Close Color"
183
+ msgstr ""
184
+
185
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:99
186
+ #: widgets/ink-btns-widget/ink-btns-widget.php:125
187
+ msgid "Corners"
188
+ msgstr ""
189
+
190
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:102
191
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:115
192
+ #: widgets/ink-btns-widget/ink-btns-widget.php:128
193
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:131
194
+ msgid "Sharp"
195
+ msgstr ""
196
+
197
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:103
198
+ #: widgets/ink-btns-widget/ink-btns-widget.php:129
199
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:132
200
+ msgid "Slightly curved"
201
+ msgstr ""
202
+
203
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:104
204
+ #: widgets/ink-btns-widget/ink-btns-widget.php:130
205
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:133
206
+ msgid "Highly curved"
207
+ msgstr ""
208
+
209
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:110
210
+ #: widgets/ink-btns-widget/ink-btns-widget.php:137
211
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:57
212
+ msgid "Size"
213
+ msgstr ""
214
+
215
+ #: widgets/ink-alrt-widget/ink-alrt-widget.php:114
216
+ #: widgets/ink-btns-widget/ink-btns-widget.php:142
217
+ msgid "Standard"
218
+ msgstr ""
219
+
220
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:18
221
+ msgid "Inked Accordion"
222
+ msgstr ""
223
+
224
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:21
225
+ msgid "Expand and collapse content that is broken into logical sections."
226
+ msgstr ""
227
+
228
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:31
229
+ #: widgets/ink-auds-widget/ink-auds-widget.php:31
230
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:30
231
+ #: widgets/ink-vids-widget/ink-vids-widget.php:31
232
+ msgid "Admin Label"
233
+ msgstr ""
234
+
235
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:37
236
+ msgid "Settings"
237
+ msgstr ""
238
+
239
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:43
240
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:36
241
+ msgid "ID"
242
+ msgstr ""
243
+
244
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:44
245
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:37
246
+ msgid ""
247
+ "Should be unique on the page. Must begin with alphabets[A-Za-z]. Should not "
248
+ "contain spaces."
249
+ msgstr ""
250
+
251
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:50
252
+ msgid "Open multiple toggles simultaneously?"
253
+ msgstr ""
254
+
255
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:56
256
+ msgid "Close toggle only if another is open ?"
257
+ msgstr ""
258
+
259
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:62
260
+ msgid "Closed Toggle Icon"
261
+ msgstr ""
262
+
263
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:67
264
+ msgid "Open Toggle Icon."
265
+ msgstr ""
266
+
267
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:75
268
+ msgid "Toggles"
269
+ msgstr ""
270
+
271
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:76
272
+ msgid "Toggle"
273
+ msgstr ""
274
+
275
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:86
276
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:30
277
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:30
278
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:54
279
+ msgid "Title"
280
+ msgstr ""
281
+
282
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:92
283
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:60
284
+ msgid "Open by default ?"
285
+ msgstr ""
286
+
287
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:98
288
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:72
289
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:74
290
+ msgid "Content"
291
+ msgstr ""
292
+
293
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:122
294
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:119
295
+ msgid "Icon Location"
296
+ msgstr ""
297
+
298
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:125
299
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:135
300
+ #: widgets/ink-auds-widget/ink-auds-widget.php:167
301
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:410
302
+ #: widgets/ink-btns-widget/ink-btns-widget.php:80
303
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:194
304
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:112
305
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:123
306
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:122
307
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:130
308
+ msgid "Left"
309
+ msgstr ""
310
+
311
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:126
312
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:137
313
+ #: widgets/ink-auds-widget/ink-auds-widget.php:169
314
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:412
315
+ #: widgets/ink-btns-widget/ink-btns-widget.php:81
316
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:196
317
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:114
318
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:125
319
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:123
320
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:132
321
+ msgid "Right"
322
+ msgstr ""
323
+
324
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:132
325
+ #: widgets/ink-auds-widget/ink-auds-widget.php:164
326
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:191
327
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:120
328
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:127
329
+ msgid "Text Alignment"
330
+ msgstr ""
331
+
332
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:136
333
+ #: widgets/ink-auds-widget/ink-auds-widget.php:168
334
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:411
335
+ #: widgets/ink-btns-widget/ink-btns-widget.php:82
336
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:195
337
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:113
338
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:124
339
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:131
340
+ msgid "Center"
341
+ msgstr ""
342
+
343
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:143
344
+ msgid "Gap between toggles?"
345
+ msgstr ""
346
+
347
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:149
348
+ msgid "Title Background Color"
349
+ msgstr ""
350
+
351
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:155
352
+ msgid "Title Background Hover Color"
353
+ msgstr ""
354
+
355
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:161
356
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:363
357
+ msgid "Title Color"
358
+ msgstr ""
359
+
360
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:167
361
+ msgid "Title Hover Color"
362
+ msgstr ""
363
+
364
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:173
365
+ msgid "Icon Open Color"
366
+ msgstr ""
367
+
368
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:179
369
+ msgid "Icon Close Color"
370
+ msgstr ""
371
+
372
+ #: widgets/ink-ardn-widget/ink-ardn-widget.php:185
373
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:343
374
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:167
375
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:136
376
+ msgid "Content Background Color"
377
+ msgstr ""
378
+
379
+ #: widgets/ink-auds-widget/ink-auds-widget.php:18
380
+ msgid "Inked Audio"
381
+ msgstr ""
382
+
383
+ #: widgets/ink-auds-widget/ink-auds-widget.php:21
384
+ msgid "Play self or externally hosted audios."
385
+ msgstr ""
386
+
387
+ #: widgets/ink-auds-widget/ink-auds-widget.php:37
388
+ msgid "Audio"
389
+ msgstr ""
390
+
391
+ #: widgets/ink-auds-widget/ink-auds-widget.php:42
392
+ msgid "Audio Type"
393
+ msgstr ""
394
+
395
+ #: widgets/ink-auds-widget/ink-auds-widget.php:45
396
+ #: widgets/ink-vids-widget/ink-vids-widget.php:45
397
+ msgid "Self Hosted"
398
+ msgstr ""
399
+
400
+ #: widgets/ink-auds-widget/ink-auds-widget.php:46
401
+ #: widgets/ink-vids-widget/ink-vids-widget.php:46
402
+ msgid "oEmbed"
403
+ msgstr ""
404
+
405
+ #: widgets/ink-auds-widget/ink-auds-widget.php:57
406
+ msgid "Audio File"
407
+ msgstr ""
408
+
409
+ #: widgets/ink-auds-widget/ink-auds-widget.php:69
410
+ msgid "Background Image"
411
+ msgstr ""
412
+
413
+ #: widgets/ink-auds-widget/ink-auds-widget.php:81
414
+ msgid "oEmbed Audio URL"
415
+ msgstr ""
416
+
417
+ #: widgets/ink-auds-widget/ink-auds-widget.php:100
418
+ msgid "Background Opacity"
419
+ msgstr ""
420
+
421
+ #: widgets/ink-auds-widget/ink-auds-widget.php:123
422
+ #: widgets/ink-vids-widget/ink-vids-widget.php:89
423
+ msgid "Controls Theme"
424
+ msgstr ""
425
+
426
+ #: widgets/ink-auds-widget/ink-auds-widget.php:126
427
+ #: widgets/ink-vids-widget/ink-vids-widget.php:92
428
+ msgid "Light"
429
+ msgstr ""
430
+
431
+ #: widgets/ink-auds-widget/ink-auds-widget.php:127
432
+ #: widgets/ink-vids-widget/ink-vids-widget.php:93
433
+ msgid "Dark"
434
+ msgstr ""
435
+
436
+ #: widgets/ink-auds-widget/ink-auds-widget.php:137
437
+ msgid "Audio Name"
438
+ msgstr ""
439
+
440
+ #: widgets/ink-auds-widget/ink-auds-widget.php:146
441
+ msgid "Artist"
442
+ msgstr ""
443
+
444
+ #: widgets/ink-auds-widget/ink-auds-widget.php:155
445
+ msgid "Album"
446
+ msgstr ""
447
+
448
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:18
449
+ msgid "Inked Blog"
450
+ msgstr ""
451
+
452
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:21
453
+ msgid "A widget to display Blog posts."
454
+ msgstr ""
455
+
456
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:36
457
+ msgid "Select Posts"
458
+ msgstr ""
459
+
460
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:41
461
+ msgid "Post Format Icons"
462
+ msgstr ""
463
+
464
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:47
465
+ msgid "Standard Icon"
466
+ msgstr ""
467
+
468
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:52
469
+ msgid "Aside Icon"
470
+ msgstr ""
471
+
472
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:57
473
+ msgid "Gallery Icon"
474
+ msgstr ""
475
+
476
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:62
477
+ msgid "Link Icon"
478
+ msgstr ""
479
+
480
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:67
481
+ msgid "Image Icon"
482
+ msgstr ""
483
+
484
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:72
485
+ msgid "Quote Icon"
486
+ msgstr ""
487
+
488
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:76
489
+ msgid "Status Icon"
490
+ msgstr ""
491
+
492
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:80
493
+ msgid "Video Icon"
494
+ msgstr ""
495
+
496
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:84
497
+ msgid "Audio Icon"
498
+ msgstr ""
499
+
500
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:88
501
+ msgid "Chat Icon"
502
+ msgstr ""
503
+
504
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:99
505
+ msgid "Icon Size"
506
+ msgstr ""
507
+
508
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:101
509
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:318
510
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:338
511
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:358
512
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:371
513
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:384
514
+ msgid "Enter the units, eg: px, em, rem, ..."
515
+ msgstr ""
516
+
517
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:112
518
+ msgid "Background Corners"
519
+ msgstr ""
520
+
521
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:116
522
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:114
523
+ msgid "Curved"
524
+ msgstr ""
525
+
526
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:117
527
+ #: widgets/ink-btns-widget/ink-btns-widget.php:131
528
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:115
529
+ msgid "Round"
530
+ msgstr ""
531
+
532
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:123
533
+ msgid "Show Icon"
534
+ msgstr ""
535
+
536
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:126
537
+ msgid "Always"
538
+ msgstr ""
539
+
540
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:127
541
+ msgid "On Hover"
542
+ msgstr ""
543
+
544
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:137
545
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:117
546
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:42
547
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:98
548
+ msgid "Design"
549
+ msgstr ""
550
+
551
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:143
552
+ msgid "Layout"
553
+ msgstr ""
554
+
555
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:146
556
+ msgid "Image above the content"
557
+ msgstr ""
558
+
559
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:147
560
+ msgid "Image to the left of content"
561
+ msgstr ""
562
+
563
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:148
564
+ msgid "Image to the right of content"
565
+ msgstr ""
566
+
567
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:149
568
+ msgid "Image as content background"
569
+ msgstr ""
570
+
571
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:150
572
+ msgid "No Image"
573
+ msgstr ""
574
+
575
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:160
576
+ msgid "Image Size"
577
+ msgstr ""
578
+
579
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:163
580
+ msgid "Thumbnail"
581
+ msgstr ""
582
+
583
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:166
584
+ msgid "Full"
585
+ msgstr ""
586
+
587
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:175
588
+ msgid ""
589
+ "You can change the default size widths by going to <b>Settings</b> &rarr; "
590
+ "<b>Media</b>."
591
+ msgstr ""
592
+
593
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:180
594
+ msgid "Make Image fullwidth for small screens ?"
595
+ msgstr ""
596
+
597
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:193
598
+ msgid "Show Format Icon ?"
599
+ msgstr ""
600
+
601
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:206
602
+ msgid "Show Excerpt ?"
603
+ msgstr ""
604
+
605
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:212
606
+ msgid "Excerpt Length"
607
+ msgstr ""
608
+
609
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:218
610
+ msgid "After Excerpt"
611
+ msgstr ""
612
+
613
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:224
614
+ msgid "Byline above Title"
615
+ msgstr ""
616
+
617
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:226
618
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:233
619
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:240
620
+ msgid ""
621
+ "Use %date% : The Date, %category% : List of Categories, %author% : Author "
622
+ "name with link, %comments% : Number of Comments."
623
+ msgstr ""
624
+
625
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:231
626
+ msgid "Byline below Title"
627
+ msgstr ""
628
+
629
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:238
630
+ msgid "Byline after Excerpt"
631
+ msgstr ""
632
+
633
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:245
634
+ msgid "Text between Categories"
635
+ msgstr ""
636
+
637
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:251
638
+ msgid "Columns"
639
+ msgstr ""
640
+
641
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:269
642
+ msgid "Image Expands on hover ?"
643
+ msgstr ""
644
+
645
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:282
646
+ msgid "Image Overlay Color"
647
+ msgstr ""
648
+
649
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:295
650
+ msgid "Image Overlay Opacity"
651
+ msgstr ""
652
+
653
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:304
654
+ msgid "Choose a number between 0 and 1. 0 : Transparent, 1: Opaque"
655
+ msgstr ""
656
+
657
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:309
658
+ msgid "Text distance from the left"
659
+ msgstr ""
660
+
661
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:323
662
+ msgid "Gap between posts ?"
663
+ msgstr ""
664
+
665
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:336
666
+ msgid "Gap Below Posts"
667
+ msgstr ""
668
+
669
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:356
670
+ msgid "Title Font Size"
671
+ msgstr ""
672
+
673
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:369
674
+ msgid "Excerpt Font Size"
675
+ msgstr ""
676
+
677
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:376
678
+ msgid "Excerpt Color"
679
+ msgstr ""
680
+
681
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:382
682
+ msgid "Byline Font Size"
683
+ msgstr ""
684
+
685
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:389
686
+ msgid "Byline Color"
687
+ msgstr ""
688
+
689
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:395
690
+ msgid "Byline Links Color"
691
+ msgstr ""
692
+
693
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:401
694
+ #: widgets/ink-btns-widget/ink-btns-widget.php:103
695
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:148
696
+ msgid "Highlight Color"
697
+ msgstr ""
698
+
699
+ #: widgets/ink-blgs-widget/ink-blgs-widget.php:407
700
+ msgid "Text Align"
701
+ msgstr ""
702
+
703
+ #: widgets/ink-btns-widget/ink-btns-widget.php:18
704
+ msgid "Inked Buttons"
705
+ msgstr ""
706
+
707
+ #: widgets/ink-btns-widget/ink-btns-widget.php:21
708
+ msgid "The power of click!"
709
+ msgstr ""
710
+
711
+ #: widgets/ink-btns-widget/ink-btns-widget.php:31
712
+ msgid "Button text"
713
+ msgstr ""
714
+
715
+ #: widgets/ink-btns-widget/ink-btns-widget.php:36
716
+ msgid "Destination URL"
717
+ msgstr ""
718
+
719
+ #: widgets/ink-btns-widget/ink-btns-widget.php:42
720
+ msgid "Open in a new window"
721
+ msgstr ""
722
+
723
+ #: widgets/ink-btns-widget/ink-btns-widget.php:57
724
+ msgid "Location"
725
+ msgstr ""
726
+
727
+ #: widgets/ink-btns-widget/ink-btns-widget.php:60
728
+ msgid "Before Text"
729
+ msgstr ""
730
+
731
+ #: widgets/ink-btns-widget/ink-btns-widget.php:61
732
+ msgid "After Text"
733
+ msgstr ""
734
+
735
+ #: widgets/ink-btns-widget/ink-btns-widget.php:62
736
+ msgid "Above Text"
737
+ msgstr ""
738
+
739
+ #: widgets/ink-btns-widget/ink-btns-widget.php:77
740
+ msgid "Button Alignment"
741
+ msgstr ""
742
+
743
+ #: widgets/ink-btns-widget/ink-btns-widget.php:83
744
+ msgid "Full Width"
745
+ msgstr ""
746
+
747
+ #: widgets/ink-btns-widget/ink-btns-widget.php:97
748
+ msgid "Deline"
749
+ msgstr ""
750
+
751
+ #: widgets/ink-btns-widget/ink-btns-widget.php:108
752
+ msgid "Base Color"
753
+ msgstr ""
754
+
755
+ #: widgets/ink-btns-widget/ink-btns-widget.php:114
756
+ msgid "Use hover effect ?"
757
+ msgstr ""
758
+
759
+ #: widgets/ink-btns-widget/ink-btns-widget.php:120
760
+ msgid "Use click effect ?"
761
+ msgstr ""
762
+
763
+ #: widgets/ink-btns-widget/ink-btns-widget.php:140
764
+ msgid "Tiny"
765
+ msgstr ""
766
+
767
+ #: widgets/ink-btns-widget/ink-btns-widget.php:152
768
+ msgid "Attributes and SEO"
769
+ msgstr ""
770
+
771
+ #: widgets/ink-btns-widget/ink-btns-widget.php:157
772
+ msgid "Button ID"
773
+ msgstr ""
774
+
775
+ #: widgets/ink-btns-widget/ink-btns-widget.php:158
776
+ msgid "An ID attribute allows you to target this button in Javascript."
777
+ msgstr ""
778
+
779
+ #: widgets/ink-btns-widget/ink-btns-widget.php:163
780
+ msgid "Title attribute"
781
+ msgstr ""
782
+
783
+ #: widgets/ink-btns-widget/ink-btns-widget.php:164
784
+ msgid "Adds a title attribute to the button link."
785
+ msgstr ""
786
+
787
+ #: widgets/ink-btns-widget/ink-btns-widget.php:169
788
+ msgid "Onclick"
789
+ msgstr ""
790
+
791
+ #: widgets/ink-btns-widget/ink-btns-widget.php:170
792
+ msgid "Run this Javascript when the button is clicked. Ideal for tracking."
793
+ msgstr ""
794
+
795
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:18
796
+ msgid "Inked Divider"
797
+ msgstr ""
798
+
799
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:21
800
+ msgid "Draw seperators or create gaps in your page."
801
+ msgstr ""
802
+
803
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:31
804
+ msgid "Type"
805
+ msgstr ""
806
+
807
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:34
808
+ msgid "Gap"
809
+ msgstr ""
810
+
811
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:35
812
+ msgid "Single Line"
813
+ msgstr ""
814
+
815
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:36
816
+ msgid "Double Line"
817
+ msgstr ""
818
+
819
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:37
820
+ msgid "Dotted Line"
821
+ msgstr ""
822
+
823
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:38
824
+ msgid "Dashed Line"
825
+ msgstr ""
826
+
827
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:50
828
+ msgid "Color"
829
+ msgstr ""
830
+
831
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:51
832
+ msgid "Select the color of your divider."
833
+ msgstr ""
834
+
835
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:58
836
+ msgid ""
837
+ "Define the thickness of the divider. Enter the units, eg: px, em, rem, ..."
838
+ msgstr ""
839
+
840
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:64
841
+ msgid "Width"
842
+ msgstr ""
843
+
844
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:65
845
+ msgid "Enter the units, eg: px, em, rem, %, ..."
846
+ msgstr ""
847
+
848
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:71
849
+ msgid "Margin Top"
850
+ msgstr ""
851
+
852
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:72
853
+ msgid "Spacing above the divider. Enter the units, eg: px, em, rem, ..."
854
+ msgstr ""
855
+
856
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:78
857
+ msgid "Margin Bottom"
858
+ msgstr ""
859
+
860
+ #: widgets/ink-dvdr-widget/ink-dvdr-widget.php:79
861
+ msgid "Spacing below the divider. Enter the units, eg: px, em, rem, ..."
862
+ msgstr ""
863
+
864
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:18
865
+ msgid "Inked Person"
866
+ msgstr ""
867
+
868
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:21
869
+ msgid "Getting to know you better."
870
+ msgstr ""
871
+
872
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:31
873
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:31
874
+ msgid "Name"
875
+ msgstr ""
876
+
877
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:37
878
+ msgid "Person"
879
+ msgstr ""
880
+
881
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:43
882
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:43
883
+ msgid "Image"
884
+ msgstr ""
885
+
886
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:44
887
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:44
888
+ msgid "Choose image"
889
+ msgstr ""
890
+
891
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:45
892
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:45
893
+ msgid "Set image"
894
+ msgstr ""
895
+
896
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:52
897
+ msgid "Designation"
898
+ msgstr ""
899
+
900
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:58
901
+ msgid "About"
902
+ msgstr ""
903
+
904
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:67
905
+ msgid "Social"
906
+ msgstr ""
907
+
908
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:73
909
+ msgid "Open Link in"
910
+ msgstr ""
911
+
912
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:76
913
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:67
914
+ msgid "Same Window"
915
+ msgstr ""
916
+
917
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:77
918
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:68
919
+ msgid "New Window"
920
+ msgstr ""
921
+
922
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:83
923
+ msgid "Profiles"
924
+ msgstr ""
925
+
926
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:84
927
+ msgid "Profile"
928
+ msgstr ""
929
+
930
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:94
931
+ msgid "Link"
932
+ msgstr ""
933
+
934
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:120
935
+ msgid "Basic"
936
+ msgstr ""
937
+
938
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:121
939
+ msgid "Icons over image"
940
+ msgstr ""
941
+
942
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:122
943
+ msgid "About over image"
944
+ msgstr ""
945
+
946
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:128
947
+ msgid "Image Corners"
948
+ msgstr ""
949
+
950
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:134
951
+ msgid "Circle"
952
+ msgstr ""
953
+
954
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:140
955
+ msgid "Image Hover Overlay Color"
956
+ msgstr ""
957
+
958
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:146
959
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:143
960
+ msgid "Image Hover Opacity"
961
+ msgstr ""
962
+
963
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:161
964
+ msgid "Icon Hover Color"
965
+ msgstr ""
966
+
967
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:173
968
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:138
969
+ msgid "Name Color"
970
+ msgstr ""
971
+
972
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:179
973
+ msgid "Designation Color"
974
+ msgstr ""
975
+
976
+ #: widgets/ink-prsn-widget/ink-prsn-widget.php:185
977
+ msgid "About Color"
978
+ msgstr ""
979
+
980
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:18
981
+ msgid "Inked Portfolio"
982
+ msgstr ""
983
+
984
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:21
985
+ msgid "Show off your work."
986
+ msgstr ""
987
+
988
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:36
989
+ msgid "Select Projects"
990
+ msgstr ""
991
+
992
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:37
993
+ msgid ""
994
+ "Make sure that <b>Custom Post Types</b> module in active in Jetpack. Choose "
995
+ "<b>Projects</b> under post type"
996
+ msgstr ""
997
+
998
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:48
999
+ msgid "Enable Sorting ?"
1000
+ msgstr ""
1001
+
1002
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:55
1003
+ msgid "This will appear above the image, on hover."
1004
+ msgstr ""
1005
+
1006
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:60
1007
+ msgid "Number of Columns"
1008
+ msgstr ""
1009
+
1010
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:63
1011
+ msgid "1"
1012
+ msgstr ""
1013
+
1014
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:64
1015
+ msgid "2"
1016
+ msgstr ""
1017
+
1018
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:65
1019
+ msgid "3"
1020
+ msgstr ""
1021
+
1022
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:66
1023
+ msgid "4"
1024
+ msgstr ""
1025
+
1026
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:67
1027
+ msgid "5"
1028
+ msgstr ""
1029
+
1030
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:68
1031
+ msgid "6"
1032
+ msgstr ""
1033
+
1034
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:86
1035
+ msgid "Filter List Theme"
1036
+ msgstr ""
1037
+
1038
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:89
1039
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:113
1040
+ msgid "Minimal"
1041
+ msgstr ""
1042
+
1043
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:97
1044
+ msgid "Filter List Color"
1045
+ msgstr ""
1046
+
1047
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:103
1048
+ msgid "Filter List Highlight Color"
1049
+ msgstr ""
1050
+
1051
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:109
1052
+ msgid "Filter List Position"
1053
+ msgstr ""
1054
+
1055
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:137
1056
+ msgid "Image Hover Color"
1057
+ msgstr ""
1058
+
1059
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:145
1060
+ msgid "Choose a value between 0 and 1. 0: transparent 1: opaque"
1061
+ msgstr ""
1062
+
1063
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:156
1064
+ msgid "Project Name Color"
1065
+ msgstr ""
1066
+
1067
+ #: widgets/ink-ptfl-widget/ink-ptfl-widget.php:162
1068
+ msgid "Project Types Color"
1069
+ msgstr ""
1070
+
1071
+ #: widgets/ink-ptfl-widget/tpl/folio.php:18
1072
+ msgid "ALL"
1073
+ msgstr ""
1074
+
1075
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:18
1076
+ msgid "Inked Tabs"
1077
+ msgstr ""
1078
+
1079
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:21
1080
+ msgid "Organize and navigate multiple documents in a single container."
1081
+ msgstr ""
1082
+
1083
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:43
1084
+ msgid "Tabs"
1085
+ msgstr ""
1086
+
1087
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:44
1088
+ msgid "Tab"
1089
+ msgstr ""
1090
+
1091
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:62
1092
+ msgid "Check this for only one of the tabs."
1093
+ msgstr ""
1094
+
1095
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:96
1096
+ msgid "Oritentation"
1097
+ msgstr ""
1098
+
1099
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:99
1100
+ msgid "Horizontal"
1101
+ msgstr ""
1102
+
1103
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:100
1104
+ msgid "Vertical"
1105
+ msgstr ""
1106
+
1107
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:109
1108
+ msgid "Boxed"
1109
+ msgstr ""
1110
+
1111
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:111
1112
+ msgid "Underline"
1113
+ msgstr ""
1114
+
1115
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:112
1116
+ msgid "Overline"
1117
+ msgstr ""
1118
+
1119
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:124
1120
+ msgid "Above"
1121
+ msgstr ""
1122
+
1123
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:130
1124
+ msgid "Tab Background Color"
1125
+ msgstr ""
1126
+
1127
+ #: widgets/ink-tabb-widget/ink-tabb-widget.php:142
1128
+ msgid "Basic Color"
1129
+ msgstr ""
1130
+
1131
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:18
1132
+ msgid "Inked Testimonial"
1133
+ msgstr ""
1134
+
1135
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:21
1136
+ msgid "Highlight what your customers think of you."
1137
+ msgstr ""
1138
+
1139
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:37
1140
+ msgid "Testimonial"
1141
+ msgstr ""
1142
+
1143
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:52
1144
+ msgid "Company"
1145
+ msgstr ""
1146
+
1147
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:58
1148
+ msgid "Company Link"
1149
+ msgstr ""
1150
+
1151
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:64
1152
+ msgid "Target"
1153
+ msgstr ""
1154
+
1155
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:101
1156
+ msgid "Image Above"
1157
+ msgstr ""
1158
+
1159
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:102
1160
+ msgid "Image Below"
1161
+ msgstr ""
1162
+
1163
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:103
1164
+ msgid "Image Left"
1165
+ msgstr ""
1166
+
1167
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:104
1168
+ msgid "Image Right"
1169
+ msgstr ""
1170
+
1171
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:110
1172
+ msgid "Image Shape"
1173
+ msgstr ""
1174
+
1175
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:113
1176
+ msgid "Square"
1177
+ msgstr ""
1178
+
1179
+ #: widgets/ink-tsml-widget/ink-tsml-widget.php:144
1180
+ msgid "Company Color"
1181
+ msgstr ""
1182
+
1183
+ #: widgets/ink-vids-widget/ink-vids-widget.php:18
1184
+ msgid "Inked Video"
1185
+ msgstr ""
1186
+
1187
+ #: widgets/ink-vids-widget/ink-vids-widget.php:21
1188
+ msgid "Play self or externally hosted videos."
1189
+ msgstr ""
1190
+
1191
+ #: widgets/ink-vids-widget/ink-vids-widget.php:37
1192
+ msgid "Video"
1193
+ msgstr ""
1194
+
1195
+ #: widgets/ink-vids-widget/ink-vids-widget.php:42
1196
+ msgid "Video Type"
1197
+ msgstr ""
1198
+
1199
+ #: widgets/ink-vids-widget/ink-vids-widget.php:56
1200
+ msgid "Video File"
1201
+ msgstr ""
1202
+
1203
+ #: widgets/ink-vids-widget/ink-vids-widget.php:68
1204
+ msgid "Cover Image"
1205
+ msgstr ""
1206
+
1207
+ #: widgets/ink-vids-widget/ink-vids-widget.php:80
1208
+ msgid "oEmbed Video URL"
1209
+ msgstr ""
1210
+
1211
+ #: widgets/ink-vids-widget/ink-vids-widget.php:103
1212
+ msgid "Controller Background Color"
1213
+ msgstr ""
1214
+
1215
+ #: widgets/ink-vids-widget/ink-vids-widget.php:113
1216
+ msgid "Controller Background Opacity"
1217
+ msgstr ""
readme.txt ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ === Widgets for SiteOrigin ===
2
+ Contributors: iamadi
3
+ Tags: bundle, widget, button, alert, accordion, audio, video, blog, divider, person, portfolio, tabs, testimonial, siteorigin
4
+ Requires at least: 3.9
5
+ Tested up to: 4.3
6
+ Stable tag: 1.1.0
7
+ License: GPLv3 or later
8
+
9
+ A few more widgets to play around with. Built on top of the SiteOrigin Widgets Bundle.
10
+
11
+ == Description ==
12
+
13
+ A small collection of lightweight and responsive widgets that will enhance your [SiteOrigin](https://wordpress.org/plugins/siteorigin-panels/) powered Wordpress Sites.
14
+
15
+ The Widgets that are included:
16
+
17
+ * Blog Widget to display blog posts.
18
+ * Portfolio Widget to show off your work.
19
+ * Tabs Widget to organize and navigate content.
20
+ * Accordion Widget to breakup your content into logical sections.
21
+ * Filter Accordion to create animated sections of collapsable content.
22
+ * Audio Widget to play self or externally hosted audios.
23
+ * Video Widget to play self or externally hosted videos.
24
+ * Media Box to highlight important bits of info.
25
+ * Testimonial Widget to highlight what your customers think of you.
26
+ * Person Widget to get to know you better.
27
+ * Alert Widget to communicate success, warnings, failure or just information.
28
+ * Divider Widget to draw seperators or create gaps in your page.
29
+ * Button Widget to harness the power of click.
30
+
31
+ Additional Feature:
32
+
33
+ * Visibility to show/hide widgets and rows based on screen width and orientation.
34
+
35
+ This is all we have at the moment and hope to have much more in days to come.
36
+
37
+ Check out the <a target="_blank" href="http://demo.wpinked.com/">demos</a>.
38
+
39
+ Have a look at the <a target="_blank" href="http://docs.wpinked.com/">documentation</a>.
40
+
41
+ You can follow the progress of the project on <a target="_blank" href="https://github.com/adiraomj/widgets-for-siteorigin">Github</a>.
42
+
43
+ == Installation ==
44
+
45
+ Upload and install these plugins.
46
+
47
+ 1. [SiteOrigin Widgets Bundle](https://wordpress.org/plugins/so-widgets-bundle/). **Required**
48
+ 1. Widgets for SiteOrigin
49
+ 2. [Jetpack by WordPress.com](https://wordpress.org/plugins/jetpack/). **Optional** The portfolio widget is built using the **Custom Content Types** module. Activate if you are using the Portfolio Widget
50
+
51
+ == Screenshots ==
52
+
53
+ 1. Manage which widgets you want enabled or disabled.
54
+ 2. Control the visibility of your widgets and rows.
55
+
56
+ == Changelog ==
57
+
58
+ = 1.1.0 - December 3 2015 =
59
+ * Cleaned up code and fixed bugs.
60
+ * Updated scripts and styles.
61
+ * Cleaned and updated widget forms.
62
+ * Added links to widget documentation.
63
+ * Added Media Box and Filter Accordion Widgets.
64
+
65
+ = 1.0.1 - November 23 2015 =
66
+ * Cleaned up code and fixed bugs.
67
+ * Added excerpt link, Button and Full Content Option to the Blog Widget.
68
+
69
+ = 1.0.0 - October 26 2015 =
70
+ * Initial release.
statics/admin.css ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ .wpinked-widget {
2
+ color: #E74C3C !important;
3
+ }
statics/bigplay-dark.svg ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="81px" height="181px" viewBox="0 0 81 181" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>Slice 1</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="bigplay" sketch:type="MSLayerGroup" transform="translate(3.000000, 3.000000)">
9
+ <g id="dark" sketch:type="MSShapeGroup" opacity="0.75">
10
+ <path d="M59.5,36.5 L25.75,55.9856 L25.75,17.0144 L59.5,36.5 L59.5,36.5 Z" id="Polygon" fill="#333333"></path>
11
+ <path d="M0,37.5 C0,16.7891 16.7891,0 37.5,0 C58.2109,0 75,16.7891 75,37.5 C75,58.2109 58.2109,75 37.5,75 C16.7891,75 0,58.2109 0,37.5 L0,37.5 Z" id="Ellipse" stroke="#333333" stroke-width="5"></path>
12
+ </g>
13
+ <g id="light" transform="translate(0.000000, 100.000000)" sketch:type="MSShapeGroup">
14
+ <path d="M59.5,36.5 L25.75,55.9856 L25.75,17.0144 L59.5,36.5 L59.5,36.5 Z" id="Polygon2" fill="#333333"></path>
15
+ <path d="M0,37.5 C0,16.7891 16.7891,0 37.5,0 C58.2109,0 75,16.7891 75,37.5 C75,58.211 58.2109,75 37.5,75 C16.7891,75 0,58.211 0,37.5 L0,37.5 Z" id="Ellipse2" stroke="#333333" stroke-width="5"></path>
16
+ </g>
17
+ </g>
18
+ </g>
19
+ </svg>
statics/controls-dark.svg ADDED
@@ -0,0 +1,139 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="144px" height="32px" viewBox="0 0 144 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>controls-dark copy</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs>
7
+ <radialGradient cx="50%" cy="50%" fx="50%" fy="50%" r="50%" id="radialGradient-1">
8
+ <stop stop-color="#000000" offset="0%"></stop>
9
+ <stop stop-color="#F2F2F2" stop-opacity="0.2" offset="100%"></stop>
10
+ </radialGradient>
11
+ <linearGradient x1="50%" y1="-7.8652%" x2="50%" y2="249.6629%" id="linearGradient-2">
12
+ <stop stop-color="#000000" offset="0%"></stop>
13
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
14
+ </linearGradient>
15
+ <linearGradient x1="50%" y1="0%" x2="50%" y2="238.75%" id="linearGradient-3">
16
+ <stop stop-color="#000000" offset="0%"></stop>
17
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
18
+ </linearGradient>
19
+ <linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-4">
20
+ <stop stop-color="#000000" offset="0%"></stop>
21
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
22
+ </linearGradient>
23
+ <linearGradient x1="50%" y1="-33.3333%" x2="50%" y2="152.0833%" id="linearGradient-5">
24
+ <stop stop-color="#000000" offset="0%"></stop>
25
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
26
+ </linearGradient>
27
+ <linearGradient x1="40%" y1="-140%" x2="40%" y2="98.75%" id="linearGradient-6">
28
+ <stop stop-color="#000000" offset="0%"></stop>
29
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
30
+ </linearGradient>
31
+ <linearGradient x1="60%" y1="-140%" x2="60%" y2="98.75%" id="linearGradient-7">
32
+ <stop stop-color="#000000" offset="0%"></stop>
33
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
34
+ </linearGradient>
35
+ <linearGradient x1="50%" y1="0%" x2="50%" y2="298.4375%" id="linearGradient-8">
36
+ <stop stop-color="#000000" offset="0%"></stop>
37
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
38
+ </linearGradient>
39
+ <linearGradient x1="50%" y1="-200%" x2="50%" y2="100%" id="linearGradient-9">
40
+ <stop stop-color="#000000" offset="0%"></stop>
41
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
42
+ </linearGradient>
43
+ <linearGradient x1="50%" y1="-200%" x2="50%" y2="110.9375%" id="linearGradient-10">
44
+ <stop stop-color="#000000" offset="0%"></stop>
45
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
46
+ </linearGradient>
47
+ <linearGradient x1="55%" y1="0%" x2="55%" y2="100%" id="linearGradient-11">
48
+ <stop stop-color="#000000" offset="0%"></stop>
49
+ <stop stop-color="#C8C8C8" offset="100%"></stop>
50
+ </linearGradient>
51
+ <linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-12">
52
+ <stop stop-color="#000000" offset="0%"></stop>
53
+ <stop stop-color="#C8C8C8" offset="99.4444%"></stop>
54
+ </linearGradient>
55
+ </defs>
56
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
57
+ <g id="controls-dark" sketch:type="MSLayerGroup">
58
+ <g id="BG"></g>
59
+ <g id="controls" transform="translate(98.000000, 2.000000)" sketch:type="MSShapeGroup">
60
+ <path d="M0.5,5.5 L11.5,5.5" id="Line" stroke="#FFFFFF"></path>
61
+ <path d="M0.5,1.5 L11.5,1.5" id="Line2" stroke="#FFFFFF"></path>
62
+ <path d="M0.5,9.5 L11.5,9.5" id="Line3" stroke="#FFFFFF"></path>
63
+ <path d="M10,9.5 C10,8.6716 10.4477,8 11,8 C11.5523,8 12,8.6716 12,9.5 C12,10.3284 11.5523,11 11,11 C10.4477,11 10,10.3284 10,9.5 L10,9.5 Z" id="Ellipse" fill="#FFFFFF"></path>
64
+ <path d="M6,5.5 C6,4.6716 6.4477,4 7,4 C7.5523,4 8,4.6716 8,5.5 C8,6.3284 7.5523,7 7,7 C6.4477,7 6,6.3284 6,5.5 L6,5.5 Z" id="Ellipse2" fill="#FFFFFF"></path>
65
+ <path d="M10,1.5 C10,0.6716 10.4477,0 11,0 C11.5523,0 12,0.6716 12,1.5 C12,2.3284 11.5523,3 11,3 C10.4477,3 10,2.3284 10,1.5 L10,1.5 Z" id="Ellipse3" fill="#FFFFFF"></path>
66
+ </g>
67
+ <g id="backlight" transform="translate(81.000000, 3.000000)" sketch:type="MSShapeGroup">
68
+ <g id="off" transform="translate(2.000000, 18.000000)" stroke="#FFFFFF" fill="#333333">
69
+ <rect id="Rectangle-path" x="0" y="0" width="10" height="6"></rect>
70
+ </g>
71
+ <g id="on">
72
+ <path d="M0,5 C0,2.2385 3.134,0 7,0 C10.866,0 14,2.2385 14,5 C14,7.7615 10.866,10 7,10 C3.134,10 0,7.7615 0,5 L0,5 Z" id="Ellipse4" fill="url(#radialGradient-1)"></path>
73
+ <rect id="Rectangle-path" stroke="#FFFFFF" fill="#333333" x="2" y="2" width="10" height="6"></rect>
74
+ </g>
75
+ </g>
76
+ <g id="loop" transform="translate(66.000000, 2.000000)" sketch:type="MSShapeGroup">
77
+ <g id="on2">
78
+ <path d="M7.795,2.205 C9.2155,2.8785 10.2,4.3234 10.2,6 C10.2,8.3196 8.3196,10.2 6,10.2 C3.6804,10.2 1.8,8.3196 1.8,6 C1.8,4.3234 2.7845,2.8785 4.205,2.205 L2.875,0.875 C1.1501,1.9289 0,3.8306 0,6 C0,9.3138 2.6862,12 6,12 C9.3138,12 12,9.3138 12,6 C12,3.8306 10.8499,1.9289 9.125,0.875 L7.795,2.205 L7.795,2.205 Z" id="Shape" fill="url(#linearGradient-2)"></path>
79
+ <path d="M5,0 L0,0 L5,5 L5,0 L5,0 Z" id="Shape" fill="url(#linearGradient-3)"></path>
80
+ </g>
81
+ <g id="off2" transform="translate(0.000000, 16.000000)" fill="#A8A8B7">
82
+ <path d="M7.795,2.205 C9.2155,2.8785 10.2,4.3234 10.2,6 C10.2,8.3196 8.3196,10.2 6,10.2 C3.6804,10.2 1.8,8.3196 1.8,6 C1.8,4.3234 2.7845,2.8785 4.205,2.205 L2.875,0.875 C1.1501,1.9289 0,3.8306 0,6 C0,9.3138 2.6862,12 6,12 C9.3138,12 12,9.3138 12,6 C12,3.8306 10.8499,1.9289 9.125,0.875 L7.795,2.205 L7.795,2.205 Z" id="Shape"></path>
83
+ <path d="M5,0 L0,0 L5,5 L5,0 L5,0 Z" id="Shape"></path>
84
+ </g>
85
+ </g>
86
+ <g id="cc" transform="translate(49.000000, 2.000000)">
87
+ <rect id="Rectangle-path" stroke="#B0B0B0" sketch:type="MSShapeGroup" x="0" y="0" width="14" height="12"></rect>
88
+ <text fill="#FFFFFF" sketch:type="MSTextLayer" font-family="Arial" font-size="8.95104895" font-weight="normal">
89
+ <tspan x="0" y="15" fill="#000000">cc</tspan>
90
+ </text>
91
+ <path d="M6,5 C1.2813,1.7813 1.063,10.9405 6,8" id="Shape" stroke="#FFFFFF" sketch:type="MSShapeGroup"></path>
92
+ <path d="M11,5 C6.2813,1.7813 6.063,10.9405 11,8" id="Shape" stroke="#FFFFFF" sketch:type="MSShapeGroup"></path>
93
+ <path d="M1,1 L13,1 L13,11 L1,11 L1,1 L1,1 Z M0,0 L0,12 L14,12 L14,0 L0,0 L0,0 Z" id="Shape" fill="url(#linearGradient-4)" sketch:type="MSShapeGroup"></path>
94
+ <rect id="Rectangle-path" sketch:type="MSShapeGroup" x="0" y="0" width="14" height="12"></rect>
95
+ </g>
96
+ <g id="volume" transform="translate(17.000000, 2.000000)" sketch:type="MSShapeGroup">
97
+ <g id="no%20sound">
98
+ <rect id="Rectangle-path" fill="url(#linearGradient-5)" x="0" y="3" width="5" height="6"></rect>
99
+ <path d="M4,3 L8,0 L8,12 L4,9.0625 L4,3 L4,3 Z" id="Shape" fill="url(#linearGradient-4)"></path>
100
+ </g>
101
+ <g id="sound%20bars" transform="translate(0.000000, 15.000000)">
102
+ <rect id="Rectangle-path" fill="url(#linearGradient-5)" x="0" y="4" width="5" height="6"></rect>
103
+ <path d="M4,4 L8,1 L8,13 L4,10.0625 L4,4 L4,4 Z" id="Shape" fill="url(#linearGradient-4)"></path>
104
+ <path d="M10,1 C10,1 13.0625,0.375 13,7 C12.9375,13.625 10,13 10,13" id="Shape" stroke="#333333"></path>
105
+ <path d="M9,4.0079 C9,4.0079 11.041,3.6962 10.9994,7 C10.9577,10.3038 9,9.9921 9,9.9921" id="Shape" stroke="#333333"></path>
106
+ </g>
107
+ </g>
108
+ <g id="play/pause" transform="translate(3.000000, 3.000000)" fill="url(#linearGradient-4)" sketch:type="MSShapeGroup">
109
+ <g id="play">
110
+ <path d="M11,5.5 L0,11 L0,0 L11,5.5 L11,5.5 Z" id="Polygon"></path>
111
+ </g>
112
+ <g id="pause" transform="translate(0.000000, 15.000000)">
113
+ <rect id="Rectangle-path" x="0" y="0" width="3" height="12"></rect>
114
+ <rect id="Rectangle-path" x="7" y="0" width="3" height="12"></rect>
115
+ </g>
116
+ </g>
117
+ <g id="fullscreen" transform="translate(34.000000, 2.000000)" sketch:type="MSShapeGroup">
118
+ <g id="enter%201">
119
+ <path d="M0,0 L5,0 L0,5 L0,0 L0,0 Z" id="Shape" fill="url(#linearGradient-3)"></path>
120
+ <path d="M0,12 L5,12 L0,7 L0,12 L0,12 Z" id="Shape" fill="url(#linearGradient-6)"></path>
121
+ <path d="M12,0 L7,0 L12,5 L12,0 L12,0 Z" id="Shape" fill="url(#linearGradient-3)"></path>
122
+ <path d="M12,12 L7,12 L12,7 L12,12 L12,12 Z" id="Shape" fill="url(#linearGradient-7)"></path>
123
+ </g>
124
+ <g id="exit" transform="translate(0.000000, 16.000000)">
125
+ <path d="M8,4 L12,4 L8,0 L8,4 L8,4 Z" id="Shape" fill="url(#linearGradient-8)"></path>
126
+ <path d="M4,4 L4,0 L0,4 L4,4 L4,4 Z" id="Shape" fill="url(#linearGradient-3)"></path>
127
+ <path d="M4,8 L0,8 L4,12 L4,8 L4,8 Z" id="Shape" fill="url(#linearGradient-9)"></path>
128
+ <path d="M8,8 L8,12 L12,8 L8,8 L8,8 Z" id="Shape" fill="url(#linearGradient-10)"></path>
129
+ </g>
130
+ </g>
131
+ <g id="stop" transform="translate(115.000000, 3.000000)" fill="url(#linearGradient-11)" sketch:type="MSShapeGroup">
132
+ <rect id="Rectangle-path" x="0" y="0" width="10" height="10"></rect>
133
+ </g>
134
+ <g id="chooser" transform="translate(129.000000, 1.000000)" fill="url(#linearGradient-12)" sketch:type="MSShapeGroup">
135
+ <path d="M6.2346,5.1522 C7.2551,4.7295 8.4251,5.2141 8.8478,6.2346 C9.2704,7.2551 8.7859,8.425 7.7654,8.8478 C6.7449,9.2705 5.5749,8.7859 5.1522,7.7654 C4.7295,6.7449 5.2141,5.5749 6.2346,5.1522 L6.2346,5.1522 Z M4.2735,0.4176 L7,3.0054 L9.7265,0.4176 L9.8246,4.1754 L13.5824,4.2735 L10.9946,7 L13.5824,9.7265 L9.8246,9.8246 L9.7265,13.5824 L7,10.9946 L4.2735,13.5824 L4.1754,9.8246 L0.4176,9.7265 L3.0054,7 L0.4176,4.2735 L4.1754,4.1754 L4.2735,0.4176 L4.2735,0.4176 Z" id="Shape"></path>
136
+ </g>
137
+ </g>
138
+ </g>
139
+ </svg>
statics/defaults.css ADDED
@@ -0,0 +1,302 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ meta.foundation-version {
2
+ font-family: "/5.5.3/"; }
3
+ meta.foundation-mq-small {
4
+ font-family: "/only screen/";
5
+ width: 0; }
6
+ meta.foundation-mq-small-only {
7
+ font-family: "/only screen and (max-width: 40em)/";
8
+ width: 0; }
9
+ meta.foundation-mq-medium {
10
+ font-family: "/only screen and (min-width:40.0625em)/";
11
+ width: 40.0625em; }
12
+ meta.foundation-mq-medium-only {
13
+ font-family: "/only screen and (min-width:40.0625em) and (max-width:64em)/";
14
+ width: 40.0625em; }
15
+ meta.foundation-mq-large {
16
+ font-family: "/only screen and (min-width:64.0625em)/";
17
+ width: 64.0625em; }
18
+ meta.foundation-mq-large-only {
19
+ font-family: "/only screen and (min-width:64.0625em) and (max-width:90em)/";
20
+ width: 64.0625em; }
21
+ meta.foundation-mq-xlarge {
22
+ font-family: "/only screen and (min-width:90.0625em)/";
23
+ width: 90.0625em; }
24
+ meta.foundation-mq-xlarge-only {
25
+ font-family: "/only screen and (min-width:90.0625em) and (max-width:120em)/";
26
+ width: 90.0625em; }
27
+ meta.foundation-mq-xxlarge {
28
+ font-family: "/only screen and (min-width:120.0625em)/";
29
+ width: 120.0625em; }
30
+ meta.foundation-data-attribute-namespace {
31
+ font-family: false; }
32
+
33
+ .iw-row {
34
+ margin: 0 auto;
35
+ width: 100%; }
36
+ .iw-row:before, .iw-row:after {
37
+ content: " ";
38
+ display: table; }
39
+ .iw-row:after {
40
+ clear: both; }
41
+ .iw-row.iw-collapse > .iw-cols {
42
+ padding-left: 0;
43
+ padding-right: 0; }
44
+ .iw-row.iw-collapse .iw-row {
45
+ margin-left: 0;
46
+ margin-right: 0; }
47
+ .iw-row .iw-row {
48
+ margin: 0 -0.9375rem;
49
+ max-width: none;
50
+ width: auto; }
51
+ .iw-row .iw-row:before, .iw-row .iw-row:after {
52
+ content: " ";
53
+ display: table; }
54
+ .iw-row .iw-row:after {
55
+ clear: both; }
56
+ .iw-row .iw-row.iw-collapse {
57
+ margin: 0;
58
+ max-width: none;
59
+ width: auto; }
60
+ .iw-row .iw-row.iw-collapse:before, .iw-row .iw-row.iw-collapse:after {
61
+ content: " ";
62
+ display: table; }
63
+ .iw-row .iw-row.iw-collapse:after {
64
+ clear: both; }
65
+
66
+ .iw-cols {
67
+ padding-left: 0.9375rem;
68
+ padding-right: 0.9375rem;
69
+ width: 100%;
70
+ float: left;
71
+ box-sizing: border-box; }
72
+
73
+ @media only screen {
74
+ .iw-cols {
75
+ position: relative;
76
+ padding-left: 0.9375rem;
77
+ padding-right: 0.9375rem;
78
+ float: left; }
79
+ .iw-small-1 { width: 8.33333%; }
80
+ .iw-small-2 { width: 16.66667%; }
81
+ .iw-small-3 { width: 25%; }
82
+ .iw-small-4 { width: 33.33333%; }
83
+ .iw-small-5 { width: 41.66667%; }
84
+ .iw-small-6 { width: 50%; }
85
+ .iw-small-7 { width: 58.33333%; }
86
+ .iw-small-8 { width: 66.66667%; }
87
+ .iw-small-9 { width: 75%; }
88
+ .iw-small-10 { width: 83.33333%; }
89
+ .iw-small-11 { width: 91.66667%; }
90
+ .iw-small-12 { width: 100%; }
91
+ }
92
+
93
+ @media only screen and (min-width: 45.0625em) {
94
+ .iw-cols {
95
+ position: relative;
96
+ padding-left: 0.9375rem;
97
+ padding-right: 0.9375rem;
98
+ float: left; }
99
+ .iw-medium-1 { width: 8.33333%; }
100
+ .iw-medium-2 { width: 16.66667%; }
101
+ .iw-medium-3 { width: 25%; }
102
+ .iw-medium-4 { width: 33.33333%; }
103
+ .iw-medium-5 { width: 41.66667%; }
104
+ .iw-medium-6 { width: 50%; }
105
+ .iw-medium-7 { width: 58.33333%; }
106
+ .iw-medium-8 { width: 66.66667%; }
107
+ .iw-medium-9 { width: 75%; }
108
+ .iw-medium-10 { width: 83.33333%; }
109
+ .iw-medium-11 { width: 91.66667%; }
110
+ .iw-medium-12 { width: 100%; }
111
+ }
112
+
113
+ @media only screen and (min-width: 64.0625em) {
114
+ .iw-cols {
115
+ position: relative;
116
+ padding-left: 0.9375rem;
117
+ padding-right: 0.9375rem;
118
+ float: left; }
119
+ .iw-large-1 { width: 8.33333%; }
120
+ .iw-large-2 { width: 16.66667%; }
121
+ .iw-large-3 { width: 25%; }
122
+ .iw-large-4 { width: 33.33333%; }
123
+ .iw-large-5 { width: 41.66667%; }
124
+ .iw-large-6 { width: 50%; }
125
+ .iw-large-7 { width: 58.33333%; }
126
+ .iw-large-8 { width: 66.66667%; }
127
+ .iw-large-9 { width: 75%; }
128
+ .iw-large-10 { width: 83.33333%; }
129
+ .iw-large-11 { width: 91.66667%; }
130
+ .iw-large-12 { width: 100%; }
131
+ }
132
+
133
+ .iw-left { float: left !important; }
134
+ .iw-right { float: right !important; }
135
+ .iw-center { margin-right: auto; margin-left: auto; }
136
+
137
+ .iw-text-left { text-align: left !important; }
138
+ .iw-text-right { text-align: right !important; }
139
+ .iw-text-center { text-align: center !important; }
140
+ .iw-text-justify { text-align: justify !important; }
141
+
142
+ [class*="block-grid-"] { display: block; padding: 0; margin: 0 -0.625rem; }
143
+ [class*="block-grid-"]:before, [class*="block-grid-"]:after { content: " "; display: table; }
144
+ [class*="block-grid-"]:after { clear: both; }
145
+ [class*="block-grid-"] > li { display: block; float: left; height: auto; }
146
+
147
+ @media only screen {
148
+ .iw-small-block-grid-1 > li { list-style: none; width: 100%; }
149
+ .iw-small-block-grid-1 > li:nth-of-type(1n) { clear: none; }
150
+ .iw-small-block-grid-1 > li:nth-of-type(1n+1) { clear: both; }
151
+ .iw-small-block-grid-2 > li { list-style: none; width: 50%; }
152
+ .iw-small-block-grid-2 > li:nth-of-type(1n) { clear: none; }
153
+ .iw-small-block-grid-2 > li:nth-of-type(2n+1) { clear: both; }
154
+ .iw-small-block-grid-3 > li { list-style: none; width: 33.33333%; }
155
+ .iw-small-block-grid-3 > li:nth-of-type(1n) { clear: none; }
156
+ .iw-small-block-grid-3 > li:nth-of-type(3n+1) { clear: both; }
157
+ .iw-small-block-grid-4 > li { list-style: none; width: 25%; }
158
+ .iw-small-block-grid-4 > li:nth-of-type(1n) { clear: none; }
159
+ .iw-small-block-grid-4 > li:nth-of-type(4n+1) { clear: both; }
160
+ .iw-small-block-grid-5 > li { list-style: none; width: 20%; }
161
+ .iw-small-block-grid-5 > li:nth-of-type(1n) { clear: none; }
162
+ .iw-small-block-grid-5 > li:nth-of-type(5n+1) { clear: both; }
163
+ .iw-small-block-grid-6 > li { list-style: none; width: 16.66667%; }
164
+ .iw-small-block-grid-6 > li:nth-of-type(1n) { clear: none; }
165
+ .iw-small-block-grid-6 > li:nth-of-type(6n+1) { clear: both; }
166
+ .iw-small-block-grid-7 > li { list-style: none; width: 14.28571%; }
167
+ .iw-small-block-grid-7 > li:nth-of-type(1n) { clear: none; }
168
+ .iw-small-block-grid-7 > li:nth-of-type(7n+1) { clear: both; }
169
+ .iw-small-block-grid-8 > li { list-style: none; width: 12.5%; }
170
+ .iw-small-block-grid-8 > li:nth-of-type(1n) { clear: none; }
171
+ .iw-small-block-grid-8 > li:nth-of-type(8n+1) { clear: both; }
172
+ .iw-small-block-grid-9 > li { list-style: none; width: 11.11111%; }
173
+ .iw-small-block-grid-9 > li:nth-of-type(1n) { clear: none; }
174
+ .iw-small-block-grid-9 > li:nth-of-type(9n+1) { clear: both; }
175
+ .iw-small-block-grid-10 > li { list-style: none; width: 10%; }
176
+ .iw-small-block-grid-10 > li:nth-of-type(1n) { clear: none; }
177
+ .iw-small-block-grid-10 > li:nth-of-type(10n+1) { clear: both; }
178
+ .iw-small-block-grid-11 > li { list-style: none; width: 9.09091%; }
179
+ .iw-small-block-grid-11 > li:nth-of-type(1n) { clear: none; }
180
+ .iw-small-block-grid-11 > li:nth-of-type(11n+1) { clear: both; }
181
+ .iw-small-block-grid-12 > li { list-style: none; width: 8.33333%; }
182
+ .iw-small-block-grid-12 > li:nth-of-type(1n) { clear: none; }
183
+ .iw-small-block-grid-12 > li:nth-of-type(12n+1) { clear: both; }
184
+ }
185
+ @media only screen and (min-width: 45.0625em) {
186
+ .iw-medium-block-grid-1 > li { list-style: none; width: 100%; }
187
+ .iw-medium-block-grid-1 > li:nth-of-type(1n) { clear: none; }
188
+ .iw-medium-block-grid-1 > li:nth-of-type(1n+1) { clear: both; }
189
+ .iw-medium-block-grid-2 > li { list-style: none; width: 50%; }
190
+ .iw-medium-block-grid-2 > li:nth-of-type(1n) { clear: none; }
191
+ .iw-medium-block-grid-2 > li:nth-of-type(2n+1) { clear: both; }
192
+ .iw-medium-block-grid-3 > li { list-style: none; width: 33.33333%; }
193
+ .iw-medium-block-grid-3 > li:nth-of-type(1n) { clear: none; }
194
+ .iw-medium-block-grid-3 > li:nth-of-type(3n+1) { clear: both; }
195
+ .iw-medium-block-grid-4 > li { list-style: none; width: 25%; }
196
+ .iw-medium-block-grid-4 > li:nth-of-type(1n) { clear: none; }
197
+ .iw-medium-block-grid-4 > li:nth-of-type(4n+1) { clear: both; }
198
+ .iw-medium-block-grid-5 > li { list-style: none; width: 20%; }
199
+ .iw-medium-block-grid-5 > li:nth-of-type(1n) { clear: none; }
200
+ .iw-medium-block-grid-5 > li:nth-of-type(5n+1) { clear: both; }
201
+ .iw-medium-block-grid-6 > li { list-style: none; width: 16.66667%; }
202
+ .iw-medium-block-grid-6 > li:nth-of-type(1n) { clear: none; }
203
+ .iw-medium-block-grid-6 > li:nth-of-type(6n+1) { clear: both; }
204
+ .iw-medium-block-grid-7 > li { list-style: none; width: 14.28571%; }
205
+ .iw-medium-block-grid-7 > li:nth-of-type(1n) { clear: none; }
206
+ .iw-medium-block-grid-7 > li:nth-of-type(7n+1) { clear: both; }
207
+ .iw-medium-block-grid-8 > li { list-style: none; width: 12.5%; }
208
+ .iw-medium-block-grid-8 > li:nth-of-type(1n) { clear: none; }
209
+ .iw-medium-block-grid-8 > li:nth-of-type(8n+1) { clear: both; }
210
+ .iw-medium-block-grid-9 > li { list-style: none; width: 11.11111%; }
211
+ .iw-medium-block-grid-9 > li:nth-of-type(1n) { clear: none; }
212
+ .iw-medium-block-grid-9 > li:nth-of-type(9n+1) { clear: both; }
213
+ .iw-medium-block-grid-10 > li { list-style: none; width: 10%; }
214
+ .iw-medium-block-grid-10 > li:nth-of-type(1n) { clear: none; }
215
+ .iw-medium-block-grid-10 > li:nth-of-type(10n+1) { clear: both; }
216
+ .iw-medium-block-grid-11 > li { list-style: none; width: 9.09091%; }
217
+ .iw-medium-block-grid-11 > li:nth-of-type(1n) { clear: none; }
218
+ .iw-medium-block-grid-11 > li:nth-of-type(11n+1) { clear: both; }
219
+ .iw-medium-block-grid-12 > li { list-style: none; width: 8.33333%; }
220
+ .iw-medium-block-grid-12 > li:nth-of-type(1n) { clear: none; }
221
+ .iw-medium-block-grid-12 > li:nth-of-type(12n+1) { clear: both; }
222
+ }
223
+ @media only screen and (min-width: 64.0625em) {
224
+ .iw-large-block-grid-1 > li { list-style: none; width: 100%; }
225
+ .iw-large-block-grid-1 > li:nth-of-type(1n) { clear: none; }
226
+ .iw-large-block-grid-1 > li:nth-of-type(1n+1) { clear: both; }
227
+ .iw-large-block-grid-2 > li { list-style: none; width: 50%; }
228
+ .iw-large-block-grid-2 > li:nth-of-type(1n) { clear: none; }
229
+ .iw-large-block-grid-2 > li:nth-of-type(2n+1) { clear: both; }
230
+ .iw-large-block-grid-3 > li { list-style: none; width: 33.33333%; }
231
+ .iw-large-block-grid-3 > li:nth-of-type(1n) { clear: none; }
232
+ .iw-large-block-grid-3 > li:nth-of-type(3n+1) { clear: both; }
233
+ .iw-large-block-grid-4 > li { list-style: none; width: 25%; }
234
+ .iw-large-block-grid-4 > li:nth-of-type(1n) { clear: none; }
235
+ .iw-large-block-grid-4 > li:nth-of-type(4n+1) { clear: both; }
236
+ .iw-large-block-grid-5 > li { list-style: none; width: 20%; }
237
+ .iw-large-block-grid-5 > li:nth-of-type(1n) { clear: none; }
238
+ .iw-large-block-grid-5 > li:nth-of-type(5n+1) { clear: both; }
239
+ .iw-large-block-grid-6 > li { list-style: none; width: 16.66667%; }
240
+ .iw-large-block-grid-6 > li:nth-of-type(1n) { clear: none; }
241
+ .iw-large-block-grid-6 > li:nth-of-type(6n+1) { clear: both; }
242
+ .iw-large-block-grid-7 > li { list-style: none; width: 14.28571%; }
243
+ .iw-large-block-grid-7 > li:nth-of-type(1n) { clear: none; }
244
+ .iw-large-block-grid-7 > li:nth-of-type(7n+1) { clear: both; }
245
+ .iw-large-block-grid-8 > li { list-style: none; width: 12.5%; }
246
+ .iw-large-block-grid-8 > li:nth-of-type(1n) { clear: none; }
247
+ .iw-large-block-grid-8 > li:nth-of-type(8n+1) { clear: both; }
248
+ .iw-large-block-grid-9 > li { list-style: none; width: 11.11111%; }
249
+ .iw-large-block-grid-9 > li:nth-of-type(1n) { clear: none; }
250
+ .iw-large-block-grid-9 > li:nth-of-type(9n+1) { clear: both; }
251
+ .iw-large-block-grid-10 > li { list-style: none; width: 10%; }
252
+ .iw-large-block-grid-10 > li:nth-of-type(1n) { clear: none; }
253
+ .iw-large-block-grid-10 > li:nth-of-type(10n+1) { clear: both; }
254
+ .iw-large-block-grid-11 > li { list-style: none; width: 9.09091%; }
255
+ .iw-large-block-grid-11 > li:nth-of-type(1n) { clear: none; }
256
+ .iw-large-block-grid-11 > li:nth-of-type(11n+1) { clear: both; }
257
+ .iw-large-block-grid-12 > li { list-style: none; width: 8.33333%; }
258
+ .iw-large-block-grid-12 > li:nth-of-type(1n) { clear: none; }
259
+ .iw-large-block-grid-12 > li:nth-of-type(12n+1) { clear: both; }
260
+ }
261
+
262
+ /* small displays */
263
+ @media only screen {
264
+ .iw-small, .iw-med-dw { display: inherit !important; }
265
+ .iw-med-up, .iw-medium, .iw-large { display: none !important; }
266
+ }
267
+
268
+ /* medium displays */
269
+ @media only screen and (min-width: 640px) {
270
+ .iw-med-dw, .iw-med-up, .iw-medium{ display: inherit !important; }
271
+ .iw-small, .iw-large { display: none !important; }
272
+ }
273
+
274
+ /* large displays */
275
+ @media only screen and (min-width: 1024px) {
276
+ .iw-med-up, .iw-large { display: inherit !important; }
277
+ .iw-small, .iw-med-dw, .iw-medium { display: none !important; }
278
+ }
279
+
280
+ /* Orientation targeting */
281
+ .iw-show-l, .iw-hide-p {
282
+ display: inherit !important; }
283
+
284
+ .iw-hide-l,
285
+ .iw-show-p {
286
+ display: none !important; }
287
+ @media only screen and (orientation: landscape) {
288
+ .iw-show-l,
289
+ .iw-hide-p {
290
+ display: inherit !important; }
291
+
292
+ .iw-hide-l,
293
+ .iw-show-p {
294
+ display: none !important; } }
295
+ @media only screen and (orientation: portrait) {
296
+ .iw-show-p,
297
+ .iw-hide-l {
298
+ display: inherit !important; }
299
+
300
+ .iw-hide-p,
301
+ .iw-show-l {
302
+ display: none !important; } }
statics/easing.js ADDED
@@ -0,0 +1,205 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
3
+ *
4
+ * Uses the built in easing capabilities added In jQuery 1.1
5
+ * to offer multiple easing options
6
+ *
7
+ * TERMS OF USE - jQuery Easing
8
+ *
9
+ * Open source under the BSD License.
10
+ *
11
+ * Copyright © 2008 George McGinley Smith
12
+ * All rights reserved.
13
+ *
14
+ * Redistribution and use in source and binary forms, with or without modification,
15
+ * are permitted provided that the following conditions are met:
16
+ *
17
+ * Redistributions of source code must retain the above copyright notice, this list of
18
+ * conditions and the following disclaimer.
19
+ * Redistributions in binary form must reproduce the above copyright notice, this list
20
+ * of conditions and the following disclaimer in the documentation and/or other materials
21
+ * provided with the distribution.
22
+ *
23
+ * Neither the name of the author nor the names of contributors may be used to endorse
24
+ * or promote products derived from this software without specific prior written permission.
25
+ *
26
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
27
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
28
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
29
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
30
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
31
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
32
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
33
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
34
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
35
+ *
36
+ */
37
+
38
+ // t: current time, b: begInnIng value, c: change In value, d: duration
39
+ jQuery.easing['jswing'] = jQuery.easing['swing'];
40
+
41
+ jQuery.extend( jQuery.easing,
42
+ {
43
+ def: 'easeOutQuad',
44
+ swing: function (x, t, b, c, d) {
45
+ //alert(jQuery.easing.default);
46
+ return jQuery.easing[jQuery.easing.def](x, t, b, c, d);
47
+ },
48
+ easeInQuad: function (x, t, b, c, d) {
49
+ return c*(t/=d)*t + b;
50
+ },
51
+ easeOutQuad: function (x, t, b, c, d) {
52
+ return -c *(t/=d)*(t-2) + b;
53
+ },
54
+ easeInOutQuad: function (x, t, b, c, d) {
55
+ if ((t/=d/2) < 1) return c/2*t*t + b;
56
+ return -c/2 * ((--t)*(t-2) - 1) + b;
57
+ },
58
+ easeInCubic: function (x, t, b, c, d) {
59
+ return c*(t/=d)*t*t + b;
60
+ },
61
+ easeOutCubic: function (x, t, b, c, d) {
62
+ return c*((t=t/d-1)*t*t + 1) + b;
63
+ },
64
+ easeInOutCubic: function (x, t, b, c, d) {
65
+ if ((t/=d/2) < 1) return c/2*t*t*t + b;
66
+ return c/2*((t-=2)*t*t + 2) + b;
67
+ },
68
+ easeInQuart: function (x, t, b, c, d) {
69
+ return c*(t/=d)*t*t*t + b;
70
+ },
71
+ easeOutQuart: function (x, t, b, c, d) {
72
+ return -c * ((t=t/d-1)*t*t*t - 1) + b;
73
+ },
74
+ easeInOutQuart: function (x, t, b, c, d) {
75
+ if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
76
+ return -c/2 * ((t-=2)*t*t*t - 2) + b;
77
+ },
78
+ easeInQuint: function (x, t, b, c, d) {
79
+ return c*(t/=d)*t*t*t*t + b;
80
+ },
81
+ easeOutQuint: function (x, t, b, c, d) {
82
+ return c*((t=t/d-1)*t*t*t*t + 1) + b;
83
+ },
84
+ easeInOutQuint: function (x, t, b, c, d) {
85
+ if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
86
+ return c/2*((t-=2)*t*t*t*t + 2) + b;
87
+ },
88
+ easeInSine: function (x, t, b, c, d) {
89
+ return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
90
+ },
91
+ easeOutSine: function (x, t, b, c, d) {
92
+ return c * Math.sin(t/d * (Math.PI/2)) + b;
93
+ },
94
+ easeInOutSine: function (x, t, b, c, d) {
95
+ return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
96
+ },
97
+ easeInExpo: function (x, t, b, c, d) {
98
+ return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
99
+ },
100
+ easeOutExpo: function (x, t, b, c, d) {
101
+ return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
102
+ },
103
+ easeInOutExpo: function (x, t, b, c, d) {
104
+ if (t==0) return b;
105
+ if (t==d) return b+c;
106
+ if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
107
+ return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
108
+ },
109
+ easeInCirc: function (x, t, b, c, d) {
110
+ return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
111
+ },
112
+ easeOutCirc: function (x, t, b, c, d) {
113
+ return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
114
+ },
115
+ easeInOutCirc: function (x, t, b, c, d) {
116
+ if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
117
+ return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
118
+ },
119
+ easeInElastic: function (x, t, b, c, d) {
120
+ var s=1.70158;var p=0;var a=c;
121
+ if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
122
+ if (a < Math.abs(c)) { a=c; var s=p/4; }
123
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
124
+ return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
125
+ },
126
+ easeOutElastic: function (x, t, b, c, d) {
127
+ var s=1.70158;var p=0;var a=c;
128
+ if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
129
+ if (a < Math.abs(c)) { a=c; var s=p/4; }
130
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
131
+ return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
132
+ },
133
+ easeInOutElastic: function (x, t, b, c, d) {
134
+ var s=1.70158;var p=0;var a=c;
135
+ if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5);
136
+ if (a < Math.abs(c)) { a=c; var s=p/4; }
137
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
138
+ if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
139
+ return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
140
+ },
141
+ easeInBack: function (x, t, b, c, d, s) {
142
+ if (s == undefined) s = 1.70158;
143
+ return c*(t/=d)*t*((s+1)*t - s) + b;
144
+ },
145
+ easeOutBack: function (x, t, b, c, d, s) {
146
+ if (s == undefined) s = 1.70158;
147
+ return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
148
+ },
149
+ easeInOutBack: function (x, t, b, c, d, s) {
150
+ if (s == undefined) s = 1.70158;
151
+ if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
152
+ return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
153
+ },
154
+ easeInBounce: function (x, t, b, c, d) {
155
+ return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b;
156
+ },
157
+ easeOutBounce: function (x, t, b, c, d) {
158
+ if ((t/=d) < (1/2.75)) {
159
+ return c*(7.5625*t*t) + b;
160
+ } else if (t < (2/2.75)) {
161
+ return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
162
+ } else if (t < (2.5/2.75)) {
163
+ return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
164
+ } else {
165
+ return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
166
+ }
167
+ },
168
+ easeInOutBounce: function (x, t, b, c, d) {
169
+ if (t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
170
+ return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
171
+ }
172
+ });
173
+
174
+ /*
175
+ *
176
+ * TERMS OF USE - EASING EQUATIONS
177
+ *
178
+ * Open source under the BSD License.
179
+ *
180
+ * Copyright © 2001 Robert Penner
181
+ * All rights reserved.
182
+ *
183
+ * Redistribution and use in source and binary forms, with or without modification,
184
+ * are permitted provided that the following conditions are met:
185
+ *
186
+ * Redistributions of source code must retain the above copyright notice, this list of
187
+ * conditions and the following disclaimer.
188
+ * Redistributions in binary form must reproduce the above copyright notice, this list
189
+ * of conditions and the following disclaimer in the documentation and/or other materials
190
+ * provided with the distribution.
191
+ *
192
+ * Neither the name of the author nor the names of contributors may be used to endorse
193
+ * or promote products derived from this software without specific prior written permission.
194
+ *
195
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
196
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
197
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
198
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
199
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
200
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
201
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
202
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
203
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
204
+ *
205
+ */
statics/equalizer.js ADDED
@@ -0,0 +1,104 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ;(function ($, window, document, undefined) {
2
+ 'use strict';
3
+
4
+ Foundation.libs.equalizer = {
5
+ name : 'equalizer',
6
+
7
+ version : '5.5.3',
8
+
9
+ settings : {
10
+ use_tallest : true,
11
+ before_height_change : $.noop,
12
+ after_height_change : $.noop,
13
+ equalize_on_stack : false,
14
+ act_on_hidden_el: false
15
+ },
16
+
17
+ init : function (scope, method, options) {
18
+ Foundation.inherit(this, 'image_loaded');
19
+ this.bindings(method, options);
20
+ this.reflow();
21
+ },
22
+
23
+ events : function () {
24
+ this.S(window).off('.equalizer').on('resize.fndtn.equalizer', function (e) {
25
+ this.reflow();
26
+ }.bind(this));
27
+ },
28
+
29
+ equalize : function (equalizer) {
30
+ var isStacked = false,
31
+ group = equalizer.data('equalizer'),
32
+ settings = equalizer.data(this.attr_name(true)+'-init') || this.settings,
33
+ vals,
34
+ firstTopOffset;
35
+
36
+ if (settings.act_on_hidden_el) {
37
+ vals = group ? equalizer.find('['+this.attr_name()+'-watch="'+group+'"]') : equalizer.find('['+this.attr_name()+'-watch]');
38
+ }
39
+ else {
40
+ vals = group ? equalizer.find('['+this.attr_name()+'-watch="'+group+'"]:visible') : equalizer.find('['+this.attr_name()+'-watch]:visible');
41
+ }
42
+
43
+ if (vals.length === 0) {
44
+ return;
45
+ }
46
+
47
+ settings.before_height_change();
48
+ equalizer.trigger('before-height-change.fndth.equalizer');
49
+ vals.height('inherit');
50
+
51
+ if (settings.equalize_on_stack === false) {
52
+ firstTopOffset = vals.first().offset().top;
53
+ vals.each(function () {
54
+ if ($(this).offset().top !== firstTopOffset) {
55
+ isStacked = true;
56
+ return false;
57
+ }
58
+ });
59
+ if (isStacked) {
60
+ return;
61
+ }
62
+ }
63
+
64
+ var heights = vals.map(function () { return $(this).outerHeight(false) }).get();
65
+
66
+ if (settings.use_tallest) {
67
+ var max = Math.max.apply(null, heights);
68
+ vals.css('height', max);
69
+ } else {
70
+ var min = Math.min.apply(null, heights);
71
+ vals.css('height', min);
72
+ }
73
+
74
+ settings.after_height_change();
75
+ equalizer.trigger('after-height-change.fndtn.equalizer');
76
+ },
77
+
78
+ reflow : function () {
79
+ var self = this;
80
+
81
+ this.S('[' + this.attr_name() + ']', this.scope).each(function () {
82
+ var $eq_target = $(this),
83
+ media_query = $eq_target.data('equalizer-mq'),
84
+ ignore_media_query = true;
85
+
86
+ if (media_query) {
87
+ media_query = 'is_' + media_query.replace(/-/g, '_');
88
+ if (Foundation.utils.hasOwnProperty(media_query)) {
89
+ ignore_media_query = false;
90
+ }
91
+ }
92
+
93
+ self.image_loaded(self.S('img', this), function () {
94
+ if (ignore_media_query || Foundation.utils[media_query]()) {
95
+ self.equalize($eq_target)
96
+ } else {
97
+ var vals = $eq_target.find('[' + self.attr_name() + '-watch]:visible');
98
+ vals.css('height', 'auto');
99
+ }
100
+ });
101
+ });
102
+ }
103
+ };
104
+ })(jQuery, window, window.document);
statics/foundation.js ADDED
@@ -0,0 +1,725 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ * Foundation Responsive Library
3
+ * http://foundation.zurb.com
4
+ * Copyright 2014, ZURB
5
+ * Free to use under the MIT license.
6
+ * http://www.opensource.org/licenses/mit-license.php
7
+ */
8
+
9
+ (function ($, window, document, undefined) {
10
+ 'use strict';
11
+
12
+ var header_helpers = function (class_array) {
13
+ var i = class_array.length;
14
+ var head = $('head');
15
+
16
+ while (i--) {
17
+ if (head.has('.' + class_array[i]).length === 0) {
18
+ head.append('<meta class="' + class_array[i] + '" />');
19
+ }
20
+ }
21
+ };
22
+
23
+ header_helpers([
24
+ 'foundation-mq-small',
25
+ 'foundation-mq-small-only',
26
+ 'foundation-mq-medium',
27
+ 'foundation-mq-medium-only',
28
+ 'foundation-mq-large',
29
+ 'foundation-mq-large-only',
30
+ 'foundation-mq-xlarge',
31
+ 'foundation-mq-xlarge-only',
32
+ 'foundation-mq-xxlarge',
33
+ 'foundation-data-attribute-namespace']);
34
+
35
+ // Enable FastClick if present
36
+
37
+ $(function () {
38
+ if (typeof FastClick !== 'undefined') {
39
+ // Don't attach to body if undefined
40
+ if (typeof document.body !== 'undefined') {
41
+ FastClick.attach(document.body);
42
+ }
43
+ }
44
+ });
45
+
46
+ // private Fast Selector wrapper,
47
+ // returns jQuery object. Only use where
48
+ // getElementById is not available.
49
+ var S = function (selector, context) {
50
+ if (typeof selector === 'string') {
51
+ if (context) {
52
+ var cont;
53
+ if (context.jquery) {
54
+ cont = context[0];
55
+ if (!cont) {
56
+ return context;
57
+ }
58
+ } else {
59
+ cont = context;
60
+ }
61
+ return $(cont.querySelectorAll(selector));
62
+ }
63
+
64
+ return $(document.querySelectorAll(selector));
65
+ }
66
+
67
+ return $(selector, context);
68
+ };
69
+
70
+ // Namespace functions.
71
+
72
+ var attr_name = function (init) {
73
+ var arr = [];
74
+ if (!init) {
75
+ arr.push('data');
76
+ }
77
+ if (this.namespace.length > 0) {
78
+ arr.push(this.namespace);
79
+ }
80
+ arr.push(this.name);
81
+
82
+ return arr.join('-');
83
+ };
84
+
85
+ var add_namespace = function (str) {
86
+ var parts = str.split('-'),
87
+ i = parts.length,
88
+ arr = [];
89
+
90
+ while (i--) {
91
+ if (i !== 0) {
92
+ arr.push(parts[i]);
93
+ } else {
94
+ if (this.namespace.length > 0) {
95
+ arr.push(this.namespace, parts[i]);
96
+ } else {
97
+ arr.push(parts[i]);
98
+ }
99
+ }
100
+ }
101
+
102
+ return arr.reverse().join('-');
103
+ };
104
+
105
+ // Event binding and data-options updating.
106
+
107
+ var bindings = function (method, options) {
108
+ var self = this,
109
+ bind = function(){
110
+ var $this = S(this),
111
+ should_bind_events = !$this.data(self.attr_name(true) + '-init');
112
+ $this.data(self.attr_name(true) + '-init', $.extend({}, self.settings, (options || method), self.data_options($this)));
113
+
114
+ if (should_bind_events) {
115
+ self.events(this);
116
+ }
117
+ };
118
+
119
+ if (S(this.scope).is('[' + this.attr_name() +']')) {
120
+ bind.call(this.scope);
121
+ } else {
122
+ S('[' + this.attr_name() +']', this.scope).each(bind);
123
+ }
124
+ // # Patch to fix #5043 to move this *after* the if/else clause in order for Backbone and similar frameworks to have improved control over event binding and data-options updating.
125
+ if (typeof method === 'string') {
126
+ return this[method].call(this, options);
127
+ }
128
+
129
+ };
130
+
131
+ var single_image_loaded = function (image, callback) {
132
+ function loaded () {
133
+ callback(image[0]);
134
+ }
135
+
136
+ function bindLoad () {
137
+ this.one('load', loaded);
138
+
139
+ if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) {
140
+ var src = this.attr( 'src' ),
141
+ param = src.match( /\?/ ) ? '&' : '?';
142
+
143
+ param += 'random=' + (new Date()).getTime();
144
+ this.attr('src', src + param);
145
+ }
146
+ }
147
+
148
+ if (!image.attr('src')) {
149
+ loaded();
150
+ return;
151
+ }
152
+
153
+ if (image[0].complete || image[0].readyState === 4) {
154
+ loaded();
155
+ } else {
156
+ bindLoad.call(image);
157
+ }
158
+ };
159
+
160
+ /*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. Dual MIT/BSD license */
161
+
162
+ window.matchMedia || (window.matchMedia = function() {
163
+ "use strict";
164
+
165
+ // For browsers that support matchMedium api such as IE 9 and webkit
166
+ var styleMedia = (window.styleMedia || window.media);
167
+
168
+ // For those that don't support matchMedium
169
+ if (!styleMedia) {
170
+ var style = document.createElement('style'),
171
+ script = document.getElementsByTagName('script')[0],
172
+ info = null;
173
+
174
+ style.type = 'text/css';
175
+ style.id = 'matchmediajs-test';
176
+
177
+ script.parentNode.insertBefore(style, script);
178
+
179
+ // 'style.currentStyle' is used by IE <= 8 and 'window.getComputedStyle' for all other browsers
180
+ info = ('getComputedStyle' in window) && window.getComputedStyle(style, null) || style.currentStyle;
181
+
182
+ styleMedia = {
183
+ matchMedium: function(media) {
184
+ var text = '@media ' + media + '{ #matchmediajs-test { width: 1px; } }';
185
+
186
+ // 'style.styleSheet' is used by IE <= 8 and 'style.textContent' for all other browsers
187
+ if (style.styleSheet) {
188
+ style.styleSheet.cssText = text;
189
+ } else {
190
+ style.textContent = text;
191
+ }
192
+
193
+ // Test if media query is true or false
194
+ return info.width === '1px';
195
+ }
196
+ };
197
+ }
198
+
199
+ return function(media) {
200
+ return {
201
+ matches: styleMedia.matchMedium(media || 'all'),
202
+ media: media || 'all'
203
+ };
204
+ };
205
+ }());
206
+
207
+ /*
208
+ * jquery.requestAnimationFrame
209
+ * https://github.com/gnarf37/jquery-requestAnimationFrame
210
+ * Requires jQuery 1.8+
211
+ *
212
+ * Copyright (c) 2012 Corey Frang
213
+ * Licensed under the MIT license.
214
+ */
215
+
216
+ (function(jQuery) {
217
+
218
+
219
+ // requestAnimationFrame polyfill adapted from Erik Möller
220
+ // fixes from Paul Irish and Tino Zijdel
221
+ // http://paulirish.com/2011/requestanimationframe-for-smart-animating/
222
+ // http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating
223
+
224
+ var animating,
225
+ lastTime = 0,
226
+ vendors = ['webkit', 'moz'],
227
+ requestAnimationFrame = window.requestAnimationFrame,
228
+ cancelAnimationFrame = window.cancelAnimationFrame,
229
+ jqueryFxAvailable = 'undefined' !== typeof jQuery.fx;
230
+
231
+ for (; lastTime < vendors.length && !requestAnimationFrame; lastTime++) {
232
+ requestAnimationFrame = window[ vendors[lastTime] + 'RequestAnimationFrame' ];
233
+ cancelAnimationFrame = cancelAnimationFrame ||
234
+ window[ vendors[lastTime] + 'CancelAnimationFrame' ] ||
235
+ window[ vendors[lastTime] + 'CancelRequestAnimationFrame' ];
236
+ }
237
+
238
+ function raf() {
239
+ if (animating) {
240
+ requestAnimationFrame(raf);
241
+
242
+ if (jqueryFxAvailable) {
243
+ jQuery.fx.tick();
244
+ }
245
+ }
246
+ }
247
+
248
+ if (requestAnimationFrame) {
249
+ // use rAF
250
+ window.requestAnimationFrame = requestAnimationFrame;
251
+ window.cancelAnimationFrame = cancelAnimationFrame;
252
+
253
+ if (jqueryFxAvailable) {
254
+ jQuery.fx.timer = function (timer) {
255
+ if (timer() && jQuery.timers.push(timer) && !animating) {
256
+ animating = true;
257
+ raf();
258
+ }
259
+ };
260
+
261
+ jQuery.fx.stop = function () {
262
+ animating = false;
263
+ };
264
+ }
265
+ } else {
266
+ // polyfill
267
+ window.requestAnimationFrame = function (callback) {
268
+ var currTime = new Date().getTime(),
269
+ timeToCall = Math.max(0, 16 - (currTime - lastTime)),
270
+ id = window.setTimeout(function () {
271
+ callback(currTime + timeToCall);
272
+ }, timeToCall);
273
+ lastTime = currTime + timeToCall;
274
+ return id;
275
+ };
276
+
277
+ window.cancelAnimationFrame = function (id) {
278
+ clearTimeout(id);
279
+ };
280
+
281
+ }
282
+
283
+ }( $ ));
284
+
285
+ function removeQuotes (string) {
286
+ if (typeof string === 'string' || string instanceof String) {
287
+ string = string.replace(/^['\\/"]+|(;\s?})+|['\\/"]+$/g, '');
288
+ }
289
+
290
+ return string;
291
+ }
292
+
293
+ window.Foundation = {
294
+ name : 'Foundation',
295
+
296
+ version : '5.5.2',
297
+
298
+ media_queries : {
299
+ 'small' : S('.foundation-mq-small').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
300
+ 'small-only' : S('.foundation-mq-small-only').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
301
+ 'medium' : S('.foundation-mq-medium').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
302
+ 'medium-only' : S('.foundation-mq-medium-only').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
303
+ 'large' : S('.foundation-mq-large').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
304
+ 'large-only' : S('.foundation-mq-large-only').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
305
+ 'xlarge' : S('.foundation-mq-xlarge').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
306
+ 'xlarge-only' : S('.foundation-mq-xlarge-only').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
307
+ 'xxlarge' : S('.foundation-mq-xxlarge').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, '')
308
+ },
309
+
310
+ stylesheet : $('<style></style>').appendTo('head')[0].sheet,
311
+
312
+ global : {
313
+ namespace : undefined
314
+ },
315
+
316
+ init : function (scope, libraries, method, options, response) {
317
+ var args = [scope, method, options, response],
318
+ responses = [];
319
+
320
+ // check RTL
321
+ this.rtl = /rtl/i.test(S('html').attr('dir'));
322
+
323
+ // set foundation global scope
324
+ this.scope = scope || this.scope;
325
+
326
+ this.set_namespace();
327
+
328
+ if (libraries && typeof libraries === 'string' && !/reflow/i.test(libraries)) {
329
+ if (this.libs.hasOwnProperty(libraries)) {
330
+ responses.push(this.init_lib(libraries, args));
331
+ }
332
+ } else {
333
+ for (var lib in this.libs) {
334
+ responses.push(this.init_lib(lib, libraries));
335
+ }
336
+ }
337
+
338
+ S(window).load(function () {
339
+ S(window)
340
+ .trigger('resize.fndtn.clearing')
341
+ .trigger('resize.fndtn.dropdown')
342
+ .trigger('resize.fndtn.equalizer')
343
+ .trigger('resize.fndtn.interchange')
344
+ .trigger('resize.fndtn.joyride')
345
+ .trigger('resize.fndtn.magellan')
346
+ .trigger('resize.fndtn.topbar')
347
+ .trigger('resize.fndtn.slider');
348
+ });
349
+
350
+ return scope;
351
+ },
352
+
353
+ init_lib : function (lib, args) {
354
+ if (this.libs.hasOwnProperty(lib)) {
355
+ this.patch(this.libs[lib]);
356
+
357
+ if (args && args.hasOwnProperty(lib)) {
358
+ if (typeof this.libs[lib].settings !== 'undefined') {
359
+ $.extend(true, this.libs[lib].settings, args[lib]);
360
+ } else if (typeof this.libs[lib].defaults !== 'undefined') {
361
+ $.extend(true, this.libs[lib].defaults, args[lib]);
362
+ }
363
+ return this.libs[lib].init.apply(this.libs[lib], [this.scope, args[lib]]);
364
+ }
365
+
366
+ args = args instanceof Array ? args : new Array(args);
367
+ return this.libs[lib].init.apply(this.libs[lib], args);
368
+ }
369
+
370
+ return function () {};
371
+ },
372
+
373
+ patch : function (lib) {
374
+ lib.scope = this.scope;
375
+ lib.namespace = this.global.namespace;
376
+ lib.rtl = this.rtl;
377
+ lib['data_options'] = this.utils.data_options;
378
+ lib['attr_name'] = attr_name;
379
+ lib['add_namespace'] = add_namespace;
380
+ lib['bindings'] = bindings;
381
+ lib['S'] = this.utils.S;
382
+ },
383
+
384
+ inherit : function (scope, methods) {
385
+ var methods_arr = methods.split(' '),
386
+ i = methods_arr.length;
387
+
388
+ while (i--) {
389
+ if (this.utils.hasOwnProperty(methods_arr[i])) {
390
+ scope[methods_arr[i]] = this.utils[methods_arr[i]];
391
+ }
392
+ }
393
+ },
394
+
395
+ set_namespace : function () {
396
+
397
+ // Description:
398
+ // Don't bother reading the namespace out of the meta tag
399
+ // if the namespace has been set globally in javascript
400
+ //
401
+ // Example:
402
+ // Foundation.global.namespace = 'my-namespace';
403
+ // or make it an empty string:
404
+ // Foundation.global.namespace = '';
405
+ //
406
+ //
407
+
408
+ // If the namespace has not been set (is undefined), try to read it out of the meta element.
409
+ // Otherwise use the globally defined namespace, even if it's empty ('')
410
+ var namespace = ( this.global.namespace === undefined ) ? $('.foundation-data-attribute-namespace').css('font-family') : this.global.namespace;
411
+
412
+ // Finally, if the namsepace is either undefined or false, set it to an empty string.
413
+ // Otherwise use the namespace value.
414
+ this.global.namespace = ( namespace === undefined || /false/i.test(namespace) ) ? '' : namespace;
415
+ },
416
+
417
+ libs : {},
418
+
419
+ // methods that can be inherited in libraries
420
+ utils : {
421
+
422
+ // Description:
423
+ // Fast Selector wrapper returns jQuery object. Only use where getElementById
424
+ // is not available.
425
+ //
426
+ // Arguments:
427
+ // Selector (String): CSS selector describing the element(s) to be
428
+ // returned as a jQuery object.
429
+ //
430
+ // Scope (String): CSS selector describing the area to be searched. Default
431
+ // is document.
432
+ //
433
+ // Returns:
434
+ // Element (jQuery Object): jQuery object containing elements matching the
435
+ // selector within the scope.
436
+ S : S,
437
+
438
+ // Description:
439
+ // Executes a function a max of once every n milliseconds
440
+ //
441
+ // Arguments:
442
+ // Func (Function): Function to be throttled.
443
+ //
444
+ // Delay (Integer): Function execution threshold in milliseconds.
445
+ //
446
+ // Returns:
447
+ // Lazy_function (Function): Function with throttling applied.
448
+ throttle : function (func, delay) {
449
+ var timer = null;
450
+
451
+ return function () {
452
+ var context = this, args = arguments;
453
+
454
+ if (timer == null) {
455
+ timer = setTimeout(function () {
456
+ func.apply(context, args);
457
+ timer = null;
458
+ }, delay);
459
+ }
460
+ };
461
+ },
462
+
463
+ // Description:
464
+ // Executes a function when it stops being invoked for n seconds
465
+ // Modified version of _.debounce() http://underscorejs.org
466
+ //
467
+ // Arguments:
468
+ // Func (Function): Function to be debounced.
469
+ //
470
+ // Delay (Integer): Function execution threshold in milliseconds.
471
+ //
472
+ // Immediate (Bool): Whether the function should be called at the beginning
473
+ // of the delay instead of the end. Default is false.
474
+ //
475
+ // Returns:
476
+ // Lazy_function (Function): Function with debouncing applied.
477
+ debounce : function (func, delay, immediate) {
478
+ var timeout, result;
479
+ return function () {
480
+ var context = this, args = arguments;
481
+ var later = function () {
482
+ timeout = null;
483
+ if (!immediate) {
484
+ result = func.apply(context, args);
485
+ }
486
+ };
487
+ var callNow = immediate && !timeout;
488
+ clearTimeout(timeout);
489
+ timeout = setTimeout(later, delay);
490
+ if (callNow) {
491
+ result = func.apply(context, args);
492
+ }
493
+ return result;
494
+ };
495
+ },
496
+
497
+ // Description:
498
+ // Parses data-options attribute
499
+ //
500
+ // Arguments:
501
+ // El (jQuery Object): Element to be parsed.
502
+ //
503
+ // Returns:
504
+ // Options (Javascript Object): Contents of the element's data-options
505
+ // attribute.
506
+ data_options : function (el, data_attr_name) {
507
+ data_attr_name = data_attr_name || 'options';
508
+ var opts = {}, ii, p, opts_arr,
509
+ data_options = function (el) {
510
+ var namespace = Foundation.global.namespace;
511
+
512
+ if (namespace.length > 0) {
513
+ return el.data(namespace + '-' + data_attr_name);
514
+ }
515
+
516
+ return el.data(data_attr_name);
517
+ };
518
+
519
+ var cached_options = data_options(el);
520
+
521
+ if (typeof cached_options === 'object') {
522
+ return cached_options;
523
+ }
524
+
525
+ opts_arr = (cached_options || ':').split(';');
526
+ ii = opts_arr.length;
527
+
528
+ function isNumber (o) {
529
+ return !isNaN (o - 0) && o !== null && o !== '' && o !== false && o !== true;
530
+ }
531
+
532
+ function trim (str) {
533
+ if (typeof str === 'string') {
534
+ return $.trim(str);
535
+ }
536
+ return str;
537
+ }
538
+
539
+ while (ii--) {
540
+ p = opts_arr[ii].split(':');
541
+ p = [p[0], p.slice(1).join(':')];
542
+
543
+ if (/true/i.test(p[1])) {
544
+ p[1] = true;
545
+ }
546
+ if (/false/i.test(p[1])) {
547
+ p[1] = false;
548
+ }
549
+ if (isNumber(p[1])) {
550
+ if (p[1].indexOf('.') === -1) {
551
+ p[1] = parseInt(p[1], 10);
552
+ } else {
553
+ p[1] = parseFloat(p[1]);
554
+ }
555
+ }
556
+
557
+ if (p.length === 2 && p[0].length > 0) {
558
+ opts[trim(p[0])] = trim(p[1]);
559
+ }
560
+ }
561
+
562
+ return opts;
563
+ },
564
+
565
+ // Description:
566
+ // Adds JS-recognizable media queries
567
+ //
568
+ // Arguments:
569
+ // Media (String): Key string for the media query to be stored as in
570
+ // Foundation.media_queries
571
+ //
572
+ // Class (String): Class name for the generated <meta> tag
573
+ register_media : function (media, media_class) {
574
+ if (Foundation.media_queries[media] === undefined) {
575
+ $('head').append('<meta class="' + media_class + '"/>');
576
+ Foundation.media_queries[media] = removeQuotes($('.' + media_class).css('font-family'));
577
+ }
578
+ },
579
+
580
+ // Description:
581
+ // Add custom CSS within a JS-defined media query
582
+ //
583
+ // Arguments:
584
+ // Rule (String): CSS rule to be appended to the document.
585
+ //
586
+ // Media (String): Optional media query string for the CSS rule to be
587
+ // nested under.
588
+ add_custom_rule : function (rule, media) {
589
+ if (media === undefined && Foundation.stylesheet) {
590
+ Foundation.stylesheet.insertRule(rule, Foundation.stylesheet.cssRules.length);
591
+ } else {
592
+ var query = Foundation.media_queries[media];
593
+
594
+ if (query !== undefined) {
595
+ Foundation.stylesheet.insertRule('@media ' +
596
+ Foundation.media_queries[media] + '{ ' + rule + ' }', Foundation.stylesheet.cssRules.length);
597
+ }
598
+ }
599
+ },
600
+
601
+ // Description:
602
+ // Performs a callback function when an image is fully loaded
603
+ //
604
+ // Arguments:
605
+ // Image (jQuery Object): Image(s) to check if loaded.
606
+ //
607
+ // Callback (Function): Function to execute when image is fully loaded.
608
+ image_loaded : function (images, callback) {
609
+ var self = this,
610
+ unloaded = images.length;
611
+
612
+ function pictures_has_height(images) {
613
+ var pictures_number = images.length;
614
+
615
+ for (var i = pictures_number - 1; i >= 0; i--) {
616
+ if(images.attr('height') === undefined) {
617
+ return false;
618
+ };
619
+ };
620
+
621
+ return true;
622
+ }
623
+
624
+ if (unloaded === 0 || pictures_has_height(images)) {
625
+ callback(images);
626
+ }
627
+
628
+ images.each(function () {
629
+ single_image_loaded(self.S(this), function () {
630
+ unloaded -= 1;
631
+ if (unloaded === 0) {
632
+ callback(images);
633
+ }
634
+ });
635
+ });
636
+ },
637
+
638
+ // Description:
639
+ // Returns a random, alphanumeric string
640
+ //
641
+ // Arguments:
642
+ // Length (Integer): Length of string to be generated. Defaults to random
643
+ // integer.
644
+ //
645
+ // Returns:
646
+ // Rand (String): Pseudo-random, alphanumeric string.
647
+ random_str : function () {
648
+ if (!this.fidx) {
649
+ this.fidx = 0;
650
+ }
651
+ this.prefix = this.prefix || [(this.name || 'F'), (+new Date).toString(36)].join('-');
652
+
653
+ return this.prefix + (this.fidx++).toString(36);
654
+ },
655
+
656
+ // Description:
657
+ // Helper for window.matchMedia
658
+ //
659
+ // Arguments:
660
+ // mq (String): Media query
661
+ //
662
+ // Returns:
663
+ // (Boolean): Whether the media query passes or not
664
+ match : function (mq) {
665
+ return window.matchMedia(mq).matches;
666
+ },
667
+
668
+ // Description:
669
+ // Helpers for checking Foundation default media queries with JS
670
+ //
671
+ // Returns:
672
+ // (Boolean): Whether the media query passes or not
673
+
674
+ is_small_up : function () {
675
+ return this.match(Foundation.media_queries.small);
676
+ },
677
+
678
+ is_medium_up : function () {
679
+ return this.match(Foundation.media_queries.medium);
680
+ },
681
+
682
+ is_large_up : function () {
683
+ return this.match(Foundation.media_queries.large);
684
+ },
685
+
686
+ is_xlarge_up : function () {
687
+ return this.match(Foundation.media_queries.xlarge);
688
+ },
689
+
690
+ is_xxlarge_up : function () {
691
+ return this.match(Foundation.media_queries.xxlarge);
692
+ },
693
+
694
+ is_small_only : function () {
695
+ return !this.is_medium_up() && !this.is_large_up() && !this.is_xlarge_up() && !this.is_xxlarge_up();
696
+ },
697
+
698
+ is_medium_only : function () {
699
+ return this.is_medium_up() && !this.is_large_up() && !this.is_xlarge_up() && !this.is_xxlarge_up();
700
+ },
701
+
702
+ is_large_only : function () {
703
+ return this.is_medium_up() && this.is_large_up() && !this.is_xlarge_up() && !this.is_xxlarge_up();
704
+ },
705
+
706
+ is_xlarge_only : function () {
707
+ return this.is_medium_up() && this.is_large_up() && this.is_xlarge_up() && !this.is_xxlarge_up();
708
+ },
709
+
710
+ is_xxlarge_only : function () {
711
+ return this.is_medium_up() && this.is_large_up() && this.is_xlarge_up() && this.is_xxlarge_up();
712
+ }
713
+ }
714
+ };
715
+
716
+ $.fn.foundation = function () {
717
+ var args = Array.prototype.slice.call(arguments, 0);
718
+
719
+ return this.each(function () {
720
+ Foundation.init.apply(Foundation, [this].concat(args));
721
+ return this;
722
+ });
723
+ };
724
+
725
+ }(jQuery, window, window.document));
statics/mixitup.min.js ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**!
2
+ * MixItUp v2.1.11
3
+ *
4
+ * @copyright Copyright 2015 KunkaLabs Limited.
5
+ * @author KunkaLabs Limited.
6
+ * @link https://mixitup.kunkalabs.com
7
+ *
8
+ * @license Commercial use requires a commercial license.
9
+ * https://mixitup.kunkalabs.com/licenses/
10
+ *
11
+ * Non-commercial use permitted under terms of CC-BY-NC license.
12
+ * http://creativecommons.org/licenses/by-nc/3.0/
13
+ */
14
+ !function(a,b){"use strict";a.MixItUp=function(){var b=this;b._execAction("_constructor",0),a.extend(b,{selectors:{target:".mix",filter:".filter",sort:".sort"},animation:{enable:!0,effects:"fade scale",duration:600,easing:"ease",perspectiveDistance:"3000",perspectiveOrigin:"50% 50%",queue:!0,queueLimit:1,animateChangeLayout:!1,animateResizeContainer:!0,animateResizeTargets:!1,staggerSequence:!1,reverseOut:!1},callbacks:{onMixLoad:!1,onMixStart:!1,onMixBusy:!1,onMixEnd:!1,onMixFail:!1,_user:!1},controls:{enable:!0,live:!1,toggleFilterButtons:!1,toggleLogic:"or",activeClass:"active"},layout:{display:"inline-block",containerClass:"",containerClassFail:"fail"},load:{filter:"all",sort:!1},_$body:null,_$container:null,_$targets:null,_$parent:null,_$sortButtons:null,_$filterButtons:null,_suckMode:!1,_mixing:!1,_sorting:!1,_clicking:!1,_loading:!0,_changingLayout:!1,_changingClass:!1,_changingDisplay:!1,_origOrder:[],_startOrder:[],_newOrder:[],_activeFilter:null,_toggleArray:[],_toggleString:"",_activeSort:"default:asc",_newSort:null,_startHeight:null,_newHeight:null,_incPadding:!0,_newDisplay:null,_newClass:null,_targetsBound:0,_targetsDone:0,_queue:[],_$show:a(),_$hide:a()}),b._execAction("_constructor",1)},a.MixItUp.prototype={constructor:a.MixItUp,_instances:{},_handled:{_filter:{},_sort:{}},_bound:{_filter:{},_sort:{}},_actions:{},_filters:{},extend:function(b){for(var c in b)a.MixItUp.prototype[c]=b[c]},addAction:function(b,c,d,e){a.MixItUp.prototype._addHook("_actions",b,c,d,e)},addFilter:function(b,c,d,e){a.MixItUp.prototype._addHook("_filters",b,c,d,e)},_addHook:function(b,c,d,e,f){var g=a.MixItUp.prototype[b],h={};f=1===f||"post"===f?"post":"pre",h[c]={},h[c][f]={},h[c][f][d]=e,a.extend(!0,g,h)},_init:function(b,c){var d=this;if(d._execAction("_init",0,arguments),c&&a.extend(!0,d,c),d._$body=a("body"),d._domNode=b,d._$container=a(b),d._$container.addClass(d.layout.containerClass),d._id=b.id,d._platformDetect(),d._brake=d._getPrefixedCSS("transition","none"),d._refresh(!0),d._$parent=d._$targets.parent().length?d._$targets.parent():d._$container,d.load.sort&&(d._newSort=d._parseSort(d.load.sort),d._newSortString=d.load.sort,d._activeSort=d.load.sort,d._sort(),d._printSort()),d._activeFilter="all"===d.load.filter?d.selectors.target:"none"===d.load.filter?"":d.load.filter,d.controls.enable&&d._bindHandlers(),d.controls.toggleFilterButtons){d._buildToggleArray();for(var e=0;e<d._toggleArray.length;e++)d._updateControls({filter:d._toggleArray[e],sort:d._activeSort},!0)}else d.controls.enable&&d._updateControls({filter:d._activeFilter,sort:d._activeSort});d._filter(),d._init=!0,d._$container.data("mixItUp",d),d._execAction("_init",1,arguments),d._buildState(),d._$targets.css(d._brake),d._goMix(d.animation.enable)},_platformDetect:function(){var a=this,c=["Webkit","Moz","O","ms"],d=["webkit","moz"],e=window.navigator.appVersion.match(/Chrome\/(\d+)\./)||!1,f="undefined"!=typeof InstallTrigger,g=function(a){for(var b=0;b<c.length;b++)if(c[b]+"Transition"in a.style)return{prefix:"-"+c[b].toLowerCase()+"-",vendor:c[b]};return"transition"in a.style?"":!1},h=g(a._domNode);a._execAction("_platformDetect",0),a._chrome=e?parseInt(e[1],10):!1,a._ff=f?parseInt(window.navigator.userAgent.match(/rv:([^)]+)\)/)[1]):!1,a._prefix=h.prefix,a._vendor=h.vendor,a._suckMode=window.atob&&a._prefix?!1:!0,a._suckMode&&(a.animation.enable=!1),a._ff&&a._ff<=4&&(a.animation.enable=!1);for(var i=0;i<d.length&&!window.requestAnimationFrame;i++)window.requestAnimationFrame=window[d[i]+"RequestAnimationFrame"];"function"!=typeof Object.getPrototypeOf&&("object"==typeof"test".__proto__?Object.getPrototypeOf=function(a){return a.__proto__}:Object.getPrototypeOf=function(a){return a.constructor.prototype}),a._domNode.nextElementSibling===b&&Object.defineProperty(Element.prototype,"nextElementSibling",{get:function(){for(var a=this.nextSibling;a;){if(1===a.nodeType)return a;a=a.nextSibling}return null}}),a._execAction("_platformDetect",1)},_refresh:function(a,c){var d=this;d._execAction("_refresh",0,arguments),d._$targets=d._$container.find(d.selectors.target);for(var e=0;e<d._$targets.length;e++){var f=d._$targets[e];if(f.dataset===b||c){f.dataset={};for(var g=0;g<f.attributes.length;g++){var h=f.attributes[g],i=h.name,j=h.value;if(i.indexOf("data-")>-1){var k=d._helpers._camelCase(i.substring(5,i.length));f.dataset[k]=j}}}f.mixParent===b&&(f.mixParent=d._id)}if(d._$targets.length&&a||!d._origOrder.length&&d._$targets.length){d._origOrder=[];for(var e=0;e<d._$targets.length;e++){var f=d._$targets[e];d._origOrder.push(f)}}d._execAction("_refresh",1,arguments)},_bindHandlers:function(){var c=this,d=a.MixItUp.prototype._bound._filter,e=a.MixItUp.prototype._bound._sort;c._execAction("_bindHandlers",0),c.controls.live?c._$body.on("click.mixItUp."+c._id,c.selectors.sort,function(){c._processClick(a(this),"sort")}).on("click.mixItUp."+c._id,c.selectors.filter,function(){c._processClick(a(this),"filter")}):(c._$sortButtons=a(c.selectors.sort),c._$filterButtons=a(c.selectors.filter),c._$sortButtons.on("click.mixItUp."+c._id,function(){c._processClick(a(this),"sort")}),c._$filterButtons.on("click.mixItUp."+c._id,function(){c._processClick(a(this),"filter")})),d[c.selectors.filter]=d[c.selectors.filter]===b?1:d[c.selectors.filter]+1,e[c.selectors.sort]=e[c.selectors.sort]===b?1:e[c.selectors.sort]+1,c._execAction("_bindHandlers",1)},_processClick:function(c,d){var e=this,f=function(c,d,f){var g=a.MixItUp.prototype;g._handled["_"+d][e.selectors[d]]=g._handled["_"+d][e.selectors[d]]===b?1:g._handled["_"+d][e.selectors[d]]+1,g._handled["_"+d][e.selectors[d]]===g._bound["_"+d][e.selectors[d]]&&(c[(f?"remove":"add")+"Class"](e.controls.activeClass),delete g._handled["_"+d][e.selectors[d]])};if(e._execAction("_processClick",0,arguments),!e._mixing||e.animation.queue&&e._queue.length<e.animation.queueLimit){if(e._clicking=!0,"sort"===d){var g=c.attr("data-sort");(!c.hasClass(e.controls.activeClass)||g.indexOf("random")>-1)&&(a(e.selectors.sort).removeClass(e.controls.activeClass),f(c,d),e.sort(g))}if("filter"===d){var i,h=c.attr("data-filter"),j="or"===e.controls.toggleLogic?",":"";e.controls.toggleFilterButtons?(e._buildToggleArray(),c.hasClass(e.controls.activeClass)?(f(c,d,!0),i=e._toggleArray.indexOf(h),e._toggleArray.splice(i,1)):(f(c,d),e._toggleArray.push(h)),e._toggleArray=a.grep(e._toggleArray,function(a){return a}),e._toggleString=e._toggleArray.join(j),e.filter(e._toggleString)):c.hasClass(e.controls.activeClass)||(a(e.selectors.filter).removeClass(e.controls.activeClass),f(c,d),e.filter(h))}e._execAction("_processClick",1,arguments)}else"function"==typeof e.callbacks.onMixBusy&&e.callbacks.onMixBusy.call(e._domNode,e._state,e),e._execAction("_processClickBusy",1,arguments)},_buildToggleArray:function(){var a=this,b=a._activeFilter.replace(/\s/g,"");if(a._execAction("_buildToggleArray",0,arguments),"or"===a.controls.toggleLogic)a._toggleArray=b.split(",");else{a._toggleArray=b.split("."),!a._toggleArray[0]&&a._toggleArray.shift();for(var d,c=0;d=a._toggleArray[c];c++)a._toggleArray[c]="."+d}a._execAction("_buildToggleArray",1,arguments)},_updateControls:function(c,d){var e=this,f={filter:c.filter,sort:c.sort},g=function(a,b){try{d&&"filter"===h&&"none"!==f.filter&&""!==f.filter?a.filter(b).addClass(e.controls.activeClass):a.removeClass(e.controls.activeClass).filter(b).addClass(e.controls.activeClass)}catch(c){}},h="filter",i=null;e._execAction("_updateControls",0,arguments),c.filter===b&&(f.filter=e._activeFilter),c.sort===b&&(f.sort=e._activeSort),f.filter===e.selectors.target&&(f.filter="all");for(var j=0;2>j;j++)i=e.controls.live?a(e.selectors[h]):e["_$"+h+"Buttons"],i&&g(i,"[data-"+h+'="'+f[h]+'"]'),h="sort";e._execAction("_updateControls",1,arguments)},_filter:function(){var b=this;b._execAction("_filter",0);for(var c=0;c<b._$targets.length;c++){var d=a(b._$targets[c]);d.is(b._activeFilter)?b._$show=b._$show.add(d):b._$hide=b._$hide.add(d)}b._execAction("_filter",1)},_sort:function(){var a=this,b=function(a){for(var b=a.slice(),c=b.length,d=c;d--;){var e=parseInt(Math.random()*c),f=b[d];b[d]=b[e],b[e]=f}return b};a._execAction("_sort",0),a._startOrder=[];for(var c=0;c<a._$targets.length;c++){var d=a._$targets[c];a._startOrder.push(d)}switch(a._newSort[0].sortBy){case"default":a._newOrder=a._origOrder;break;case"random":a._newOrder=b(a._startOrder);break;case"custom":a._newOrder=a._newSort[0].order;break;default:a._newOrder=a._startOrder.concat().sort(function(b,c){return a._compare(b,c)})}a._execAction("_sort",1)},_compare:function(a,b,c){c=c?c:0;var d=this,e=d._newSort[c].order,f=function(a){return a.dataset[d._newSort[c].sortBy]||0},g=isNaN(1*f(a))?f(a).toLowerCase():1*f(a),h=isNaN(1*f(b))?f(b).toLowerCase():1*f(b);return h>g?"asc"===e?-1:1:g>h?"asc"===e?1:-1:g===h&&d._newSort.length>c+1?d._compare(a,b,c+1):0},_printSort:function(a){var b=this,c=a?b._startOrder:b._newOrder,d=b._$parent[0].querySelectorAll(b.selectors.target),e=d.length?d[d.length-1].nextElementSibling:null,f=document.createDocumentFragment();b._execAction("_printSort",0,arguments);for(var g=0;g<d.length;g++){var h=d[g],i=h.nextSibling;"absolute"!==h.style.position&&(i&&"#text"===i.nodeName&&b._$parent[0].removeChild(i),b._$parent[0].removeChild(h))}for(var g=0;g<c.length;g++){var j=c[g];if("default"!==b._newSort[0].sortBy||"desc"!==b._newSort[0].order||a)f.appendChild(j),f.appendChild(document.createTextNode(" "));else{var k=f.firstChild;f.insertBefore(j,k),f.insertBefore(document.createTextNode(" "),j)}}e?b._$parent[0].insertBefore(f,e):b._$parent[0].appendChild(f),b._execAction("_printSort",1,arguments)},_parseSort:function(a){for(var b=this,c="string"==typeof a?a.split(" "):[a],d=[],e=0;e<c.length;e++){var f="string"==typeof a?c[e].split(":"):["custom",c[e]],g={sortBy:b._helpers._camelCase(f[0]),order:f[1]||"asc"};if(d.push(g),"default"===g.sortBy||"random"===g.sortBy)break}return b._execFilter("_parseSort",d,arguments)},_parseEffects:function(){var a=this,b={opacity:"",transformIn:"",transformOut:"",filter:""},c=function(b,c,d){if(a.animation.effects.indexOf(b)>-1){if(c){var e=a.animation.effects.indexOf(b+"(");if(e>-1){var f=a.animation.effects.substring(e),g=/\(([^)]+)\)/.exec(f),h=g[1];return{val:h}}}return!0}return!1},d=function(a,b){return b?"-"===a.charAt(0)?a.substr(1,a.length):"-"+a:a},e=function(a,e){for(var f=[["scale",".01"],["translateX","20px"],["translateY","20px"],["translateZ","20px"],["rotateX","90deg"],["rotateY","90deg"],["rotateZ","180deg"]],g=0;g<f.length;g++){var h=f[g][0],i=f[g][1],j=e&&"scale"!==h;b[a]+=c(h)?h+"("+d(c(h,!0).val||i,j)+") ":""}};return b.opacity=c("fade")?c("fade",!0).val||"0":"1",e("transformIn"),a.animation.reverseOut?e("transformOut",!0):b.transformOut=b.transformIn,b.transition={},b.transition=a._getPrefixedCSS("transition","all "+a.animation.duration+"ms "+a.animation.easing+", opacity "+a.animation.duration+"ms linear"),a.animation.stagger=c("stagger")?!0:!1,a.animation.staggerDuration=parseInt(c("stagger")&&c("stagger",!0).val?c("stagger",!0).val:100),a._execFilter("_parseEffects",b)},_buildState:function(a){var b=this,c={};return b._execAction("_buildState",0),c={activeFilter:""===b._activeFilter?"none":b._activeFilter,activeSort:a&&b._newSortString?b._newSortString:b._activeSort,fail:!b._$show.length&&""!==b._activeFilter,$targets:b._$targets,$show:b._$show,$hide:b._$hide,totalTargets:b._$targets.length,totalShow:b._$show.length,totalHide:b._$hide.length,display:a&&b._newDisplay?b._newDisplay:b.layout.display},a?b._execFilter("_buildState",c):(b._state=c,void b._execAction("_buildState",1))},_goMix:function(a){var b=this,c=function(){b._chrome&&31===b._chrome&&f(b._$parent[0]),b._setInter(),d()},d=function(){var a=window.pageYOffset,c=window.pageXOffset;document.documentElement.scrollHeight;b._getInterMixData(),b._setFinal(),b._getFinalMixData(),window.pageYOffset!==a&&window.scrollTo(c,a),b._prepTargets(),window.requestAnimationFrame?requestAnimationFrame(e):setTimeout(function(){e()},20)},e=function(){b._animateTargets(),0===b._targetsBound&&b._cleanUp()},f=function(a){var b=a.parentElement,c=document.createElement("div"),d=document.createDocumentFragment();b.insertBefore(c,a),d.appendChild(a),b.replaceChild(a,c)},g=b._buildState(!0);b._execAction("_goMix",0,arguments),!b.animation.duration&&(a=!1),b._mixing=!0,b._$container.removeClass(b.layout.containerClassFail),"function"==typeof b.callbacks.onMixStart&&b.callbacks.onMixStart.call(b._domNode,b._state,g,b),b._$container.trigger("mixStart",[b._state,g,b]),b._getOrigMixData(),a&&!b._suckMode?window.requestAnimationFrame?requestAnimationFrame(c):c():b._cleanUp(),b._execAction("_goMix",1,arguments)},_getTargetData:function(a,b){var d,c=this;a.dataset[b+"PosX"]=a.offsetLeft,a.dataset[b+"PosY"]=a.offsetTop,c.animation.animateResizeTargets&&(d=c._suckMode?{marginBottom:"",marginRight:""}:window.getComputedStyle(a),a.dataset[b+"MarginBottom"]=parseInt(d.marginBottom),a.dataset[b+"MarginRight"]=parseInt(d.marginRight),a.dataset[b+"Width"]=a.offsetWidth,a.dataset[b+"Height"]=a.offsetHeight)},_getOrigMixData:function(){var a=this,b=a._suckMode?{boxSizing:""}:window.getComputedStyle(a._$parent[0]),c=b.boxSizing||b[a._vendor+"BoxSizing"];a._incPadding="border-box"===c,a._execAction("_getOrigMixData",0),!a._suckMode&&(a.effects=a._parseEffects()),a._$toHide=a._$hide.filter(":visible"),a._$toShow=a._$show.filter(":hidden"),a._$pre=a._$targets.filter(":visible"),a._startHeight=a._incPadding?a._$parent.outerHeight():a._$parent.height();for(var d=0;d<a._$pre.length;d++){var e=a._$pre[d];a._getTargetData(e,"orig")}a._execAction("_getOrigMixData",1)},_setInter:function(){var a=this;a._execAction("_setInter",0),a._changingLayout&&a.animation.animateChangeLayout?(a._$toShow.css("display",a._newDisplay),a._changingClass&&a._$container.removeClass(a.layout.containerClass).addClass(a._newClass)):a._$toShow.css("display",a.layout.display),a._execAction("_setInter",1)},_getInterMixData:function(){var a=this;a._execAction("_getInterMixData",0);for(var b=0;b<a._$toShow.length;b++){var c=a._$toShow[b];a._getTargetData(c,"inter")}for(var b=0;b<a._$pre.length;b++){var c=a._$pre[b];a._getTargetData(c,"inter")}a._execAction("_getInterMixData",1)},_setFinal:function(){var a=this;a._execAction("_setFinal",0),a._sorting&&a._printSort(),a._$toHide.removeStyle("display"),a._changingLayout&&a.animation.animateChangeLayout&&a._$pre.css("display",a._newDisplay),a._execAction("_setFinal",1)},_getFinalMixData:function(){var a=this;a._execAction("_getFinalMixData",0);for(var b=0;b<a._$toShow.length;b++){var c=a._$toShow[b];a._getTargetData(c,"final")}for(var b=0;b<a._$pre.length;b++){var c=a._$pre[b];a._getTargetData(c,"final")}a._newHeight=a._incPadding?a._$parent.outerHeight():a._$parent.height(),a._sorting&&a._printSort(!0),a._$toShow.removeStyle("display"),a._$pre.css("display",a.layout.display),a._changingClass&&a.animation.animateChangeLayout&&a._$container.removeClass(a._newClass).addClass(a.layout.containerClass),a._execAction("_getFinalMixData",1)},_prepTargets:function(){var b=this,c={_in:b._getPrefixedCSS("transform",b.effects.transformIn),_out:b._getPrefixedCSS("transform",b.effects.transformOut)};b._execAction("_prepTargets",0),b.animation.animateResizeContainer&&b._$parent.css("height",b._startHeight+"px");for(var d=0;d<b._$toShow.length;d++){var e=b._$toShow[d],f=a(e);e.style.opacity=b.effects.opacity,e.style.display=b._changingLayout&&b.animation.animateChangeLayout?b._newDisplay:b.layout.display,f.css(c._in),b.animation.animateResizeTargets&&(e.style.width=e.dataset.finalWidth+"px",e.style.height=e.dataset.finalHeight+"px",e.style.marginRight=-(e.dataset.finalWidth-e.dataset.interWidth)+1*e.dataset.finalMarginRight+"px",e.style.marginBottom=-(e.dataset.finalHeight-e.dataset.interHeight)+1*e.dataset.finalMarginBottom+"px")}for(var d=0;d<b._$pre.length;d++){var e=b._$pre[d],f=a(e),g={x:e.dataset.origPosX-e.dataset.interPosX,y:e.dataset.origPosY-e.dataset.interPosY},c=b._getPrefixedCSS("transform","translate("+g.x+"px,"+g.y+"px)");f.css(c),b.animation.animateResizeTargets&&(e.style.width=e.dataset.origWidth+"px",e.style.height=e.dataset.origHeight+"px",e.dataset.origWidth-e.dataset.finalWidth&&(e.style.marginRight=-(e.dataset.origWidth-e.dataset.interWidth)+1*e.dataset.origMarginRight+"px"),e.dataset.origHeight-e.dataset.finalHeight&&(e.style.marginBottom=-(e.dataset.origHeight-e.dataset.interHeight)+1*e.dataset.origMarginBottom+"px"))}b._execAction("_prepTargets",1)},_animateTargets:function(){var b=this;b._execAction("_animateTargets",0),b._targetsDone=0,b._targetsBound=0,b._$parent.css(b._getPrefixedCSS("perspective",b.animation.perspectiveDistance+"px")).css(b._getPrefixedCSS("perspective-origin",b.animation.perspectiveOrigin)),b.animation.animateResizeContainer&&b._$parent.css(b._getPrefixedCSS("transition","height "+b.animation.duration+"ms ease")).css("height",b._newHeight+"px");for(var c=0;c<b._$toShow.length;c++){var d=b._$toShow[c],e=a(d),f={x:d.dataset.finalPosX-d.dataset.interPosX,y:d.dataset.finalPosY-d.dataset.interPosY},g=b._getDelay(c),h={};d.style.opacity="";for(var i=0;2>i;i++){var j=0===i?j=b._prefix:"";b._ff&&b._ff<=20&&(h[j+"transition-property"]="all",h[j+"transition-timing-function"]=b.animation.easing+"ms",h[j+"transition-duration"]=b.animation.duration+"ms"),h[j+"transition-delay"]=g+"ms",h[j+"transform"]="translate("+f.x+"px,"+f.y+"px)"}(b.effects.transform||b.effects.opacity)&&b._bindTargetDone(e),b._ff&&b._ff<=20?e.css(h):e.css(b.effects.transition).css(h)}for(var c=0;c<b._$pre.length;c++){var d=b._$pre[c],e=a(d),f={x:d.dataset.finalPosX-d.dataset.interPosX,y:d.dataset.finalPosY-d.dataset.interPosY},g=b._getDelay(c);(d.dataset.finalPosX!==d.dataset.origPosX||d.dataset.finalPosY!==d.dataset.origPosY)&&b._bindTargetDone(e),e.css(b._getPrefixedCSS("transition","all "+b.animation.duration+"ms "+b.animation.easing+" "+g+"ms")),e.css(b._getPrefixedCSS("transform","translate("+f.x+"px,"+f.y+"px)")),b.animation.animateResizeTargets&&(d.dataset.origWidth-d.dataset.finalWidth&&1*d.dataset.finalWidth&&(d.style.width=d.dataset.finalWidth+"px",d.style.marginRight=-(d.dataset.finalWidth-d.dataset.interWidth)+1*d.dataset.finalMarginRight+"px"),d.dataset.origHeight-d.dataset.finalHeight&&1*d.dataset.finalHeight&&(d.style.height=d.dataset.finalHeight+"px",d.style.marginBottom=-(d.dataset.finalHeight-d.dataset.interHeight)+1*d.dataset.finalMarginBottom+"px"))}b._changingClass&&b._$container.removeClass(b.layout.containerClass).addClass(b._newClass);for(var c=0;c<b._$toHide.length;c++){for(var d=b._$toHide[c],e=a(d),g=b._getDelay(c),k={},i=0;2>i;i++){var j=0===i?j=b._prefix:"";k[j+"transition-delay"]=g+"ms",k[j+"transform"]=b.effects.transformOut,k.opacity=b.effects.opacity}e.css(b.effects.transition).css(k),(b.effects.transform||b.effects.opacity)&&b._bindTargetDone(e)}b._execAction("_animateTargets",1)},_bindTargetDone:function(b){var c=this,d=b[0];c._execAction("_bindTargetDone",0,arguments),d.dataset.bound||(d.dataset.bound=!0,c._targetsBound++,b.on("webkitTransitionEnd.mixItUp transitionend.mixItUp",function(e){(e.originalEvent.propertyName.indexOf("transform")>-1||e.originalEvent.propertyName.indexOf("opacity")>-1)&&a(e.originalEvent.target).is(c.selectors.target)&&(b.off(".mixItUp"),d.dataset.bound="",c._targetDone())})),c._execAction("_bindTargetDone",1,arguments)},_targetDone:function(){var a=this;a._execAction("_targetDone",0),a._targetsDone++,a._targetsDone===a._targetsBound&&a._cleanUp(),a._execAction("_targetDone",1)},_cleanUp:function(){var b=this,c=b.animation.animateResizeTargets?"transform opacity width height margin-bottom margin-right":"transform opacity",d=function(){b._$targets.removeStyle("transition",b._prefix)};b._execAction("_cleanUp",0),b._changingLayout?b._$show.css("display",b._newDisplay):b._$show.css("display",b.layout.display),b._$targets.css(b._brake),b._$targets.removeStyle(c,b._prefix).removeAttr("data-inter-pos-x data-inter-pos-y data-final-pos-x data-final-pos-y data-orig-pos-x data-orig-pos-y data-orig-height data-orig-width data-final-height data-final-width data-inter-width data-inter-height data-orig-margin-right data-orig-margin-bottom data-inter-margin-right data-inter-margin-bottom data-final-margin-right data-final-margin-bottom"),b._$hide.removeStyle("display"),b._$parent.removeStyle("height transition perspective-distance perspective perspective-origin-x perspective-origin-y perspective-origin perspectiveOrigin",b._prefix),b._sorting&&(b._printSort(),b._activeSort=b._newSortString,b._sorting=!1),b._changingLayout&&(b._changingDisplay&&(b.layout.display=b._newDisplay,b._changingDisplay=!1),b._changingClass&&(b._$parent.removeClass(b.layout.containerClass).addClass(b._newClass),b.layout.containerClass=b._newClass,b._changingClass=!1),b._changingLayout=!1),b._refresh(),b._buildState(),b._state.fail&&b._$container.addClass(b.layout.containerClassFail),b._$show=a(),b._$hide=a(),window.requestAnimationFrame&&requestAnimationFrame(d),b._mixing=!1,"function"==typeof b.callbacks._user&&b.callbacks._user.call(b._domNode,b._state,b),"function"==typeof b.callbacks.onMixEnd&&b.callbacks.onMixEnd.call(b._domNode,b._state,b),b._$container.trigger("mixEnd",[b._state,b]),b._state.fail&&("function"==typeof b.callbacks.onMixFail&&b.callbacks.onMixFail.call(b._domNode,b._state,b),b._$container.trigger("mixFail",[b._state,b])),b._loading&&("function"==typeof b.callbacks.onMixLoad&&b.callbacks.onMixLoad.call(b._domNode,b._state,b),b._$container.trigger("mixLoad",[b._state,b])),b._queue.length&&(b._execAction("_queue",0),b.multiMix(b._queue[0][0],b._queue[0][1],b._queue[0][2]),b._queue.splice(0,1)),b._execAction("_cleanUp",1),b._loading=!1},_getPrefixedCSS:function(a,b,c){var d=this,e={},f="",g=-1;for(g=0;2>g;g++)f=0===g?d._prefix:"",c?e[f+a]=f+b:e[f+a]=b;return d._execFilter("_getPrefixedCSS",e,arguments)},_getDelay:function(a){var b=this,c="function"==typeof b.animation.staggerSequence?b.animation.staggerSequence.call(b._domNode,a,b._state):a,d=b.animation.stagger?c*b.animation.staggerDuration:0;return b._execFilter("_getDelay",d,arguments)},_parseMultiMixArgs:function(a){for(var b=this,c={command:null,animate:b.animation.enable,callback:null},d=0;d<a.length;d++){var e=a[d];null!==e&&("object"==typeof e||"string"==typeof e?c.command=e:"boolean"==typeof e?c.animate=e:"function"==typeof e&&(c.callback=e))}return b._execFilter("_parseMultiMixArgs",c,arguments)},_parseInsertArgs:function(b){for(var c=this,d={index:0,$object:a(),multiMix:{filter:c._state.activeFilter},callback:null},e=0;e<b.length;e++){var f=b[e];"number"==typeof f?d.index=f:"object"==typeof f&&f instanceof a?d.$object=f:"object"==typeof f&&c._helpers._isElement(f)?d.$object=a(f):"object"==typeof f&&null!==f?d.multiMix=f:"boolean"!=typeof f||f?"function"==typeof f&&(d.callback=f):d.multiMix=!1}return c._execFilter("_parseInsertArgs",d,arguments)},_execAction:function(a,b,c){var d=this,e=b?"post":"pre";if(!d._actions.isEmptyObject&&d._actions.hasOwnProperty(a))for(var f in d._actions[a][e])d._actions[a][e][f].call(d,c)},_execFilter:function(a,b,c){var d=this;if(d._filters.isEmptyObject||!d._filters.hasOwnProperty(a))return b;for(var e in d._filters[a])return d._filters[a][e].call(d,c)},_helpers:{_camelCase:function(a){return a.replace(/-([a-z])/g,function(a){return a[1].toUpperCase()})},_isElement:function(a){return window.HTMLElement?a instanceof HTMLElement:null!==a&&1===a.nodeType&&"string"===a.nodeName}},isMixing:function(){var a=this;return a._execFilter("isMixing",a._mixing)},filter:function(){var a=this,b=a._parseMultiMixArgs(arguments);a._clicking&&(a._toggleString=""),a.multiMix({filter:b.command},b.animate,b.callback)},sort:function(){var a=this,b=a._parseMultiMixArgs(arguments);a.multiMix({sort:b.command},b.animate,b.callback)},changeLayout:function(){var a=this,b=a._parseMultiMixArgs(arguments);a.multiMix({changeLayout:b.command},b.animate,b.callback)},multiMix:function(){var a=this,c=a._parseMultiMixArgs(arguments);if(a._execAction("multiMix",0,arguments),a._mixing)a.animation.queue&&a._queue.length<a.animation.queueLimit?(a._queue.push(arguments),a.controls.enable&&!a._clicking&&a._updateControls(c.command),a._execAction("multiMixQueue",1,arguments)):("function"==typeof a.callbacks.onMixBusy&&a.callbacks.onMixBusy.call(a._domNode,a._state,a),a._$container.trigger("mixBusy",[a._state,a]),a._execAction("multiMixBusy",1,arguments));else{a.controls.enable&&!a._clicking&&(a.controls.toggleFilterButtons&&a._buildToggleArray(),a._updateControls(c.command,a.controls.toggleFilterButtons)),a._queue.length<2&&(a._clicking=!1),delete a.callbacks._user,c.callback&&(a.callbacks._user=c.callback);var d=c.command.sort,e=c.command.filter,f=c.command.changeLayout;a._refresh(),d&&(a._newSort=a._parseSort(d),a._newSortString=d,a._sorting=!0,a._sort()),e!==b&&(e="all"===e?a.selectors.target:e,a._activeFilter=e),a._filter(),f&&(a._newDisplay="string"==typeof f?f:f.display||a.layout.display,a._newClass=f.containerClass||"",(a._newDisplay!==a.layout.display||a._newClass!==a.layout.containerClass)&&(a._changingLayout=!0,a._changingClass=a._newClass!==a.layout.containerClass,a._changingDisplay=a._newDisplay!==a.layout.display)),a._$targets.css(a._brake),a._goMix(c.animate^a.animation.enable?c.animate:a.animation.enable),a._execAction("multiMix",1,arguments)}},insert:function(){var a=this,b=a._parseInsertArgs(arguments),c="function"==typeof b.callback?b.callback:null,d=document.createDocumentFragment(),e=function(){return a._refresh(),a._$targets.length?b.index<a._$targets.length||!a._$targets.length?a._$targets[b.index]:a._$targets[a._$targets.length-1].nextElementSibling:a._$parent[0].children[0]}();if(a._execAction("insert",0,arguments),b.$object){for(var f=0;f<b.$object.length;f++){var g=b.$object[f];d.appendChild(g),d.appendChild(document.createTextNode(" "))}a._$parent[0].insertBefore(d,e)}a._execAction("insert",1,arguments),"object"==typeof b.multiMix&&a.multiMix(b.multiMix,c)},prepend:function(){var a=this,b=a._parseInsertArgs(arguments);a.insert(0,b.$object,b.multiMix,b.callback)},append:function(){var a=this,b=a._parseInsertArgs(arguments);a.insert(a._state.totalTargets,b.$object,b.multiMix,b.callback)},getOption:function(a){var c=this,d=function(a,c){for(var d=c.split("."),e=d.pop(),f=d.length,g=1,h=d[0]||c;(a=a[h])&&f>g;)h=d[g],g++;return a!==b?a[e]!==b?a[e]:a:void 0};return a?c._execFilter("getOption",d(c,a),arguments):c},setOptions:function(b){var c=this;c._execAction("setOptions",0,arguments),"object"==typeof b&&a.extend(!0,c,b),c._execAction("setOptions",1,arguments)},getState:function(){var a=this;return a._execFilter("getState",a._state,a)},forceRefresh:function(){var a=this;a._refresh(!1,!0)},destroy:function(b){var c=this,d=a.MixItUp.prototype._bound._filter,e=a.MixItUp.prototype._bound._sort;c._execAction("destroy",0,arguments),c._$body.add(a(c.selectors.sort)).add(a(c.selectors.filter)).off(".mixItUp");for(var f=0;f<c._$targets.length;f++){var g=c._$targets[f];b&&(g.style.display=""),delete g.mixParent}c._execAction("destroy",1,arguments),d[c.selectors.filter]&&d[c.selectors.filter]>1?d[c.selectors.filter]--:1===d[c.selectors.filter]&&delete d[c.selectors.filter],e[c.selectors.sort]&&e[c.selectors.sort]>1?e[c.selectors.sort]--:1===e[c.selectors.sort]&&delete e[c.selectors.sort],delete a.MixItUp.prototype._instances[c._id]}},a.fn.mixItUp=function(){var e,c=arguments,d=[],f=function(b,c){var d=new a.MixItUp,e=function(){return("00000"+(16777216*Math.random()<<0).toString(16)).substr(-6).toUpperCase()};d._execAction("_instantiate",0,arguments),b.id=b.id?b.id:"MixItUp"+e(),d._instances[b.id]||(d._instances[b.id]=d,d._init(b,c)),d._execAction("_instantiate",1,arguments)};return e=this.each(function(){if(c&&"string"==typeof c[0]){var e=a.MixItUp.prototype._instances[this.id];if("isLoaded"===c[0])d.push(e?!0:!1);else{var g=e[c[0]](c[1],c[2],c[3]);g!==b&&d.push(g)}}else f(this,c[0])}),d.length?d.length>1?d:d[0]:e},a.fn.removeStyle=function(c,d){return d=d?d:"",this.each(function(){for(var e=this,f=c.split(" "),g=0;g<f.length;g++)for(var h=0;4>h;h++){switch(h){case 0:var i=f[g];break;case 1:var i=a.MixItUp.prototype._helpers._camelCase(i);break;case 2:var i=d+f[g];break;case 3:var i=a.MixItUp.prototype._helpers._camelCase(d+f[g])}if(e.style[i]!==b&&"unknown"!=typeof e.style[i]&&e.style[i].length>0&&(e.style[i]=""),!d&&1===h)break}e.attributes&&e.attributes.style&&e.attributes.style!==b&&""===e.attributes.style.value&&e.attributes.removeNamedItem("style")})}}(jQuery);
statics/modernizr.js ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Modernizr v2.8.3
3
+ * www.modernizr.com
4
+ *
5
+ * Copyright (c) Faruk Ates, Paul Irish, Alex Sexton
6
+ * Available under the BSD and MIT licenses: www.modernizr.com/license/
7
+ */
8
+ window.Modernizr=function(a,b,c){function d(a){t.cssText=a}function e(a,b){return d(x.join(a+";")+(b||""))}function f(a,b){return typeof a===b}function g(a,b){return!!~(""+a).indexOf(b)}function h(a,b){for(var d in a){var e=a[d];if(!g(e,"-")&&t[e]!==c)return"pfx"==b?e:!0}return!1}function i(a,b,d){for(var e in a){var g=b[a[e]];if(g!==c)return d===!1?a[e]:f(g,"function")?g.bind(d||b):g}return!1}function j(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+z.join(d+" ")+d).split(" ");return f(b,"string")||f(b,"undefined")?h(e,b):(e=(a+" "+A.join(d+" ")+d).split(" "),i(e,b,c))}function k(){o.input=function(c){for(var d=0,e=c.length;e>d;d++)E[c[d]]=!!(c[d]in u);return E.list&&(E.list=!(!b.createElement("datalist")||!a.HTMLDataListElement)),E}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),o.inputtypes=function(a){for(var d,e,f,g=0,h=a.length;h>g;g++)u.setAttribute("type",e=a[g]),d="text"!==u.type,d&&(u.value=v,u.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(e)&&u.style.WebkitAppearance!==c?(q.appendChild(u),f=b.defaultView,d=f.getComputedStyle&&"textfield"!==f.getComputedStyle(u,null).WebkitAppearance&&0!==u.offsetHeight,q.removeChild(u)):/^(search|tel)$/.test(e)||(d=/^(url|email)$/.test(e)?u.checkValidity&&u.checkValidity()===!1:u.value!=v)),D[a[g]]=!!d;return D}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var l,m,n="2.8.3",o={},p=!0,q=b.documentElement,r="modernizr",s=b.createElement(r),t=s.style,u=b.createElement("input"),v=":)",w={}.toString,x=" -webkit- -moz- -o- -ms- ".split(" "),y="Webkit Moz O ms",z=y.split(" "),A=y.toLowerCase().split(" "),B={svg:"http://www.w3.org/2000/svg"},C={},D={},E={},F=[],G=F.slice,H=function(a,c,d,e){var f,g,h,i,j=b.createElement("div"),k=b.body,l=k||b.createElement("body");if(parseInt(d,10))for(;d--;)h=b.createElement("div"),h.id=e?e[d]:r+(d+1),j.appendChild(h);return f=["&#173;",'<style id="s',r,'">',a,"</style>"].join(""),j.id=r,(k?j:l).innerHTML+=f,l.appendChild(j),k||(l.style.background="",l.style.overflow="hidden",i=q.style.overflow,q.style.overflow="hidden",q.appendChild(l)),g=c(j,a),k?j.parentNode.removeChild(j):(l.parentNode.removeChild(l),q.style.overflow=i),!!g},I=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b)&&c(b).matches||!1;var d;return H("@media "+b+" { #"+r+" { position: absolute; } }",function(b){d="absolute"==(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle).position}),d},J=function(){function a(a,e){e=e||b.createElement(d[a]||"div"),a="on"+a;var g=a in e;return g||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(a,""),g=f(e[a],"function"),f(e[a],"undefined")||(e[a]=c),e.removeAttribute(a))),e=null,g}var d={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return a}(),K={}.hasOwnProperty;m=f(K,"undefined")||f(K.call,"undefined")?function(a,b){return b in a&&f(a.constructor.prototype[b],"undefined")}:function(a,b){return K.call(a,b)},Function.prototype.bind||(Function.prototype.bind=function(a){var b=this;if("function"!=typeof b)throw new TypeError;var c=G.call(arguments,1),d=function(){if(this instanceof d){var e=function(){};e.prototype=b.prototype;var f=new e,g=b.apply(f,c.concat(G.call(arguments)));return Object(g)===g?g:f}return b.apply(a,c.concat(G.call(arguments)))};return d}),C.flexbox=function(){return j("flexWrap")},C.flexboxlegacy=function(){return j("boxDirection")},C.canvas=function(){var a=b.createElement("canvas");return!(!a.getContext||!a.getContext("2d"))},C.canvastext=function(){return!(!o.canvas||!f(b.createElement("canvas").getContext("2d").fillText,"function"))},C.webgl=function(){return!!a.WebGLRenderingContext},C.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:H(["@media (",x.join("touch-enabled),("),r,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=9===a.offsetTop}),c},C.geolocation=function(){return"geolocation"in navigator},C.postmessage=function(){return!!a.postMessage},C.websqldatabase=function(){return!!a.openDatabase},C.indexedDB=function(){return!!j("indexedDB",a)},C.hashchange=function(){return J("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},C.history=function(){return!(!a.history||!history.pushState)},C.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},C.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},C.rgba=function(){return d("background-color:rgba(150,255,150,.5)"),g(t.backgroundColor,"rgba")},C.hsla=function(){return d("background-color:hsla(120,40%,100%,.5)"),g(t.backgroundColor,"rgba")||g(t.backgroundColor,"hsla")},C.multiplebgs=function(){return d("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(t.background)},C.backgroundsize=function(){return j("backgroundSize")},C.borderimage=function(){return j("borderImage")},C.borderradius=function(){return j("borderRadius")},C.boxshadow=function(){return j("boxShadow")},C.textshadow=function(){return""===b.createElement("div").style.textShadow},C.opacity=function(){return e("opacity:.55"),/^0.55$/.test(t.opacity)},C.cssanimations=function(){return j("animationName")},C.csscolumns=function(){return j("columnCount")},C.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return d((a+"-webkit- ".split(" ").join(b+a)+x.join(c+a)).slice(0,-a.length)),g(t.backgroundImage,"gradient")},C.cssreflections=function(){return j("boxReflect")},C.csstransforms=function(){return!!j("transform")},C.csstransforms3d=function(){var a=!!j("perspective");return a&&"webkitPerspective"in q.style&&H("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=9===b.offsetLeft&&3===b.offsetHeight}),a},C.csstransitions=function(){return j("transition")},C.fontface=function(){var a;return H('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&0===g.indexOf(d.split(" ")[0])}),a},C.generatedcontent=function(){var a;return H(["#",r,"{font:0/0 a}#",r,':after{content:"',v,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},C.video=function(){var a=b.createElement("video"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(d){}return c},C.audio=function(){var a=b.createElement("audio"),c=!1;try{(c=!!a.canPlayType)&&(c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(d){}return c},C.localstorage=function(){try{return localStorage.setItem(r,r),localStorage.removeItem(r),!0}catch(a){return!1}},C.sessionstorage=function(){try{return sessionStorage.setItem(r,r),sessionStorage.removeItem(r),!0}catch(a){return!1}},C.webworkers=function(){return!!a.Worker},C.applicationcache=function(){return!!a.applicationCache},C.svg=function(){return!!b.createElementNS&&!!b.createElementNS(B.svg,"svg").createSVGRect},C.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==B.svg},C.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(w.call(b.createElementNS(B.svg,"animate")))},C.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(w.call(b.createElementNS(B.svg,"clipPath")))};for(var L in C)m(C,L)&&(l=L.toLowerCase(),o[l]=C[L](),F.push((o[l]?"":"no-")+l));return o.input||k(),o.addTest=function(a,b){if("object"==typeof a)for(var d in a)m(a,d)&&o.addTest(d,a[d]);else{if(a=a.toLowerCase(),o[a]!==c)return o;b="function"==typeof b?b():b,"undefined"!=typeof p&&p&&(q.className+=" "+(b?"":"no-")+a),o[a]=b}return o},d(""),s=u=null,function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=s.elements;return"string"==typeof a?a.split(" "):a}function e(a){var b=r[a[p]];return b||(b={},q++,a[p]=q,r[q]=b),b}function f(a,c,d){if(c||(c=b),k)return c.createElement(a);d||(d=e(c));var f;return f=d.cache[a]?d.cache[a].cloneNode():o.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!f.canHaveChildren||n.test(a)||f.tagUrn?f:d.frag.appendChild(f)}function g(a,c){if(a||(a=b),k)return a.createDocumentFragment();c=c||e(a);for(var f=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)f.createElement(h[g]);return f}function h(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return s.shivMethods?f(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(s,b.frag)}function i(a){a||(a=b);var d=e(a);return!s.shivCSS||j||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),k||h(a,d),a}var j,k,l="3.7.0",m=a.html5||{},n=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,o=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,p="_html5shiv",q=0,r={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",j="hidden"in a,k=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){j=!0,k=!0}}();var s={elements:m.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:l,shivCSS:m.shivCSS!==!1,supportsUnknownElements:k,shivMethods:m.shivMethods!==!1,type:"default",shivDocument:i,createElement:f,createDocumentFragment:g};a.html5=s,i(b)}(this,b),o._version=n,o._prefixes=x,o._domPrefixes=A,o._cssomPrefixes=z,o.mq=I,o.hasEvent=J,o.testProp=function(a){return h([a])},o.testAllProps=j,o.testStyles=H,o.prefixed=function(a,b,c){return b?j(a,b,c):j(a,"pfx")},q.className=q.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(p?" js "+F.join(" "):""),o}(this,this.document);
widgets-for-siteorigin.php ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @wordpress-plugin
4
+ * Plugin Name: Widgets for SiteOrigin
5
+ * Plugin URI: https://wpinked.com/
6
+ * Description: A few more widgets to play around with. Built on top of the SiteOrigin Widgets Bundle.
7
+ * Version: 1.1.0
8
+ * Author: wpinked
9
+ * Author URI: wpinked.com
10
+ * License: GPL-2.0+
11
+ * License URI: http://www.gnu.org/licenses/gpl-2.0.txt
12
+ * Text Domain: wpinked-widgets
13
+ * Domain Path: /languages
14
+ *
15
+ * @link wpinked.com
16
+ * @since 1.0.0
17
+ * @package Widgets_For_SiteOrigin
18
+ *
19
+ */
20
+
21
+ define('INKED_SO_WIDGETS', '1.1.0');
22
+
23
+ require_once ( 'inc/visibility.php' );
24
+
25
+ require_once ( 'inc/enqueue.php' );
26
+
27
+ require_once ( 'inc/functions.php' );
28
+
29
+ // Widgets.... Come out and play!
30
+ function wpinked_so_widgets_collection($folders){
31
+ $folders[] = plugin_dir_path(__FILE__) . '/widgets/';
32
+ return $folders;
33
+ }
34
+ add_filter('siteorigin_widgets_widget_folders', 'wpinked_so_widgets_collection');
35
+
36
+ // Placing all widgets under the 'Widgets for SiteOrigin' Tab
37
+ function wpinked_so_add_widget_tabs($tabs) {
38
+ $tabs[] = array(
39
+ 'title' => __('Widgets for SiteOrigin', 'wpinked-widgets'),
40
+ 'filter' => array(
41
+ 'groups' => array('widgets-for-so')
42
+ )
43
+ );
44
+ return $tabs;
45
+ }
46
+ add_filter('siteorigin_panels_widget_dialog_tabs', 'wpinked_so_add_widget_tabs', 20);
47
+
48
+ // Adding Icon for all Widgets
49
+ function wpinked_so_widget_add_bundle_groups($widgets){
50
+ foreach( $widgets as $class => &$widget ) {
51
+ if( preg_match('/Inked_(.*)_SO_Widget/', $class, $matches) ) {
52
+ $widget['icon'] = 'wpinked-widget dashicons dashicons-editor-code';
53
+ $widget['groups'] = array('widgets-for-so');
54
+ }
55
+ }
56
+ return $widgets;
57
+ }
58
+ add_filter('siteorigin_panels_widgets', 'wpinked_so_widget_add_bundle_groups', 11);
59
+
60
+ // Making the plugin translation ready
61
+ function wpinked_so_translation() {
62
+ load_plugin_textdomain( 'wpinked_widgets', false, dirname( plugin_basename(__FILE__) ) . '/languages/' );
63
+ }
64
+ add_action('plugins_loaded', 'wpinked_so_translation');
widgets/ink-alrt-widget/assets/banner.svg ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Alert" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(6.000000, 6.000000)" stroke="#F7EBE8" stroke-width="4" sketch:type="MSShapeGroup">
11
+ <polygon id="Polygon" transform="translate(114.500000, 114.500000) rotate(-22.500000) translate(-114.500000, -114.500000) " points="114.5 27 176.371843 52.6281566 202 114.5 176.371843 176.371843 114.5 202 52.6281566 176.371843 27 114.5 52.6281566 52.6281566 "></polygon>
12
+ <path d="M116,67 L116,122" id="Line" stroke-linecap="square"></path>
13
+ <path d="M116,145 L116,136" id="dot" stroke-linecap="square"></path>
14
+ </g>
15
+ </g>
16
+ </g>
17
+ </svg>
widgets/ink-alrt-widget/ink-alrt-widget.php ADDED
@@ -0,0 +1,163 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Alert
5
+ Description: Communicate success, warnings, failure or just information.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Alert_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-alert',
17
+
18
+ __('Inked Alert', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Communicate success, warnings, failure or just information.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/alert-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+
30
+ 'message' => array(
31
+ 'type' => 'text',
32
+ 'label' => __('Message', 'wpinked-widgets'),
33
+ 'default' => 'This is an Alert Message'
34
+ ),
35
+
36
+ 'close' => array(
37
+ 'type' => 'checkbox',
38
+ 'label' => __( 'Show Close Button ?', 'wpinked-widgets' ),
39
+ 'default' => true
40
+ ),
41
+
42
+ 'icon' => array(
43
+ 'type' => 'section',
44
+ 'label' => __( 'Icon' , 'wpinked-widgets' ),
45
+ 'hide' => true,
46
+ 'fields' => array(
47
+
48
+ 'select' => array(
49
+ 'type' => 'icon',
50
+ 'label' => __('Icon', 'wpinked-widgets'),
51
+ ),
52
+ 'color' => array(
53
+ 'type' => 'color',
54
+ 'label' => __( 'Icon Color', 'wpinked-widgets' ),
55
+ 'default' => ''
56
+ ),
57
+ )
58
+ ),
59
+
60
+ 'styling' => array(
61
+ 'type' => 'section',
62
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
63
+ 'hide' => true,
64
+ 'fields' => array(
65
+
66
+ 'theme' => array(
67
+ 'type' => 'select',
68
+ 'label' => __('Theme', 'wpinked-widgets'),
69
+ 'default' => 'classic',
70
+ 'options' => array(
71
+ 'classic' => __('Classic', 'wpinked-widgets'),
72
+ 'flat' => __('Flat', 'wpinked-widgets'),
73
+ 'outline' => __('Outline', 'wpinked-widgets'),
74
+ 'threed' => __('3D', 'wpinked-widgets'),
75
+ 'shadow' => __('Shadow', 'wpinked-widgets'),
76
+ 'modern' => __('Modern', 'wpinked-widgets'),
77
+ ),
78
+ ),
79
+
80
+ 'background' => array(
81
+ 'type' => 'color',
82
+ 'label' => __( 'Background Color', 'wpinked-widgets' ),
83
+ 'default' => ''
84
+ ),
85
+
86
+ 'text' => array(
87
+ 'type' => 'color',
88
+ 'label' => __( 'Text Color', 'wpinked-widgets' ),
89
+ 'default' => ''
90
+ ),
91
+
92
+ 'close' => array(
93
+ 'type' => 'color',
94
+ 'label' => __( 'Close Color', 'wpinked-widgets' ),
95
+ 'default' => ''
96
+ ),
97
+
98
+ 'corners' => array(
99
+ 'type' => 'select',
100
+ 'label' => __('Corners', 'wpinked-widgets'),
101
+ 'default' => '0.25em',
102
+ 'options' => array(
103
+ '0em' => __('Sharp', 'wpinked-widgets'),
104
+ '0.25em' => __('Slightly curved', 'wpinked-widgets'),
105
+ '0.75em' => __('Highly curved', 'wpinked-widgets'),
106
+ ),
107
+ ),
108
+
109
+ 'size' => array(
110
+ 'type' => 'select',
111
+ 'label' => __('Size', 'wpinked-widgets'),
112
+ 'default' => 'standard',
113
+ 'options' => array(
114
+ 'small' => __('Small', 'wpinked-widgets'),
115
+ 'standard' => __('Standard', 'wpinked-widgets'),
116
+ 'large' => __('Large', 'wpinked-widgets'),
117
+ ),
118
+ ),
119
+
120
+ )
121
+ ),
122
+ ),
123
+
124
+ //The $base_folder path string.
125
+ plugin_dir_path(__FILE__)
126
+ );
127
+ }
128
+
129
+ function get_template_name($instance) {
130
+ return 'alert';
131
+ }
132
+
133
+ function get_style_name($instance) {
134
+ return 'alert';
135
+ }
136
+
137
+ function enqueue_frontend_scripts( $instance ) {
138
+
139
+ wp_register_script( 'iw-alert-js', siteorigin_widget_get_plugin_dir_url('ink-alert') . 'scripts/alert.js', array( 'iw-foundation-js' ), INKED_SO_WIDGETS, true );
140
+
141
+ wp_enqueue_script( 'iw-alert-init', siteorigin_widget_get_plugin_dir_url('ink-alert') . 'scripts/alert.init.js', array( 'iw-alert-js' ), INKED_SO_WIDGETS, true );
142
+
143
+ wp_enqueue_style( 'iw-alert', siteorigin_widget_get_plugin_dir_url('ink-alert') . 'styles/alert.css', array(), INKED_SO_WIDGETS );
144
+
145
+ parent::enqueue_frontend_scripts( $instance );
146
+ }
147
+
148
+ function get_less_variables($instance) {
149
+ if( empty( $instance ) ) return array();
150
+
151
+ return array(
152
+ 'radius' => $instance['styling']['corners'],
153
+ 'size' => $instance['styling']['size'],
154
+ 'text' => $instance['styling']['text'],
155
+ 'bg' => $instance['styling']['background'],
156
+ 'theme' => $instance['styling']['theme'],
157
+ 'close' => $instance['styling']['close'],
158
+ );
159
+ }
160
+
161
+ }
162
+
163
+ siteorigin_widget_register('ink-alert', __FILE__, 'Inked_Alert_SO_Widget');
widgets/ink-alrt-widget/scripts/alert.init.js ADDED
@@ -0,0 +1 @@
 
1
+ jQuery(document).foundation();
widgets/ink-alrt-widget/scripts/alert.js ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ;(function ($, window, document, undefined) {
2
+ 'use strict';
3
+
4
+ Foundation.libs.alert = {
5
+ name : 'alert',
6
+
7
+ version : '5.5.3',
8
+
9
+ settings : {
10
+ callback : function () {}
11
+ },
12
+
13
+ init : function (scope, method, options) {
14
+ this.bindings(method, options);
15
+ },
16
+
17
+ events : function () {
18
+ var self = this,
19
+ S = this.S;
20
+
21
+ $(this.scope).off('.alert').on('click.fndtn.alert', '[' + this.attr_name() + '] .close', function (e) {
22
+ var alertBox = S(this).closest('[' + self.attr_name() + ']'),
23
+ settings = alertBox.data(self.attr_name(true) + '-init') || self.settings;
24
+
25
+ e.preventDefault();
26
+ if (Modernizr.csstransitions) {
27
+ alertBox.addClass('alert-close');
28
+ alertBox.on('transitionend webkitTransitionEnd oTransitionEnd', function (e) {
29
+ S(this).trigger('close.fndtn.alert').remove();
30
+ settings.callback();
31
+ });
32
+ } else {
33
+ alertBox.fadeOut(300, function () {
34
+ S(this).trigger('close.fndtn.alert').remove();
35
+ settings.callback();
36
+ });
37
+ }
38
+ });
39
+ },
40
+
41
+ reflow : function () {}
42
+ };
43
+ }(jQuery, window, window.document));
widgets/ink-alrt-widget/styles/alert.css ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .iw-so-alert {
2
+ display: block;
3
+ font-weight: normal;
4
+ position: relative;
5
+ -webkit-transition: opacity 300ms ease-out;
6
+ -moz-transition: opacity 300ms ease-out;
7
+ -ms-transition: opacity 300ms ease-out;
8
+ -o-transition: opacity 300ms ease-out;
9
+ transition: opacity 300ms ease-out;
10
+ }
11
+
12
+ .iw-so-alert [class^="sow-icon-"] {
13
+ position: absolute;
14
+ top: 50%;
15
+ -webkit-transform: translateY(-50%);
16
+ -moz-transform: translateY(-50%);
17
+ -ms-transform: translateY(-50%);
18
+ -o-transform: translateY(-50%);
19
+ transform: translateY(-50%);
20
+ }
21
+
22
+ .iw-so-alert .close {
23
+ right: 0.25rem;
24
+ line-height: .9;
25
+ opacity: 0.3;
26
+ padding: 0 6px 4px;
27
+ position: absolute;
28
+ top: 50%;
29
+ -webkit-transform: translateY(-50%);
30
+ -moz-transform: translateY(-50%);
31
+ -ms-transform: translateY(-50%);
32
+ -o-transform: translateY(-50%);
33
+ transform: translateY(-50%);
34
+ text-decoration: none;
35
+ }
36
+
37
+ .iw-so-alert .close:hover,
38
+ .iw-so-alert .close:focus {
39
+ opacity: 0.5;
40
+ }
41
+
42
+ .iw-so-alert.alert-close {
43
+ opacity: 0;
44
+ }
widgets/ink-alrt-widget/styles/alert.less ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+
3
+ @radius: 0em;
4
+ @size: standard;
5
+ @text: #fff;
6
+ @bg: #333;
7
+ @theme: flat;
8
+ @close: #fff;
9
+
10
+ .iw-so-alert {
11
+
12
+ color: @text;
13
+ border-radius: @radius;
14
+
15
+ .alert-size() when (@size = small) { font-size: 0.95em; padding: 0.875em 1.75em 0.875em 3em; }
16
+ .alert-size() when (@size = standard) { font-size: 1.25em; padding: 1em 2em 1em 3.2em; }
17
+ .alert-size() when (@size = large) { font-size: 1.5em; padding: 1.125em 2.25em 1.125em 3em; }
18
+ .alert-size();
19
+
20
+ .alert-theme() when (@theme = classic) {
21
+ .gradient(@bg, darken(@bg, 15%), @bg);
22
+ border: 1px solid;
23
+ border-color: darken(@bg, 8%) darken(@bg, 10%) darken(@bg, 13%) darken(@bg, 10%);
24
+ }
25
+ .alert-theme() when (@theme = flat) {
26
+ background: @bg;
27
+ border: 1px solid @bg;
28
+ }
29
+ .alert-theme() when (@theme = outline) {
30
+ background: transparent;
31
+ border: 1px solid @bg;
32
+ }
33
+ .alert-theme() when (@theme = threed) {
34
+ background: @bg;
35
+ border: solid darken(@bg, 10%);
36
+ border-width: 0 0 5px 0;
37
+ }
38
+ .alert-theme() when (@theme = shadow) {
39
+ .drop-shadow(1px, 1px, 4px, 0.4);
40
+ background: @bg;
41
+ border: 1px solid @bg;
42
+ }
43
+ .alert-theme() when (@theme = modern) {
44
+ background: @bg;
45
+ .box-shadow(inset 5px 0px 0px darken(@bg, 25%))
46
+ }
47
+ .alert-theme();
48
+
49
+ [class^="sow-icon-"] {
50
+ .icon-size() when (@size = small) { left: 1.5em; font-size: 1em; }
51
+ .icon-size() when (@size = standard) { left: 1em; font-size: 1.25em; }
52
+ .icon-size() when (@size = large) { left: 0.5em; font-size: 1.5em; }
53
+ .icon-size();
54
+ }
55
+
56
+ .iw-so-alert-msg {
57
+ line-height: 1.5;
58
+ }
59
+
60
+ .close {
61
+ color: @close;
62
+ .close-size() when (@size = small) { font-size: 1em; }
63
+ .close-size() when (@size = standard) { font-size: 1.15em; }
64
+ .close-size() when (@size = large) { font-size: 1.4em; }
65
+ .close-size();
66
+ }
67
+
68
+ }
widgets/ink-alrt-widget/tpl/alert.php ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $icon_styles = array();
3
+ if(!empty($instance['icon']['color'])) $icon_styles[] = 'color: '.$instance['icon']['color'];
4
+ ?>
5
+ <div data-alert class="iw-so-alert">
6
+
7
+ <?php if(!empty($instance['icon']['select'])) : ?>
8
+
9
+ <?php echo siteorigin_widget_get_icon( $instance['icon']['select'], $icon_styles ); ?>
10
+
11
+ <?php endif; ?>
12
+
13
+
14
+ <div class="iw-so-alert-msg"><?php echo $instance['message']; ?></div>
15
+
16
+ <?php if ($instance['close'] == 1 ) : ?><a href="#" class="close">&times;</a><?php endif; ?>
17
+
18
+ </div>
widgets/ink-ardn-widget/assets/banner.svg ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Accordion" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(35.000000, 59.000000)" stroke="#F7EBE8" stroke-width="4" sketch:type="MSShapeGroup">
11
+ <rect id="Rectangle" x="0" y="22" width="170" height="115"></rect>
12
+ <path d="M10,12 L160,12" id="Line" stroke-linecap="square"></path>
13
+ <path d="M20,1 L150,1" id="Line-2" stroke-linecap="square"></path>
14
+ </g>
15
+ </g>
16
+ </g>
17
+ </svg>
widgets/ink-ardn-widget/ink-ardn-widget.php ADDED
@@ -0,0 +1,236 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Accordion
5
+ Description: Expand and collapse content that is broken into logical sections.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Accordion_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-accordion',
17
+
18
+ __('Inked Accordion', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Expand and collapse content that is broken into logical sections.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/accordion-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+
30
+ 'admin' => array(
31
+ 'type' => 'text',
32
+ 'label' => __('Admin Label', 'wpinked-widgets'),
33
+ 'default' => ''
34
+ ),
35
+
36
+ 'settings' => array(
37
+ 'type' => 'section',
38
+ 'label' => __( 'Settings' , 'wpinked-widgets' ),
39
+ 'hide' => true,
40
+ 'fields' => array(
41
+
42
+ 'id' => array(
43
+ 'type' => 'text',
44
+ 'label' => __('ID', 'wpinked-widgets'),
45
+ 'description' => __( 'Should be unique on the page. Must begin with alphabets[A-Za-z]. Should not contain spaces.', 'wpinked-widgets' ),
46
+ 'default' => ''
47
+ ),
48
+
49
+ 'expand' => array(
50
+ 'type' => 'checkbox',
51
+ 'label' => __( 'Open multiple toggles simultaneously?', 'wpinked-widgets' ),
52
+ 'default' => false
53
+ ),
54
+
55
+ 'toggleable' => array(
56
+ 'type' => 'checkbox',
57
+ 'label' => __( 'Close toggle only if another is open ?', 'wpinked-widgets' ),
58
+ 'default' => false
59
+ ),
60
+
61
+ 'icon-open' => array(
62
+ 'type' => 'icon',
63
+ 'label' => __('Closed Toggle Icon', 'wpinked-widgets'),
64
+ ),
65
+
66
+ 'icon-close' => array(
67
+ 'type' => 'icon',
68
+ 'label' => __('Open Toggle Icon.', 'wpinked-widgets'),
69
+ ),
70
+
71
+ ),
72
+ ),
73
+
74
+ 'toggles' => array(
75
+ 'type' => 'repeater',
76
+ 'label' => __( 'Toggles' , 'wpinked-widgets' ),
77
+ 'item_name' => __( 'Toggle', 'wpinked-widgets' ),
78
+ 'item_label' => array(
79
+ 'selector' => "[id*='title']",
80
+ 'update_event' => 'change',
81
+ 'value_method' => 'val'
82
+ ),
83
+ 'fields' => array(
84
+
85
+ 'title' => array(
86
+ 'type' => 'text',
87
+ 'label' => __('Title', 'wpinked-widgets'),
88
+ 'default' => ''
89
+ ),
90
+
91
+ 'active' => array(
92
+ 'type' => 'checkbox',
93
+ 'label' => __( 'Open by default ?', 'wpinked-widgets' ),
94
+ 'default' => false,
95
+ ),
96
+
97
+ 'content' => array(
98
+ 'type' => 'tinymce',
99
+ 'label' => __( 'Content', 'wpinked-widgets' ),
100
+ 'default' => '',
101
+ 'rows' => 10,
102
+ 'default_editor' => 'tinymce',
103
+ 'button_filters' => array(
104
+ 'mce_buttons' => array( $this, 'filter_mce_buttons' ),
105
+ 'mce_buttons_2' => array( $this, 'filter_mce_buttons_2' ),
106
+ 'mce_buttons_3' => array( $this, 'filter_mce_buttons_3' ),
107
+ 'mce_buttons_4' => array( $this, 'filter_mce_buttons_5' ),
108
+ 'quicktags_settings' => array( $this, 'filter_quicktags_settings' ),
109
+ ),
110
+ )
111
+
112
+ )
113
+ ),
114
+
115
+ 'styling' => array(
116
+ 'type' => 'section',
117
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
118
+ 'hide' => true,
119
+ 'fields' => array(
120
+
121
+ 'icon' => array(
122
+ 'type' => 'select',
123
+ 'label' => __( 'Icon Location', 'wpinked-widgets' ),
124
+ 'default' => 'right',
125
+ 'options' => array(
126
+ 'left' => __( 'Left', 'wpinked-widgets' ),
127
+ 'right' => __( 'Right', 'wpinked-widgets' )
128
+ )
129
+ ),
130
+
131
+ 'text' => array(
132
+ 'type' => 'select',
133
+ 'label' => __( 'Text Alignment', 'wpinked-widgets' ),
134
+ 'default' => 'iw-text-left',
135
+ 'options' => array(
136
+ 'iw-text-left' => __( 'Left', 'wpinked-widgets' ),
137
+ 'iw-text-center' => __( 'Center', 'wpinked-widgets' ),
138
+ 'iw-text-right' => __( 'Right', 'wpinked-widgets' ),
139
+ )
140
+ ),
141
+
142
+ 'gap' => array(
143
+ 'type' => 'checkbox',
144
+ 'label' => __( 'Gap between toggles?', 'wpinked-widgets' ),
145
+ 'default' => true
146
+ ),
147
+
148
+ 'title-bg' => array(
149
+ 'type' => 'color',
150
+ 'label' => __( 'Title Background Color', 'wpinked-widgets' ),
151
+ 'default' => ''
152
+ ),
153
+
154
+ 'title-h-bg' => array(
155
+ 'type' => 'color',
156
+ 'label' => __( 'Title Background Hover Color', 'wpinked-widgets' ),
157
+ 'default' => ''
158
+ ),
159
+
160
+ 'title' => array(
161
+ 'type' => 'color',
162
+ 'label' => __( 'Title Color', 'wpinked-widgets' ),
163
+ 'default' => ''
164
+ ),
165
+
166
+ 'title-h' => array(
167
+ 'type' => 'color',
168
+ 'label' => __( 'Title Hover Color', 'wpinked-widgets' ),
169
+ 'default' => ''
170
+ ),
171
+
172
+ 'icon-open' => array(
173
+ 'type' => 'color',
174
+ 'label' => __( 'Icon Open Color', 'wpinked-widgets' ),
175
+ 'default' => ''
176
+ ),
177
+
178
+ 'icon-close' => array(
179
+ 'type' => 'color',
180
+ 'label' => __( 'Icon Close Color', 'wpinked-widgets' ),
181
+ 'default' => ''
182
+ ),
183
+
184
+ 'content-bg' => array(
185
+ 'type' => 'color',
186
+ 'label' => __( 'Content Background Color', 'wpinked-widgets' ),
187
+ 'default' => ''
188
+ ),
189
+
190
+ )
191
+ ),
192
+ ),
193
+
194
+ //The $base_folder path string.
195
+ plugin_dir_path(__FILE__)
196
+ );
197
+ }
198
+
199
+ function get_template_name($instance) {
200
+ return 'accordion';
201
+ }
202
+
203
+ function get_style_name($instance) {
204
+ return 'accordion';
205
+ }
206
+
207
+ function enqueue_frontend_scripts( $instance ) {
208
+
209
+ wp_register_script( 'iw-accordion-js', siteorigin_widget_get_plugin_dir_url('ink-accordion') . 'scripts/accordion.js', array( 'iw-foundation-js' ), INKED_SO_WIDGETS, true );
210
+
211
+ wp_enqueue_script( 'iw-accordion-init', siteorigin_widget_get_plugin_dir_url('ink-accordion') . 'scripts/accordion.init.js', array( 'iw-accordion-js' ), INKED_SO_WIDGETS, true );
212
+
213
+ wp_enqueue_style( 'iw-accordion', siteorigin_widget_get_plugin_dir_url('ink-accordion') . 'styles/accordion.css', array(), INKED_SO_WIDGETS );
214
+
215
+ parent::enqueue_frontend_scripts( $instance );
216
+ }
217
+
218
+ function get_less_variables($instance) {
219
+ if( empty( $instance ) ) return array();
220
+
221
+ return array(
222
+ 'gap' => $instance['styling']['gap'],
223
+ 'icon' => $instance['styling']['icon'],
224
+ 'title' => $instance['styling']['title'],
225
+ 'title-bg' => $instance['styling']['title-bg'],
226
+ 'title-h' => $instance['styling']['title-h'],
227
+ 'title-h-bg' => $instance['styling']['title-h-bg'],
228
+ 'cont-bg' => $instance['styling']['content-bg'],
229
+ 'icon-open' => $instance['styling']['icon-open'],
230
+ 'icon-close' => $instance['styling']['icon-close'],
231
+ );
232
+ }
233
+
234
+ }
235
+
236
+ siteorigin_widget_register('ink-accordion', __FILE__, 'Inked_Accordion_SO_Widget');
widgets/ink-ardn-widget/scripts/accordion.init.js ADDED
@@ -0,0 +1 @@
 
1
+ jQuery(document).foundation();
widgets/ink-ardn-widget/scripts/accordion.js ADDED
@@ -0,0 +1,125 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ;(function ($, window, document, undefined) {
2
+ 'use strict';
3
+
4
+ Foundation.libs.accordion = {
5
+ name : 'accordion',
6
+
7
+ version : '5.5.3',
8
+
9
+ settings : {
10
+ content_class : 'content',
11
+ active_class : 'active',
12
+ multi_expand : false,
13
+ toggleable : true,
14
+ callback : function () {}
15
+ },
16
+
17
+ init : function (scope, method, options) {
18
+ this.bindings(method, options);
19
+ },
20
+
21
+ events : function (instance) {
22
+ var self = this;
23
+ var S = this.S;
24
+ self.create(this.S(instance));
25
+
26
+ S(this.scope)
27
+ .off('.fndtn.accordion')
28
+ .on('click.fndtn.accordion', '[' + this.attr_name() + '] > dd > a, [' + this.attr_name() + '] > li > a', function (e) {
29
+ var accordion = S(this).closest('[' + self.attr_name() + ']'),
30
+ groupSelector = self.attr_name() + '=' + accordion.attr(self.attr_name()),
31
+ settings = accordion.data(self.attr_name(true) + '-init') || self.settings,
32
+ target = S('#' + this.href.split('#')[1]),
33
+ aunts = $('> dd, > li', accordion),
34
+ siblings = aunts.children('.' + settings.content_class),
35
+ active_content = siblings.filter('.' + settings.active_class);
36
+
37
+ e.preventDefault();
38
+
39
+ if (accordion.attr(self.attr_name())) {
40
+ siblings = siblings.add('[' + groupSelector + '] dd > ' + '.' + settings.content_class + ', [' + groupSelector + '] li > ' + '.' + settings.content_class);
41
+ aunts = aunts.add('[' + groupSelector + '] dd, [' + groupSelector + '] li');
42
+ }
43
+
44
+ if (settings.toggleable && target.is(active_content)) {
45
+ target.parent('dd, li').toggleClass(settings.active_class, false);
46
+ target.toggleClass(settings.active_class, false);
47
+ S(this).attr('aria-expanded', function(i, attr){
48
+ return attr === 'true' ? 'false' : 'true';
49
+ });
50
+ settings.callback(target);
51
+ target.triggerHandler('toggled', [accordion]);
52
+ accordion.triggerHandler('toggled', [target]);
53
+ return;
54
+ }
55
+
56
+ if (!settings.multi_expand) {
57
+ siblings.removeClass(settings.active_class);
58
+ aunts.removeClass(settings.active_class);
59
+ aunts.children('a').attr('aria-expanded','false');
60
+ }
61
+
62
+ target.addClass(settings.active_class).parent().addClass(settings.active_class);
63
+ settings.callback(target);
64
+ target.triggerHandler('toggled', [accordion]);
65
+ accordion.triggerHandler('toggled', [target]);
66
+ S(this).attr('aria-expanded','true');
67
+ });
68
+ },
69
+
70
+ create: function($instance) {
71
+ var self = this,
72
+ accordion = $instance,
73
+ aunts = $('> .accordion-navigation', accordion),
74
+ settings = accordion.data(self.attr_name(true) + '-init') || self.settings;
75
+
76
+ aunts.children('a').attr('aria-expanded','false');
77
+ aunts.has('.' + settings.content_class + '.' + settings.active_class).addClass(settings.active_class).children('a').attr('aria-expanded','true');
78
+
79
+ if (settings.multi_expand) {
80
+ $instance.attr('aria-multiselectable','true');
81
+ }
82
+ },
83
+
84
+ toggle : function(options) {
85
+ var options = typeof options !== 'undefined' ? options : {};
86
+ var selector = typeof options.selector !== 'undefined' ? options.selector : '';
87
+ var toggle_state = typeof options.toggle_state !== 'undefined' ? options.toggle_state : '';
88
+ var $accordion = typeof options.$accordion !== 'undefined' ? options.$accordion : this.S(this.scope).closest('[' + this.attr_name() + ']');
89
+
90
+ var $items = $accordion.find('> dd' + selector + ', > li' + selector);
91
+ if ( $items.length < 1 ) {
92
+ if ( window.console ) {
93
+ console.error('Selection not found.', selector);
94
+ }
95
+ return false;
96
+ }
97
+
98
+ var S = this.S;
99
+ var active_class = this.settings.active_class;
100
+ $items.each(function() {
101
+ var $item = S(this);
102
+ var is_active = $item.hasClass(active_class);
103
+ if ( ( is_active && toggle_state === 'close' ) || ( !is_active && toggle_state === 'open' ) || toggle_state === '' ) {
104
+ $item.find('> a').trigger('click.fndtn.accordion');
105
+ }
106
+ });
107
+ },
108
+
109
+ open : function(options) {
110
+ var options = typeof options !== 'undefined' ? options : {};
111
+ options.toggle_state = 'open';
112
+ this.toggle(options);
113
+ },
114
+
115
+ close : function(options) {
116
+ var options = typeof options !== 'undefined' ? options : {};
117
+ options.toggle_state = 'close';
118
+ this.toggle(options);
119
+ },
120
+
121
+ off : function () {},
122
+
123
+ reflow : function () {}
124
+ };
125
+ }(jQuery, window, window.document));
widgets/ink-ardn-widget/styles/accordion.css ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ .accordion {
3
+ margin-bottom: 0;
4
+ margin-left: 0;
5
+ }
6
+
7
+ .accordion:before, .accordion:after {
8
+ content: " ";
9
+ display: table;
10
+ }
11
+
12
+ .accordion:after {
13
+ clear: both;
14
+ }
15
+
16
+ .accordion .accordion-navigation {
17
+ display: block;
18
+ margin-bottom: 0;
19
+ margin-left: 0 !important;
20
+ margin-top: 0 !important;
21
+ margin-right: 0 !important;
22
+ }
23
+
24
+ .accordion .accordion-navigation > a {
25
+ display: block;
26
+ font-family: inherit;
27
+ font-size: 1.1em;
28
+ padding: 1em;
29
+ text-decoration: none;
30
+ outline: none;
31
+ position: relative;
32
+ }
33
+
34
+ .accordion .accordion-navigation.active > a .iw-so-tgl-close {
35
+ display: block;
36
+ }
37
+
38
+ .accordion .accordion-navigation.active > a .iw-so-tgl-open {
39
+ display: none;
40
+ }
41
+
42
+ .accordion .accordion-navigation > a span {
43
+ position: absolute;
44
+ top: 5px;
45
+ }
46
+
47
+ .accordion .accordion-navigation > a .iw-so-tgl-close {
48
+ display: none;
49
+ }
50
+
51
+ .accordion .accordion-navigation > a .iw-so-tgl-open {
52
+ display: block;
53
+ }
54
+
55
+ .accordion .accordion-navigation > a:hover {
56
+ background: #e3e3e3;
57
+ }
58
+
59
+ .accordion .accordion-navigation > .content {
60
+ display: none;
61
+ padding: 0.9375em;
62
+ }
63
+
64
+ .accordion .accordion-navigation > .content.active {
65
+ background: #FFFFFF;
66
+ display: block;
67
+ }
68
+
69
+ .accordion .accordion-navigation > .content * {
70
+ display: none;
71
+ }
72
+
73
+ .accordion .accordion-navigation > .content.active * {
74
+ display: block;
75
+ }
76
+
77
+ .accordion .accordion-navigation > a {
78
+ position: relative;
79
+ z-index: 10;
80
+ }
81
+ .accordion .accordion-navigation > .content {
82
+ padding: 0 0.9375rem;
83
+ height: 0;
84
+ display: block;
85
+ opacity: 0;
86
+ -webkit-transition: .5s all ease;
87
+ -moz-transition: .5s all ease;
88
+ -o-transition: .5s all ease;
89
+ -ms-transition: .5s all ease;
90
+ transition: .5s all ease;
91
+ }
92
+ .accordion .accordion-navigation > .content.active {
93
+ height: auto;
94
+ padding: 0.9375rem;
95
+ opacity: 1;
96
+ }
widgets/ink-ardn-widget/styles/accordion.less ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @gap: 0;
2
+ @icon: right;
3
+ @title-bg: transparent;
4
+ @cont-bg: transparent;
5
+ @title: #333;
6
+ @icon-open: #333;
7
+ @icon-close: #333;
8
+ @title-h: #666;
9
+ @title-h-bg: transparent;
10
+
11
+ .accordion .accordion-navigation {
12
+ .gap() when (@gap = 1) { margin-bottom: 12px; }
13
+ .gap();
14
+ a {
15
+ background: @title-bg;
16
+ color: @title;
17
+
18
+ .icon-padding() when (@icon = right) { padding-right: 3.5em; }
19
+ .icon-padding() when (@icon = left) { padding-left: 3.5em; }
20
+ .icon-padding();
21
+
22
+ &:hover{
23
+ background: @title-h-bg;
24
+ color: @title-h;
25
+ }
26
+
27
+ span {
28
+ .icon-pos() when (@icon = right) { right: 10px; }
29
+ .icon-pos() when (@icon = left) { left: 10px; }
30
+ .icon-pos();
31
+ }
32
+
33
+ .iw-so-tgl-close {
34
+ color: @icon-close;
35
+ }
36
+
37
+ .iw-so-tgl-open {
38
+ color: @icon-open;
39
+ }
40
+ }
41
+ .content {
42
+ background: @cont-bg;
43
+ }
44
+ }
widgets/ink-ardn-widget/tpl/accordion.php ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $icon_styles = array();
4
+ $icon_styles[] = 'font-size: 2em';
5
+ if(!empty($instance['styling']['icon'])) $icon_styles[] = 'color: '.$instance['styling']['icon'];
6
+
7
+ if($instance['settings']['expand']):
8
+ $expand = ' multi_expand: true;';
9
+ endif;
10
+
11
+ if($instance['settings']['toggleable']):
12
+ $toggleable = ' toggleable: false;';
13
+ endif;
14
+
15
+ $acc_no = 1;
16
+ ?>
17
+
18
+ <ul class="accordion" data-accordion data-options="<?php echo $expand . $toggleable; ?>">
19
+
20
+ <?php foreach( $instance['toggles'] as $i => $toggle ) { ?>
21
+
22
+ <li class="accordion-navigation">
23
+
24
+ <a href="#<?php echo $instance['settings']['id'] . '-' . $acc_no; ?>" class="<?php echo $instance['styling']['text']; ?>">
25
+ <?php echo $toggle['title']; ?>
26
+ <span class="iw-so-tgl-open"><?php echo siteorigin_widget_get_icon( $instance['settings']['icon-open'], $icon_styles ); ?></span>
27
+ <span class="iw-so-tgl-close"><?php echo siteorigin_widget_get_icon( $instance['settings']['icon-close'], $icon_styles ); ?></span>
28
+ </a>
29
+
30
+ <div id="<?php echo $instance['settings']['id'] . '-' . $acc_no; ?>" class="content<?php echo ($toggle['active'] == 1 ? ' active' : '' ); ?>">
31
+
32
+ <?php echo $toggle['content']; ?>
33
+
34
+ </div>
35
+
36
+ </li>
37
+
38
+ <?php $acc_no++; ?>
39
+
40
+ <?php } ?>
41
+
42
+ </ul>
widgets/ink-auds-widget/assets/banner.svg ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Audio" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(35.000000, 52.000000)" stroke="#F7EBE8" stroke-width="4" sketch:type="MSShapeGroup">
11
+ <path d="M28.4553425,127.5 C35.3134932,127.5 46.422642,127.492636 51.2382026,123.337891 C57.0832475,118.294931 55.9456115,108.327252 55.9456115,100 C55.9456115,92.1796887 56.4767266,82.6869204 51.2382026,77.6796875 C46.3029864,72.9623708 35.8202548,72.5 28.4553425,72.5 C13.2728862,72.5 0.965073625,84.8121694 0.965073625,100 C0.965073625,115.187831 13.2728862,127.5 28.4553425,127.5 Z" id="Oval-4"></path>
12
+ <path d="M141.455343,127.5 C148.313493,127.5 159.422642,127.492636 164.238203,123.337891 C170.083247,118.294931 168.945611,108.327252 168.945611,100 C168.945611,92.1796887 169.476727,82.6869204 164.238203,77.6796875 C159.302986,72.9623708 148.820255,72.5 141.455343,72.5 C126.272886,72.5 113.965074,84.8121694 113.965074,100 C113.965074,115.187831 126.272886,127.5 141.455343,127.5 Z" id="Oval-4-Copy" transform="translate(141.500000, 100.000000) scale(-1, 1) translate(-141.500000, -100.000000) "></path>
13
+ <path d="M141.5,72.5 C141.5,72.5 140.851277,40.0060231 131.181282,24.6243591 C128.178279,19.8476059 115.05329,2.90014584 110.213285,2.02739906 C104.614446,1.01781949 86.5,1.5 86.5,1.5" id="Line" stroke-linecap="square"></path>
14
+ <path d="M83.5,72.5 C83.5,72.5 82.8512774,40.0060231 73.181282,24.6243591 C70.1782792,19.8476059 57.0532896,2.90014584 52.2132854,2.02739906 C46.6144458,1.01781949 28.5,1.5 28.5,1.5" id="Line-Copy" stroke-linecap="square" transform="translate(56.000000, 36.942457) scale(-1, 1) translate(-56.000000, -36.942457) "></path>
15
+ <path d="M45,77 C45,77 40.8919272,93.176455 40.8919272,101 C40.8919272,109.176455 45,125 45,125" id="Line" stroke-linecap="square"></path>
16
+ <path d="M129.108073,77 C129.108073,77 125,93.176455 125,101 C125,109.176455 129.108073,125 129.108073,125" id="Line-Copy-2" stroke-linecap="square" transform="translate(127.054036, 101.000000) scale(-1, 1) translate(-127.054036, -101.000000) "></path>
17
+ <path d="M77.21875,1.37617183 L94.0027351,1.37617183" id="Line" stroke-linecap="square"></path>
18
+ </g>
19
+ </g>
20
+ </g>
21
+ </svg>
widgets/ink-auds-widget/ink-auds-widget.php ADDED
@@ -0,0 +1,225 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Audio
5
+ Description: Play self or externally hosted audios.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Audio_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-audio',
17
+
18
+ __('Inked Audio', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Play self or externally hosted audios.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/audio-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+
30
+ 'admin' => array(
31
+ 'type' => 'text',
32
+ 'label' => __('Admin Label', 'wpinked-widgets'),
33
+ 'default' => ''
34
+ ),
35
+
36
+ 'audio' => array(
37
+ 'type' => 'section',
38
+ 'label' => __( 'Audio' , 'wpinked-widgets' ),
39
+ 'hide' => true,
40
+ 'fields' => array(
41
+ 'type' => array(
42
+ 'type' => 'select',
43
+ 'label' => __( 'Audio Type', 'wpinked-widgets' ),
44
+ 'default' => 'oembed',
45
+ 'options' => array(
46
+ 'hosted' => __( 'Self Hosted', 'wpinked-widgets' ),
47
+ 'oembed' => __( 'oEmbed', 'wpinked-widgets' ),
48
+ ),
49
+ 'state_emitter' => array(
50
+ 'callback' => 'select',
51
+ 'args' => array('audio_type')
52
+ )
53
+ ),
54
+
55
+ 'hosted' => array(
56
+ 'type' => 'media',
57
+ 'fallback' => true,
58
+ 'label' => __( 'Audio File', 'wpinked-widgets' ),
59
+ 'default' => '',
60
+ 'library' => 'audio',
61
+ 'state_handler' => array(
62
+ 'audio_type[hosted]' => array('show'),
63
+ 'audio_type[oembed]' => array('hide'),
64
+ )
65
+ ),
66
+
67
+ 'image' => array(
68
+ 'type' => 'media',
69
+ 'fallback' => true,
70
+ 'label' => __( 'Background Image', 'wpinked-widgets' ),
71
+ 'default' => '',
72
+ 'library' => 'image',
73
+ 'state_handler' => array(
74
+ 'audio_type[hosted]' => array('show'),
75
+ 'audio_type[oembed]' => array('hide'),
76
+ )
77
+ ),
78
+
79
+ 'oembed' => array(
80
+ 'type' => 'text',
81
+ 'sanitize' => 'url',
82
+ 'label' => __( 'oEmbed Audio URL', 'wpinked-widgets' ),
83
+ 'state_handler' => array(
84
+ 'audio_type[hosted]' => array('hide'),
85
+ 'audio_type[oembed]' => array('show'),
86
+ )
87
+ ),
88
+
89
+ 'background' => array(
90
+ 'type' => 'color',
91
+ 'label' => __( 'Background Color', 'wpinked-widgets' ),
92
+ 'default' => '#3498db',
93
+ 'state_handler' => array(
94
+ 'audio_type[hosted]' => array('show'),
95
+ 'audio_type[oembed]' => array('hide'),
96
+ )
97
+ ),
98
+
99
+ 'bg-opacity' => array(
100
+ 'type' => 'slider',
101
+ 'label' => __( 'Background Opacity', 'wpinked-widgets' ),
102
+ 'default' => 0,
103
+ 'min' => 0,
104
+ 'max' => 100,
105
+ 'integer' => true,
106
+ 'state_handler' => array(
107
+ 'audio_type[hosted]' => array('show'),
108
+ 'audio_type[oembed]' => array('hide'),
109
+ )
110
+ ),
111
+
112
+ 'controls' => array(
113
+ 'type' => 'select',
114
+ 'label' => __('Controls Theme', 'wpinked-widgets'),
115
+ 'default' => 'iw-text-center',
116
+ 'options' => array(
117
+ 'iw-so-player-light' => __('Light', 'wpinked-widgets'),
118
+ 'iw-so-player-dark' => __('Dark', 'wpinked-widgets')
119
+ ),
120
+ 'state_handler' => array(
121
+ 'audio_type[hosted]' => array('show'),
122
+ 'audio_type[oembed]' => array('hide'),
123
+ )
124
+ ),
125
+
126
+ 'audio' => array(
127
+ 'type' => 'text',
128
+ 'label' => __( 'Audio Name', 'wpinked-widgets' ),
129
+ 'state_handler' => array(
130
+ 'audio_type[hosted]' => array('show'),
131
+ 'audio_type[oembed]' => array('hide'),
132
+ )
133
+ ),
134
+
135
+ 'artist' => array(
136
+ 'type' => 'text',
137
+ 'label' => __( 'Artist', 'wpinked-widgets' ),
138
+ 'state_handler' => array(
139
+ 'audio_type[hosted]' => array('show'),
140
+ 'audio_type[oembed]' => array('hide'),
141
+ )
142
+ ),
143
+
144
+ 'album' => array(
145
+ 'type' => 'text',
146
+ 'label' => __( 'Album', 'wpinked-widgets' ),
147
+ 'state_handler' => array(
148
+ 'audio_type[hosted]' => array('show'),
149
+ 'audio_type[oembed]' => array('hide'),
150
+ )
151
+ ),
152
+
153
+ 'text' => array(
154
+ 'type' => 'color',
155
+ 'label' => __( 'Text Color', 'wpinked-widgets' ),
156
+ 'default' => '#fff',
157
+ 'state_handler' => array(
158
+ 'audio_type[hosted]' => array('show'),
159
+ 'audio_type[oembed]' => array('hide'),
160
+ )
161
+ ),
162
+
163
+ 'align' => array(
164
+ 'type' => 'select',
165
+ 'label' => __('Text Alignment', 'wpinked-widgets'),
166
+ 'default' => 'iw-text-center',
167
+ 'options' => array(
168
+ 'iw-text-left' => __('Left', 'wpinked-widgets'),
169
+ 'iw-text-center' => __('Center', 'wpinked-widgets'),
170
+ 'iw-text-right' => __('Right', 'wpinked-widgets'),
171
+ ),
172
+ 'state_handler' => array(
173
+ 'audio_type[hosted]' => array('show'),
174
+ 'audio_type[oembed]' => array('hide'),
175
+ )
176
+ ),
177
+ ),
178
+ ),
179
+
180
+ ),
181
+
182
+ plugin_dir_path(__FILE__)
183
+ );
184
+ }
185
+
186
+ function get_template_name($instance) {
187
+ return 'audio';
188
+ }
189
+
190
+ function get_style_name($instance) {
191
+ if ( $instance['audio']['type'] == 'hosted' ):
192
+ return 'audio';
193
+ endif;
194
+ }
195
+
196
+ function enqueue_frontend_scripts( $instance ) {
197
+
198
+ if ( $instance['audio']['type'] == 'hosted' ):
199
+
200
+ wp_enqueue_style( 'iw-audio', siteorigin_widget_get_plugin_dir_url('ink-audio') . 'styles/audio.css', array(), INKED_SO_WIDGETS );
201
+
202
+ elseif ( $instance['audio']['type'] == 'oembed' ):
203
+
204
+ wp_enqueue_style( 'iw-audio-oembed', siteorigin_widget_get_plugin_dir_url('ink-audio') . 'styles/audio-oembed.css', array(), INKED_SO_WIDGETS );
205
+
206
+ endif;
207
+
208
+ parent::enqueue_frontend_scripts( $instance );
209
+ }
210
+
211
+ function get_less_variables($instance) {
212
+ if( empty( $instance ) ) return array();
213
+
214
+ $bg_img = wp_get_attachment_image_src( $instance['audio']['image'], 'full' );
215
+
216
+ return array(
217
+ 'bg' => $instance['audio']['background'],
218
+ 'bg-op' => $instance['audio']['bg-opacity'],
219
+ 'text' => $instance['audio']['text'],
220
+ );
221
+ }
222
+
223
+ }
224
+
225
+ siteorigin_widget_register('ink-audio', __FILE__, 'Inked_Audio_SO_Widget');
widgets/ink-auds-widget/styles/audio-oembed.css ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ .audio-flex-frame iframe,
2
+ .audio-flex-frame object,
3
+ .audio-flex-frame embed,
4
+ .audio-flex-frame frame {
5
+ width: 100%;
6
+ }
widgets/ink-auds-widget/styles/audio.css ADDED
@@ -0,0 +1,80 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .iw-so-player-dark .mejs-controls .mejs-button button {
2
+ background-image: url( '../../../statics/controls-dark.svg' ) !important;
3
+ }
4
+ .iw-so-audio-hosted {
5
+ background-repeat: no-repeat;
6
+ background-position: center;
7
+ background-size: cover;
8
+ }
9
+ .iw-so-audio-meta {
10
+ font-style: italic;
11
+ }
12
+ .iw-so-audio-file {
13
+ width: 100%;
14
+ padding: 5em 3em !important;
15
+ }
16
+ .iw-so-audio-file .mejs-container {
17
+ background: transparent;
18
+ }
19
+ .iw-so-audio-file .mejs-container .mejs-controls {
20
+ background: transparent;
21
+ }
22
+ .iw-so-audio-file.iw-so-player-light .mejs-time-loaded {
23
+ background: #fff;
24
+ opacity: 0.5;
25
+ }
26
+ .iw-so-audio-file.iw-so-player-light .mejs-time-current {
27
+ background: #fff !important;
28
+ }
29
+ .iw-so-audio-file.iw-so-player-light .mejs-time-total {
30
+ border: none;
31
+ background: transparent;
32
+ }
33
+ .iw-so-audio-file.iw-so-player-light .mejs-controls .mejs-time-rail .mejs-time-float {
34
+ background: transparent;
35
+ border: none;
36
+ color: #fff;
37
+ }
38
+
39
+ .iw-so-audio-file.iw-so-player-dark .mejs-time-loaded {
40
+ background: #333 !important;
41
+ opacity: 0.4;
42
+ }
43
+ .iw-so-audio-file.iw-so-player-dark .mejs-time-current,
44
+ .iw-so-audio-file.iw-so-player-dark .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
45
+ background: #333 !important;
46
+ }
47
+ .iw-so-audio-file.iw-so-player-dark .mejs-time-total {
48
+ border: none;
49
+ background: transparent;
50
+ }
51
+ .iw-so-audio-file.iw-so-player-dark .mejs-controls .mejs-time-rail .mejs-time-float {
52
+ background: transparent;
53
+ border: none;
54
+ color: #333;
55
+ }
56
+ .iw-so-audio-file.iw-so-player-dark .mejs-controls .mejs-time-rail .mejs-time-float-corner {
57
+ border-color: #333 transparent transparent;
58
+ }
59
+ .iw-so-audio-file.iw-so-player-dark .mejs-controls .mejs-time {
60
+ color: #333;
61
+ }
62
+ .iw-so-audio-file.iw-so-player-dark .mejs-controls .mejs-time-rail .mejs-time-total,
63
+ .iw-so-audio-file.iw-so-player-dark .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total {
64
+ background: rgba(51, 51, 51, 0.2);
65
+ }
66
+
67
+
68
+ .iw-so-audio-file .mejs-time-total {
69
+ margin:9px 5px !important;
70
+ }
71
+ .iw-so-audio-file .mejs-controls .mejs-time-rail span,
72
+ .iw-so-audio-file .mejs-controls .mejs-time-rail a,
73
+ .iw-so-audio-file .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,
74
+ .iw-so-audio-file .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
75
+ height: 2px !important;
76
+ }
77
+ .iw-so-audio-file .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,
78
+ .iw-so-audio-file .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
79
+ top: 13px;
80
+ }
widgets/ink-auds-widget/styles/audio.less ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @bg: #fff;
2
+ @text: #333;
3
+ @bg-op: 100;
4
+
5
+ .iw-so-audio-file {
6
+ background: fade(@bg, @bg-op);
7
+ }
8
+ .iw-so-audio-title,
9
+ .iw-so-audio-meta {
10
+ color: @text;
11
+ }
12
+ .iw-so-audio-title {
13
+ font-size: 1.6em;
14
+ margin-bottom: 0;
15
+ }
widgets/ink-auds-widget/tpl/audio.php ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="iw-so-audio">
2
+
3
+ <?php if ($instance['audio']['type'] == 'oembed' ) : ?>
4
+
5
+ <div class="iw-so-audio-oembed audio-flex-frame">
6
+
7
+ <?php echo wp_oembed_get( $instance['audio']['oembed'] ); ?>
8
+
9
+ </div>
10
+
11
+ <?php elseif ($instance['audio']['type'] == 'hosted' ) : ?>
12
+
13
+ <div class="iw-so-audio-hosted iw-row" style="background-image: url('<?php echo wp_get_attachment_image_src( $instance['audio']['image'], 'full' )[0]; ?>')">
14
+
15
+ <div class="iw-cols iw-so-audio-file <?php echo $instance['audio']['controls']; ?>">
16
+
17
+ <h4 class="iw-so-audio-title <?php echo $instance['audio']['align']; ?>"><?php echo $instance['audio']['audio']; ?></h4>
18
+
19
+ <?php if ( $instance['audio']['artist'] || $instance['audio']['album'] ): ?>
20
+
21
+ <p class="iw-so-audio-meta <?php echo $instance['audio']['align']; ?>">
22
+ <?php if ( $instance['audio']['artist'] ): ?>
23
+ <span class="iw-so-audio-artist"><?php echo $instance['audio']['artist']; ?></span>
24
+ <?php endif; ?>
25
+ <?php if ( $instance['audio']['album'] ): ?>
26
+ <span class="iw-so-audio-album"> - <?php echo $instance['audio']['album']; ?></span>
27
+ <?php endif; ?>
28
+ </p>
29
+
30
+ <?php endif; ?>
31
+
32
+ <?php echo do_shortcode('[audio src="' . wp_get_attachment_url( $instance['audio']['hosted'] ) . '"]'); ?>
33
+
34
+ </div>
35
+
36
+ </div>
37
+
38
+ <?php endif; ?>
39
+
40
+ </div>
widgets/ink-blgs-widget/assets/banner.svg ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Blog" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(29.000000, 24.000000)" stroke="#F7EBE8" stroke-width="4" sketch:type="MSShapeGroup">
11
+ <rect id="Rectangle-17" x="0" y="0" width="182" height="193"></rect>
12
+ <rect id="Rectangle-18" transform="translate(91.500000, 28.500000) scale(1, -1) translate(-91.500000, -28.500000) " x="12" y="21" width="159" height="15"></rect>
13
+ <rect id="Rectangle-19" x="16" y="49" width="67" height="48"></rect>
14
+ <path d="M100,52 L167,52" id="Line" stroke-linecap="square"></path>
15
+ <path d="M100,74 L167,74" id="Line-Copy-4" stroke-linecap="square"></path>
16
+ <path d="M99,96 L167,96" id="Line-Copy-5" stroke-linecap="square"></path>
17
+ <path d="M18,118 L167,118" id="Line-Copy-6" stroke-linecap="square"></path>
18
+ <path d="M18,140 L167,140" id="Line-Copy-7" stroke-linecap="square"></path>
19
+ <path d="M18,162 L167,162" id="Line-Copy-8" stroke-linecap="square"></path>
20
+ </g>
21
+ </g>
22
+ </g>
23
+ </svg>
widgets/ink-blgs-widget/ink-blgs-widget.php ADDED
@@ -0,0 +1,570 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Blog
5
+ Description: A widget to display Blog posts.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Blog_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-blog',
17
+
18
+ __('Inked Blog', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('A widget to display Blog posts.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/blog-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+ 'title' => array(
30
+ 'type' => 'text',
31
+ 'label' => __('Title', 'wpinked-widgets'),
32
+ 'default' => ''
33
+ ),
34
+
35
+ 'posts' => array(
36
+ 'type' => 'posts',
37
+ 'label' => __('Select Posts', 'wpinked-widgets'),
38
+ ),
39
+
40
+ 'icons' => array(
41
+ 'type' => 'section',
42
+ 'label' => __( 'Post Format Icons' , 'wpinked-widgets' ),
43
+ 'hide' => true,
44
+ 'fields' => array(
45
+
46
+ 'standard' => array(
47
+ 'type' => 'icon',
48
+ 'label' => __('Standard Icon', 'wpinked-widgets'),
49
+ ),
50
+
51
+ 'aside' => array(
52
+ 'type' => 'icon',
53
+ 'label' => __('Aside Icon', 'wpinked-widgets'),
54
+ ),
55
+
56
+ 'gallery' => array(
57
+ 'type' => 'icon',
58
+ 'label' => __('Gallery Icon', 'wpinked-widgets'),
59
+ ),
60
+
61
+ 'link' => array(
62
+ 'type' => 'icon',
63
+ 'label' => __('Link Icon', 'wpinked-widgets'),
64
+ ),
65
+
66
+ 'image' => array(
67
+ 'type' => 'icon',
68
+ 'label' => __('Image Icon', 'wpinked-widgets'),
69
+ ),
70
+
71
+ 'quote' => array(
72
+ 'type' => 'icon',
73
+ 'label' => __('Quote Icon', 'wpinked-widgets'),
74
+ ),
75
+ 'status' => array(
76
+ 'type' => 'icon',
77
+ 'label' => __('Status Icon', 'wpinked-widgets'),
78
+ ),
79
+ 'video' => array(
80
+ 'type' => 'icon',
81
+ 'label' => __('Video Icon', 'wpinked-widgets'),
82
+ ),
83
+ 'audio' => array(
84
+ 'type' => 'icon',
85
+ 'label' => __('Audio Icon', 'wpinked-widgets'),
86
+ ),
87
+ 'chat' => array(
88
+ 'type' => 'icon',
89
+ 'label' => __('Chat Icon', 'wpinked-widgets'),
90
+ ),
91
+
92
+ 'color' => array(
93
+ 'type' => 'color',
94
+ 'label' => __( 'Icon Color', 'wpinked-widgets' ),
95
+ 'default' => ''
96
+ ),
97
+
98
+ 'size' => array(
99
+ 'type' => 'text',
100
+ 'label' => __('Icon Size', 'wpinked-widgets'),
101
+ 'default' => '',
102
+ 'description' => __( 'Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
103
+ ),
104
+
105
+ 'bg' => array(
106
+ 'type' => 'color',
107
+ 'label' => __( 'Background Color', 'wpinked-widgets' ),
108
+ 'default' => ''
109
+ ),
110
+
111
+ 'bg-shape' => array(
112
+ 'type' => 'select',
113
+ 'label' => __( 'Background Corners', 'wpinked-widgets' ),
114
+ 'default' => '0',
115
+ 'options' => array(
116
+ '0' => __( 'Sharp', 'wpinked-widgets' ),
117
+ '5%' => __( 'Curved', 'wpinked-widgets' ),
118
+ '50%' => __( 'Round', 'wpinked-widgets' )
119
+ )
120
+ ),
121
+
122
+ 'show' => array(
123
+ 'type' => 'select',
124
+ 'label' => __( 'Show Icon', 'wpinked-widgets' ),
125
+ 'default' => 'default',
126
+ 'options' => array(
127
+ 'default' => __( 'Always', 'wpinked-widgets' ),
128
+ 'hover' => __( 'On Hover', 'wpinked-widgets' )
129
+ )
130
+ ),
131
+
132
+
133
+ )
134
+ ),
135
+
136
+ 'design' => array(
137
+ 'type' => 'section',
138
+ 'label' => __( 'Design' , 'wpinked-widgets' ),
139
+ 'hide' => true,
140
+ 'fields' => array(
141
+
142
+ 'layout' => array(
143
+ 'type' => 'select',
144
+ 'label' => __( 'Layout', 'wpinked-widgets' ),
145
+ 'default' => 'thumb-above',
146
+ 'options' => array(
147
+ 'thumb-above' => __( 'Image above the content', 'wpinked-widgets' ),
148
+ 'thumb-left' => __( 'Image to the left of content', 'wpinked-widgets' ),
149
+ 'thumb-right' => __( 'Image to the right of content', 'wpinked-widgets' ),
150
+ 'thumb-behind' => __( 'Image as content background', 'wpinked-widgets' ),
151
+ 'thumb-none' => __( 'No Image', 'wpinked-widgets' )
152
+ ),
153
+ 'state_emitter' => array(
154
+ 'callback' => 'select',
155
+ 'args' => array('blg_lyt')
156
+ )
157
+ ),
158
+
159
+ 'img-size' => array(
160
+ 'type' => 'select',
161
+ 'label' => __( 'Image Size', 'wpinked-widgets' ),
162
+ 'default' => 'thumb-above',
163
+ 'options' => array(
164
+ 'thumbnail' => __( 'Thumbnail', 'wpinked-widgets' ),
165
+ 'medium' => __( 'Medium', 'wpinked-widgets' ),
166
+ 'large' => __( 'Large', 'wpinked-widgets' ),
167
+ 'full' => __( 'Full', 'wpinked-widgets' ),
168
+ ),
169
+ 'state_handler' => array(
170
+ 'blg_lyt[thumb-above]' => array('show'),
171
+ 'blg_lyt[thumb-left]' => array('show'),
172
+ 'blg_lyt[thumb-right]' => array('show'),
173
+ 'blg_lyt[thumb-behind]'=> array('show'),
174
+ 'blg_lyt[thumb-none]' => array('hide'),
175
+ ),
176
+ 'description' => __( 'You can change the default size widths by going to <b>Settings</b> &rarr; <b>Media</b>.', 'wpinked-widgets' ),
177
+ ),
178
+
179
+ 'responsive' => array(
180
+ 'type' => 'checkbox',
181
+ 'label' => __( 'Make Image fullwidth for small screens ?', 'wpinked-widgets' ),
182
+ 'default' => true,
183
+ 'state_handler' => array(
184
+ 'blg_lyt[thumb-above]' => array('hide'),
185
+ 'blg_lyt[thumb-left]' => array('show'),
186
+ 'blg_lyt[thumb-right]' => array('show'),
187
+ 'blg_lyt[thumb-behind]'=> array('hide'),
188
+ 'blg_lyt[thumb-none]' => array('hide'),
189
+ )
190
+ ),
191
+
192
+ 'format' => array(
193
+ 'type' => 'checkbox',
194
+ 'label' => __( 'Show Format Icon ?', 'wpinked-widgets' ),
195
+ 'default' => true
196
+ ),
197
+
198
+ 'content' => array(
199
+ 'type' => 'checkbox',
200
+ 'label' => __( 'Show Content ?', 'wpinked-widgets' ),
201
+ 'default' => false,
202
+ 'description' => __( 'If this is checked, excerpt will not be shown.', 'wpinked-widgets' ),
203
+ ),
204
+
205
+ 'excerpt' => array(
206
+ 'type' => 'checkbox',
207
+ 'label' => __( 'Show Excerpt ?', 'wpinked-widgets' ),
208
+ 'default' => true
209
+ ),
210
+
211
+ 'e-link' => array(
212
+ 'type' => 'checkbox',
213
+ 'label' => __( 'Excerpt as a link ?', 'wpinked-widgets' ),
214
+ 'default' => false
215
+ ),
216
+
217
+ 'excerpt-length' => array(
218
+ 'type' => 'number',
219
+ 'label' => __( 'Excerpt Length', 'wpinked-widgets' ),
220
+ 'default' => '20'
221
+ ),
222
+
223
+ 'excerpt-after' => array(
224
+ 'type' => 'text',
225
+ 'label' => __('After Excerpt', 'wpinked-widgets'),
226
+ 'default' => '...'
227
+ ),
228
+
229
+ 'button' => array(
230
+ 'type' => 'checkbox',
231
+ 'label' => __( 'Show Read More Button ?', 'wpinked-widgets' ),
232
+ 'default' => false
233
+ ),
234
+
235
+ 'btn-text' => array(
236
+ 'type' => 'text',
237
+ 'label' => __('Button text', 'wpinked-widgets'),
238
+ 'default' => 'Read More'
239
+ ),
240
+
241
+ 'byline-above' => array(
242
+ 'type' => 'text',
243
+ 'label' => __('Byline above Title', 'wpinked-widgets'),
244
+ 'default' => '',
245
+ 'description' => __( 'Use %date% : The Date, %category% : List of Categories, %author% : Author name with link, %comments% : Number of Comments.', 'wpinked-widgets' ),
246
+ ),
247
+
248
+ 'byline-below' => array(
249
+ 'type' => 'text',
250
+ 'label' => __('Byline below Title', 'wpinked-widgets'),
251
+ 'default' => '',
252
+ 'description' => __( 'Use %date% : The Date, %category% : List of Categories, %author% : Author name with link, %comments% : Number of Comments.', 'wpinked-widgets' ),
253
+ ),
254
+
255
+ 'byline-end' => array(
256
+ 'type' => 'text',
257
+ 'label' => __('Byline after Excerpt', 'wpinked-widgets'),
258
+ 'default' => '',
259
+ 'description' => __( 'Use %date% : The Date, %category% : List of Categories, %author% : Author name with link, %comments% : Number of Comments.', 'wpinked-widgets' ),
260
+ ),
261
+
262
+ 'cats' => array(
263
+ 'type' => 'text',
264
+ 'label' => __('Text between Categories', 'wpinked-widgets'),
265
+ 'default' => ', '
266
+ ),
267
+
268
+ 'columns' => array(
269
+ 'type' => 'slider',
270
+ 'label' => __( 'Columns', 'wpinked-widgets' ),
271
+ 'default' => 1,
272
+ 'min' => 1,
273
+ 'max' => 4,
274
+ 'integer' => true
275
+ )
276
+
277
+ )
278
+ ),
279
+
280
+ 'styling' => array(
281
+ 'type' => 'section',
282
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
283
+ 'hide' => true,
284
+ 'fields' => array(
285
+
286
+ 'align' => array(
287
+ 'type' => 'select',
288
+ 'label' => __( 'Text Align', 'wpinked-widgets' ),
289
+ 'default' => 'iw-text-left',
290
+ 'options' => array(
291
+ 'iw-text-left' => __( 'Left', 'wpinked-widgets' ),
292
+ 'iw-text-center' => __( 'Center', 'wpinked-widgets' ),
293
+ 'iw-text-right' => __( 'Right', 'wpinked-widgets' )
294
+ ),
295
+ 'description' => __( 'Sets alignment for title, categories, bylines and excerpt.', 'wpinked-widgets' ),
296
+ ),
297
+
298
+ 'img-expand' => array(
299
+ 'type' => 'checkbox',
300
+ 'label' => __( 'Image Expands on hover ?', 'wpinked-widgets' ),
301
+ 'default' => false,
302
+ 'state_handler' => array(
303
+ 'blg_lyt[thumb-above]' => array('show'),
304
+ 'blg_lyt[thumb-left]' => array('show'),
305
+ 'blg_lyt[thumb-right]' => array('show'),
306
+ 'blg_lyt[thumb-behind]'=> array('hide'),
307
+ 'blg_lyt[thumb-none]' => array('hide'),
308
+ )
309
+ ),
310
+
311
+ 'img-ol' => array(
312
+ 'type' => 'color',
313
+ 'label' => __( 'Image Overlay Color', 'wpinked-widgets' ),
314
+ 'default' => '',
315
+ 'state_handler' => array(
316
+ 'blg_lyt[thumb-above]' => array('show'),
317
+ 'blg_lyt[thumb-left]' => array('show'),
318
+ 'blg_lyt[thumb-right]' => array('show'),
319
+ 'blg_lyt[thumb-behind]'=> array('show'),
320
+ 'blg_lyt[thumb-none]' => array('hide'),
321
+ )
322
+ ),
323
+
324
+ 'img-ol-o' => array(
325
+ 'type' => 'text',
326
+ 'label' => __('Image Overlay Opacity', 'wpinked-widgets'),
327
+ 'default' => '',
328
+ 'state_handler' => array(
329
+ 'blg_lyt[thumb-above]' => array('show'),
330
+ 'blg_lyt[thumb-left]' => array('show'),
331
+ 'blg_lyt[thumb-right]' => array('show'),
332
+ 'blg_lyt[thumb-behind]'=> array('show'),
333
+ 'blg_lyt[thumb-none]' => array('hide'),
334
+ ),
335
+ 'description' => __( 'Choose a number between 0 and 1. 0 : Transparent, 1: Opaque', 'wpinked-widgets' ),
336
+ ),
337
+
338
+ 'none-left' => array(
339
+ 'type' => 'text',
340
+ 'label' => __('Text distance from the left', 'wpinked-widgets'),
341
+ 'default' => '60px',
342
+ 'state_handler' => array(
343
+ 'blg_lyt[thumb-above]' => array('hide'),
344
+ 'blg_lyt[thumb-left]' => array('hide'),
345
+ 'blg_lyt[thumb-right]' => array('hide'),
346
+ 'blg_lyt[thumb-behind]'=> array('hide'),
347
+ 'blg_lyt[thumb-none]' => array('show'),
348
+ ),
349
+ 'description' => __( 'Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
350
+ ),
351
+
352
+ 'gap-bw' => array(
353
+ 'type' => 'checkbox',
354
+ 'label' => __( 'Gap between posts ?', 'wpinked-widgets' ),
355
+ 'default' => true,
356
+ 'state_handler' => array(
357
+ 'blg_lyt[thumb-above]' => array('hide'),
358
+ 'blg_lyt[thumb-left]' => array('hide'),
359
+ 'blg_lyt[thumb-right]' => array('hide'),
360
+ 'blg_lyt[thumb-behind]'=> array('show'),
361
+ 'blg_lyt[thumb-none]' => array('hide'),
362
+ )
363
+ ),
364
+
365
+ 'gap' => array(
366
+ 'type' => 'text',
367
+ 'label' => __('Gap Below Posts', 'wpinked-widgets'),
368
+ 'default' => '1em',
369
+ 'description' => __( 'Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
370
+ ),
371
+
372
+ 'content-bg' => array(
373
+ 'type' => 'color',
374
+ 'label' => __('Content Background Color', 'wpinked-widgets'),
375
+ 'default' => '',
376
+ 'state_handler' => array(
377
+ 'blg_lyt[thumb-above]' => array('show'),
378
+ 'blg_lyt[thumb-left]' => array('show'),
379
+ 'blg_lyt[thumb-right]' => array('show'),
380
+ 'blg_lyt[thumb-behind]'=> array('hide'),
381
+ 'blg_lyt[thumb-none]' => array('show'),
382
+ )
383
+ ),
384
+
385
+ 'title-size' => array(
386
+ 'type' => 'text',
387
+ 'label' => __('Title Font Size', 'wpinked-widgets'),
388
+ 'default' => '',
389
+ 'description' => __( 'Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
390
+ ),
391
+
392
+ 'title-color' => array(
393
+ 'type' => 'color',
394
+ 'label' => __( 'Title Color', 'wpinked-widgets' ),
395
+ 'default' => ''
396
+ ),
397
+
398
+ 'excerpt-size' => array(
399
+ 'type' => 'text',
400
+ 'label' => __('Excerpt Font Size', 'wpinked-widgets'),
401
+ 'default' => '',
402
+ 'description' => __( 'Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
403
+ ),
404
+
405
+ 'excerpt-color' => array(
406
+ 'type' => 'color',
407
+ 'label' => __( 'Excerpt Color', 'wpinked-widgets' ),
408
+ 'default' => ''
409
+ ),
410
+
411
+ 'meta-size' => array(
412
+ 'type' => 'text',
413
+ 'label' => __('Byline Font Size', 'wpinked-widgets'),
414
+ 'default' => '',
415
+ 'description' => __( 'Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
416
+ ),
417
+
418
+ 'meta-color' => array(
419
+ 'type' => 'color',
420
+ 'label' => __( 'Byline Color', 'wpinked-widgets' ),
421
+ 'default' => ''
422
+ ),
423
+
424
+ 'meta-link' => array(
425
+ 'type' => 'color',
426
+ 'label' => __( 'Byline Links Color', 'wpinked-widgets' ),
427
+ 'default' => ''
428
+ ),
429
+
430
+ 'hl-color' => array(
431
+ 'type' => 'color',
432
+ 'label' => __( 'Highlight Color', 'wpinked-widgets' ),
433
+ 'default' => ''
434
+ ),
435
+
436
+ 'btn-theme' => array(
437
+ 'type' => 'select',
438
+ 'label' => __('Button Theme', 'wpinked-widgets'),
439
+ 'default' => 'classic',
440
+ 'options' => array(
441
+ 'classic' => __('Classic', 'wpinked-widgets'),
442
+ 'flat' => __('Flat', 'wpinked-widgets'),
443
+ 'outline' => __('Outline', 'wpinked-widgets'),
444
+ 'threed' => __('3D', 'wpinked-widgets'),
445
+ 'shadow' => __('Shadow', 'wpinked-widgets'),
446
+ 'deline' => __('Deline', 'wpinked-widgets'),
447
+ ),
448
+ ),
449
+
450
+ 'btn-align' => array(
451
+ 'type' => 'select',
452
+ 'label' => __('Button Alignment', 'wpinked-widgets'),
453
+ 'default' => 'center',
454
+ 'options' => array(
455
+ 'left' => __('Left', 'wpinked-widgets'),
456
+ 'right' => __('Right', 'wpinked-widgets'),
457
+ 'center' => __('Center', 'wpinked-widgets'),
458
+ ),
459
+ ),
460
+
461
+ 'btn-size' => array(
462
+ 'type' => 'select',
463
+ 'label' => __('Button Size', 'wpinked-widgets'),
464
+ 'default' => 'standard',
465
+ 'options' => array(
466
+ 'tiny' => __('Tiny', 'wpinked-widgets'),
467
+ 'small' => __('Small', 'wpinked-widgets'),
468
+ 'standard' => __('Standard', 'wpinked-widgets'),
469
+ 'large' => __('Large', 'wpinked-widgets'),
470
+ ),
471
+ ),
472
+
473
+ 'btn-clr' => array(
474
+ 'type' => 'color',
475
+ 'label' => __('Button Highlight Color', 'wpinked-widgets'),
476
+ 'description' => __( 'Typically used as button background.', 'wpinked-widgets' ),
477
+ ),
478
+
479
+ 'btn-base' => array(
480
+ 'type' => 'color',
481
+ 'label' => __('Button Base Color', 'wpinked-widgets'),
482
+ 'description' => __( 'Typically used as text color.', 'wpinked-widgets' ),
483
+ ),
484
+
485
+ 'btn-hover' => array(
486
+ 'type' => 'checkbox',
487
+ 'default' => true,
488
+ 'label' => __('Use button hover effect ?', 'wpinked-widgets'),
489
+ ),
490
+
491
+ 'btn-click' => array(
492
+ 'type' => 'checkbox',
493
+ 'default' => true,
494
+ 'label' => __('Use button click effect ?', 'wpinked-widgets'),
495
+ ),
496
+
497
+ 'btn-corners' => array(
498
+ 'type' => 'select',
499
+ 'label' => __('Button Corners', 'wpinked-widgets'),
500
+ 'default' => '0.25em',
501
+ 'options' => array(
502
+ '0em' => __('Sharp', 'wpinked-widgets'),
503
+ '0.25em' => __('Slightly curved', 'wpinked-widgets'),
504
+ '0.75em' => __('Highly curved', 'wpinked-widgets'),
505
+ '1.5em' => __('Round', 'wpinked-widgets'),
506
+ ),
507
+ ),
508
+
509
+ )
510
+ ),
511
+ ),
512
+
513
+ //The $base_folder path string.
514
+ plugin_dir_path(__FILE__)
515
+ );
516
+ }
517
+
518
+ function get_template_name($instance) {
519
+ return $instance['design']['layout'];
520
+ }
521
+
522
+ function get_style_name($instance) {
523
+ return $instance['design']['layout'];
524
+ }
525
+
526
+ function enqueue_frontend_scripts( $instance ) {
527
+
528
+ wp_enqueue_script( 'iw-blog-init', siteorigin_widget_get_plugin_dir_url('ink-blog') . 'scripts/equalizer.init.js', array( 'iw-equalizer-js' ), INKED_SO_WIDGETS, true );
529
+
530
+ wp_enqueue_style( 'iw-blog', siteorigin_widget_get_plugin_dir_url('ink-blog') . 'styles/blog.css', array(), INKED_SO_WIDGETS );
531
+
532
+ parent::enqueue_frontend_scripts( $instance );
533
+ }
534
+
535
+ function get_less_variables($instance) {
536
+ if( empty( $instance ) ) return array();
537
+
538
+ return array(
539
+ 'design' => $instance['design']['layout'],
540
+ 'columns' => $instance['design']['columns'],
541
+ 'format' => $instance['design']['format'],
542
+ 'cnt-bg' => $instance['styling']['content-bg'],
543
+ 't-size' => $instance['styling']['title-size'],
544
+ 't-clr' => $instance['styling']['title-color'],
545
+ 'e-size' => $instance['styling']['excerpt-size'],
546
+ 'e-clr' => $instance['styling']['excerpt-color'],
547
+ 'm-size' => $instance['styling']['meta-size'],
548
+ 'm-clr' => $instance['styling']['meta-color'],
549
+ 'm-link' => $instance['styling']['meta-link'],
550
+ 'hl-clr' => $instance['styling']['hl-color'],
551
+ 'gap' => $instance['styling']['gap'],
552
+ 'img-ol' => $instance['styling']['img-ol'],
553
+ 'img-ol-o' => $instance['styling']['img-ol-o'],
554
+ 'img-e' => $instance['styling']['img-expand'],
555
+ 'icon-bg' => $instance['icons']['bg'],
556
+ 'icon-shape' => $instance['icons']['bg-shape'],
557
+ 'icon-show' => $instance['icons']['show'],
558
+ 'gap-left' => $instance['styling']['none-left'],
559
+ 'btn-theme' => $instance['styling']['btn-theme'],
560
+ 'btn-align' => $instance['styling']['btn-align'],
561
+ 'btn-size' => $instance['styling']['btn-size'],
562
+ 'btn-clr' => $instance['styling']['btn-clr'],
563
+ 'btn-base' => $instance['styling']['btn-base'],
564
+ 'gap-corners' => $instance['styling']['btn-corners'],
565
+ );
566
+ }
567
+
568
+ }
569
+
570
+ siteorigin_widget_register('ink-blog', __FILE__, 'Inked_Blog_SO_Widget');
widgets/ink-blgs-widget/scripts/equalizer.init.js ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ jQuery(document).foundation({
2
+ equalizer : {
3
+ // Specify if Equalizer should make elements equal height once they become stacked.
4
+ equalize_on_stack: true,
5
+ // Allow equalizer to resize hidden elements
6
+ //act_on_hidden_el: false
7
+ }
8
+ });
widgets/ink-blgs-widget/styles/blog.css ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .iw-so-article-btn {
2
+ -webkit-appearance: none;
3
+ -moz-appearance: none;
4
+ cursor: pointer;
5
+ font-family: inherit;
6
+ font-weight: normal;
7
+ line-height: normal;
8
+ position: relative;
9
+ text-align: center;
10
+ text-decoration: none;
11
+ display: inline-block;
12
+ -webkit-transition: all 0.15s ease-in-out;
13
+ -moz-transition: all 0.15s ease-in-out;
14
+ -ms-transition: all 0.15s ease-in-out;
15
+ -o-transition: all 0.15s ease-in-out;
16
+ transition: all 0.15s ease-in-out;
17
+ }
18
+
19
+ @media only screen and (min-width: 40.0625em) {
20
+ .iw-so-article-btn {
21
+ display: inline-block;
22
+ }
23
+ }
widgets/ink-blgs-widget/styles/button.less ADDED
@@ -0,0 +1,159 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+
3
+ @btn-theme: flat;
4
+ @btn-align: left;
5
+ @btn-size: standard;
6
+ @btn-clr: #333;
7
+ @btn-base: #fff;
8
+ @btn-crnr: 0em;
9
+
10
+ .iw-so-article-button {
11
+ .clearfix();
12
+
13
+ .btn-align() when (@btn-align = left) { text-align: left }
14
+ .btn-align() when (@btn-align = right) { text-align: right }
15
+ .btn-align() when (@btn-align = center) { text-align: center }
16
+ .btn-align();
17
+ }
18
+
19
+ .iw-so-article-btn {
20
+
21
+ border-radius: @btn-crnr;
22
+ color: @btn-base;
23
+
24
+ .btn-size() when (@btn-size = tiny) {
25
+ font-size: 0.75em;
26
+ padding: 0.625em 1.25em;
27
+ }
28
+ .btn-size() when (@btn-size = small) {
29
+ font-size: 0.9em;
30
+ padding: 0.875em 1.75em;
31
+ }
32
+ .btn-size() when (@btn-size = standard) {
33
+ font-size: 1.2em;
34
+ padding: 1em 2em ;
35
+ }
36
+ .btn-size() when (@btn-size = large) {
37
+ font-size: 1.75em;
38
+ padding: 1.125em 2.25em;
39
+ }
40
+ .btn-size();
41
+
42
+ .btn-theme() when (@btn-theme = classic) {
43
+ .gradient(@btn-clr, darken(@btn-clr, 15%), @btn-clr);
44
+ border: 1px solid;
45
+ border-color: darken(@btn-clr, 8%) darken(@btn-clr, 10%) darken(@btn-clr, 13%) darken(@btn-clr, 10%);
46
+ }
47
+ .btn-theme() when (@btn-theme = flat) {
48
+ background: @btn-clr;
49
+ border: 1px solid @btn-clr;
50
+ }
51
+ .btn-theme() when (@btn-theme = outline) {
52
+ background: transparent;
53
+ border: 2px solid @btn-clr;
54
+ color: @btn-clr;
55
+ }
56
+ .btn-theme() when (@btn-theme = threed) {
57
+ background: @btn-clr;
58
+ box-shadow: 0px 5px 0px 0px darken(@btn-clr, 10%);
59
+ }
60
+ .btn-theme() when (@btn-theme = shadow) {
61
+ .drop-shadow(1px, 1px, 4px, 0.4);
62
+ background: @btn-clr;
63
+ border: 1px solid @btn-clr;
64
+ }
65
+ .btn-theme() when (@btn-theme = deline) {
66
+ background: @btn-clr;
67
+ border: 2px solid @btn-clr;
68
+ }
69
+ .btn-theme();
70
+
71
+ &:hover,
72
+ &:focus {
73
+ .dft-theme() when (@btn-theme = classic) {
74
+ color: @btn-base;
75
+ }
76
+ .dft-theme() when (@btn-theme = flat) {
77
+ color: @btn-base;
78
+ }
79
+ .dft-theme() when (@btn-theme = outline) {
80
+ color: @btn-clr;
81
+ }
82
+ .dft-theme() when (@btn-theme = threed) {
83
+ color: @btn-base;
84
+ }
85
+ .dft-theme() when (@btn-theme = shadow) {
86
+ color: @btn-base;
87
+ }
88
+ .dft-theme() when (@btn-theme = deline) {
89
+ color: @btn-base;
90
+ }
91
+ .dft-theme();
92
+ }
93
+ }
94
+ .iw-so-article-btn-hover {
95
+ &:hover,
96
+ &:focus {
97
+ color: @btn-base;
98
+ .btn-hover() when (@btn-theme = classic) {
99
+ .gradient(lighten(@btn-clr, 2%), darken(@btn-clr, 20%), lighten(@btn-clr, 2%));
100
+ border-color: darken(@btn-clr, 4%) darken(@btn-clr, 6%) darken(@btn-clr, 18%) darken(@btn-clr, 6%);
101
+ color: @btn-base;
102
+ }
103
+ .btn-hover() when (@btn-theme = flat) {
104
+ background: darken(@btn-clr, 7.5%);
105
+ border-color: darken(@btn-clr, 7.5%);
106
+ }
107
+ .btn-hover() when (@btn-theme = outline) {
108
+ background: @btn-clr;
109
+ color: @btn-base;
110
+ }
111
+ .btn-hover() when (@btn-theme = threed) {
112
+ background: lighten(@btn-clr, 10%);
113
+ }
114
+ .btn-hover() when (@btn-theme = shadow) {
115
+ background: lighten(@btn-clr, 5%);
116
+ border-color: lighten(@btn-clr, 5%);
117
+ .drop-shadow(1px, 1px, 8px, 0.4);
118
+ }
119
+ .btn-hover() when (@btn-theme = deline) {
120
+ color: @btn-clr;
121
+ background: transparent;
122
+ }
123
+ .btn-hover();
124
+ }
125
+ }
126
+ .iw-so-article-btn-click {
127
+ &:active {
128
+ .btn-active() when (@btn-theme = classic) {
129
+ .box-shadow(inset 0 3px 25px darken(@btn-clr, 25%));
130
+ }
131
+ .btn-active() when (@btn-theme = flat) {
132
+ background: darken(@btn-clr, 15%);
133
+ border-color: darken(@btn-clr, 15%);
134
+ }
135
+ .btn-active() when (@btn-theme = outline) {
136
+ background: lighten(@btn-clr, 10%);
137
+ border-color: lighten(@btn-clr, 10%);
138
+ color: @btn-base;
139
+ }
140
+ .btn-active() when (@btn-theme = threed) {
141
+ -webkit-transform: translate(0, 5px);
142
+ -moz-transform: translate(0, 5px);
143
+ -ms-transform: translate(0, 5px);
144
+ -o-transform: translate(0, 5px);
145
+ transform: translate(0, 5px);
146
+ box-shadow: 0px 1px 0px 0px;
147
+ }
148
+ .btn-active() when (@btn-theme = shadow) {
149
+ background: darken(@btn-clr, 4%);
150
+ border-color: darken(@btn-clr, 4%);
151
+ }
152
+ .btn-active() when (@btn-theme = deline) {
153
+ color: lighten(@btn-clr, 20%);
154
+ border-color: lighten(@btn-clr, 20%);
155
+ background: transparent;
156
+ }
157
+ .btn-active();
158
+ }
159
+ }
widgets/ink-blgs-widget/styles/thumb-above.less ADDED
@@ -0,0 +1,140 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+ @import "button";
3
+
4
+ @gap: 0;
5
+ @t-size: 2em;
6
+ @t-clr: #333;
7
+ @e-size: 1.1em;
8
+ @e-clr: #333;
9
+ @m-size: 0.9em;
10
+ @m-link: #666;
11
+ @m-clr: #999;
12
+ @hl-clr: #666;
13
+ @img-ol: transparent;
14
+ @img-ol-o: 1;
15
+ @img-e: '';
16
+ @icon-bg: transparent;
17
+ @icon-shape: 0;
18
+ @icon-show: default;
19
+ @cnt-bg: transparent;
20
+
21
+ .iw-so-article {
22
+ margin-bottom: @gap;
23
+ }
24
+
25
+ .iw-so-article-thumb {
26
+ overflow: hidden;
27
+ position: relative;
28
+ background: @img-ol;
29
+ img {
30
+ vertical-align: top;
31
+ width: 100%;
32
+ -webkit-transform: scale(1);
33
+ -moz-transform: scale(1);
34
+ -ms-transform: scale(1);
35
+ -o-transform: scale(1);
36
+ transform: scale(1);
37
+ .transition(all, .25s, linear);
38
+ .img-expand-def() when (@img-e = '' ) {
39
+ -webkit-transform: translateZ(0);
40
+ -moz-transform: translateZ(0);
41
+ -ms-transform: translateZ(0);
42
+ -o-transform: translateZ(0);
43
+ transform: translateZ(0);
44
+ }
45
+ .img-expand-def();
46
+ }
47
+ [class^="sow-icon-"] {
48
+ position: absolute;
49
+ top: 50%;
50
+ left: 50%;
51
+ -webkit-transform: translate(-50%, -50%);
52
+ -moz-transform: translate(-50%, -50%);
53
+ -ms-transform: translate(-50%, -50%);
54
+ -o-transform: translate(-50%, -50%);
55
+ transform: translate(-50%, -50%);
56
+ .transition(all, .2s, linear);
57
+ padding: 15px;
58
+ background: @icon-bg;
59
+ border-radius: @icon-shape;
60
+ .icon-display() when (@icon-show = default) { opacity: 0.8; }
61
+ .icon-display() when (@icon-show = hover) { opacity: 0; }
62
+ .icon-display();
63
+ }
64
+ &:hover,
65
+ &:focus {
66
+ img {
67
+ font-size: @img-e;
68
+ .img-expand() when (@img-e = 1 ) {
69
+ -webkit-transform: scale(1.1);
70
+ -moz-transform: scale(1.1);
71
+ -ms-transform: scale(1.1);
72
+ -o-transform: scale(1.1);
73
+ transform: scale(1.1);
74
+ }
75
+ .img-expand();
76
+ opacity: @img-ol-o;
77
+ }
78
+ [class^="sow-icon-"] {
79
+ opacity: 0.8;
80
+ }
81
+ }
82
+ }
83
+
84
+ .iw-so-article-content {
85
+ padding: 10px;
86
+ background: @cnt-bg;
87
+ }
88
+
89
+ .iw-so-article-title {
90
+ margin-top: 0;
91
+ margin-bottom: 0.25em;
92
+ font-size: @t-size;
93
+ line-height: 1.2;
94
+ a {
95
+ text-decoration: none;
96
+ color: @t-clr;
97
+ &:hover,
98
+ &:focus {
99
+ color: @hl-clr;
100
+ }
101
+ }
102
+ }
103
+
104
+ .iw-so-article-byline-above,
105
+ .iw-so-article-byline-below,
106
+ .iw-so-article-byline-end {
107
+ font-size: @m-size;
108
+ color: @m-clr;
109
+ a {
110
+ text-decoration: none;
111
+ color: @m-link;
112
+ &:hover,
113
+ &:focus {
114
+ color: @hl-clr;
115
+ }
116
+ }
117
+ }
118
+
119
+ .iw-so-article-byline-above {
120
+ margin-top: 0;
121
+ margin-bottom: 0.7em;
122
+ }
123
+
124
+ .iw-so-article-byline-below {
125
+ margin-top: 0.7em;
126
+ margin-bottom: 0;
127
+ }
128
+
129
+ .iw-so-article-excerpt {
130
+ font-size: @e-size;
131
+ color: @e-clr;
132
+ a {
133
+ text-decoration: none;
134
+ color: @e-clr;
135
+ &:hover {
136
+ text-decoration: none;
137
+ color: @e-clr;
138
+ }
139
+ }
140
+ }
widgets/ink-blgs-widget/styles/thumb-behind.less ADDED
@@ -0,0 +1,132 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+ @import "button";
3
+
4
+ @gap: 0;
5
+ @t-size: 2em;
6
+ @t-clr: #333;
7
+ @e-size: 1.1em;
8
+ @e-clr: #333;
9
+ @m-size: 0.9em;
10
+ @m-link: #666;
11
+ @m-clr: #999;
12
+ @hl-clr: #666;
13
+ @img-ol: transparent;
14
+ @img-ol-o: 1;
15
+ @img-e: '';
16
+ @icon-bg: transparent;
17
+ @icon-shape: 0;
18
+ @icon-show: default;
19
+ @cnt-bg: transparent;
20
+
21
+ .iw-so-article {
22
+ margin-bottom: @gap;
23
+ }
24
+
25
+ .iw-blg-thumb-bg {
26
+ background-repeat: no-repeat;
27
+ background-position: center;
28
+ background-size: cover;
29
+ .iw-blg-thumb-ol {
30
+ background: fade(@img-ol, percentage(@img-ol-o));
31
+ height: 100%;
32
+ box-sizing: border-box;
33
+ [class^="sow-icon-"] {
34
+ position: relative;
35
+ left: 50%;
36
+ -webkit-transform: translateX(-50%);
37
+ -moz-transform: translateX(-50%);
38
+ -ms-transform: translateX(-50%);
39
+ -o-transform: translateX(-50%);
40
+ transform: translateX(-50%);
41
+ .transition(all, .25s, linear);
42
+ padding: 5px;
43
+ background: @icon-bg;
44
+ border-radius: @icon-shape;
45
+ .icon-display() when (@icon-show = default) { opacity: 0.8; }
46
+ .icon-display() when (@icon-show = hover) { opacity: 0; }
47
+ .icon-display();
48
+ }
49
+ }
50
+ &:hover,
51
+ &:focus {
52
+ .iw-blg-thumb-ol {
53
+ background: fade(darken(@img-ol, 10%), percentage(@img-ol-o));
54
+ [class^="sow-icon-"] {
55
+ opacity: 0.8;
56
+ }
57
+ }
58
+ }
59
+ }
60
+
61
+
62
+ @media only screen {
63
+ .iw-so-article-content { padding: 40px 20px; }
64
+ }
65
+ @media only screen and (min-width: 480px) {
66
+ .iw-so-article-content { padding: 50px 25px; }
67
+ }
68
+ @media only screen and (min-width: 640px) {
69
+ .iw-so-article-content { padding: 60px 30px; }
70
+ }
71
+ @media only screen and (min-width: 786px) {
72
+ .iw-so-article-content { padding: 60px 35px; }
73
+ }
74
+ @media only screen and (min-width: 1024px) {
75
+ .iw-so-article-content { padding: 70px 40px; }
76
+ }
77
+ @media only screen and (min-width: 1280px) {
78
+ .iw-so-article-content { padding: 80px 45px; }
79
+ }
80
+
81
+ .iw-so-article-title {
82
+ margin-top: 0;
83
+ margin-bottom: 0.25em;
84
+ font-size: @t-size;
85
+ line-height: 1.2;
86
+ a {
87
+ text-decoration: none;
88
+ color: @t-clr;
89
+ &:hover,
90
+ &:focus {
91
+ color: @hl-clr;
92
+ }
93
+ }
94
+ }
95
+
96
+ .iw-so-article-byline-above,
97
+ .iw-so-article-byline-below,
98
+ .iw-so-article-byline-end {
99
+ font-size: @m-size;
100
+ color: @m-clr;
101
+ a {
102
+ text-decoration: none;
103
+ color: @m-link;
104
+ &:hover,
105
+ &:focus {
106
+ color: @hl-clr;
107
+ }
108
+ }
109
+ }
110
+
111
+ .iw-so-article-byline-above {
112
+ margin-top: 0;
113
+ margin-bottom: 0.7em;
114
+ }
115
+
116
+ .iw-so-article-byline-below {
117
+ margin-top: 0.7em;
118
+ margin-bottom: 0;
119
+ }
120
+
121
+ .iw-so-article-excerpt {
122
+ font-size: @e-size;
123
+ color: @e-clr;
124
+ a {
125
+ text-decoration: none;
126
+ color: @e-clr;
127
+ &:hover {
128
+ text-decoration: none;
129
+ color: @e-clr;
130
+ }
131
+ }
132
+ }
widgets/ink-blgs-widget/styles/thumb-left.less ADDED
@@ -0,0 +1,140 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+ @import "button";
3
+
4
+ @gap: 0;
5
+ @t-size: 2em;
6
+ @t-clr: #333;
7
+ @e-size: 1.1em;
8
+ @e-clr: #333;
9
+ @m-size: 0.9em;
10
+ @m-link: #666;
11
+ @m-clr: #999;
12
+ @hl-clr: #666;
13
+ @img-ol: transparent;
14
+ @img-ol-o: 1;
15
+ @img-e: '';
16
+ @icon-bg: transparent;
17
+ @icon-shape: 0;
18
+ @icon-show: default;
19
+ @cnt-bg: transparent;
20
+
21
+ .iw-so-article {
22
+ margin-bottom: @gap;
23
+ }
24
+
25
+ .iw-so-article-thumb {
26
+ overflow: hidden;
27
+ position: relative;
28
+ background: @img-ol;
29
+ img {
30
+ vertical-align: top;
31
+ width: 100%;
32
+ -webkit-transform: scale(1);
33
+ -moz-transform: scale(1);
34
+ -ms-transform: scale(1);
35
+ -o-transform: scale(1);
36
+ transform: scale(1);
37
+ .transition(all, .25s, linear);
38
+ .img-expand-def() when (@img-e = '' ) {
39
+ -webkit-transform: translateZ(0);
40
+ -moz-transform: translateZ(0);
41
+ -ms-transform: translateZ(0);
42
+ -o-transform: translateZ(0);
43
+ transform: translateZ(0);
44
+ }
45
+ .img-expand-def();
46
+ }
47
+ [class^="sow-icon-"] {
48
+ position: absolute;
49
+ top: 50%;
50
+ left: 50%;
51
+ -webkit-transform: translate(-50%, -50%);
52
+ -moz-transform: translate(-50%, -50%);
53
+ -ms-transform: translate(-50%, -50%);
54
+ -o-transform: translate(-50%, -50%);
55
+ transform: translate(-50%, -50%);
56
+ .transition(all, .2s, linear);
57
+ padding: 15px;
58
+ background: @icon-bg;
59
+ border-radius: @icon-shape;
60
+ .icon-display() when (@icon-show = default) { opacity: 0.8; }
61
+ .icon-display() when (@icon-show = hover) { opacity: 0; }
62
+ .icon-display();
63
+ }
64
+ &:hover,
65
+ &:focus {
66
+ img {
67
+ font-size: @img-e;
68
+ .img-expand() when (@img-e = 1 ) {
69
+ -webkit-transform: scale(1.1);
70
+ -moz-transform: scale(1.1);
71
+ -ms-transform: scale(1.1);
72
+ -o-transform: scale(1.1);
73
+ transform: scale(1.1);
74
+ }
75
+ .img-expand();
76
+ opacity: @img-ol-o;
77
+ }
78
+ [class^="sow-icon-"] {
79
+ opacity: 0.8;
80
+ }
81
+ }
82
+ }
83
+
84
+ .iw-so-article-content {
85
+ padding: 10px;
86
+ background: @cnt-bg;
87
+ }
88
+
89
+ .iw-so-article-title {
90
+ margin-top: 0;
91
+ margin-bottom: 0.25em;
92
+ font-size: @t-size;
93
+ line-height: 1.2;
94
+ a {
95
+ text-decoration: none;
96
+ color: @t-clr;
97
+ &:hover,
98
+ &:focus {
99
+ color: @hl-clr;
100
+ }
101
+ }
102
+ }
103
+
104
+ .iw-so-article-byline-above,
105
+ .iw-so-article-byline-below,
106
+ .iw-so-article-byline-end {
107
+ font-size: @m-size;
108
+ color: @m-clr;
109
+ a {
110
+ text-decoration: none;
111
+ color: @m-link;
112
+ &:hover,
113
+ &:focus {
114
+ color: @hl-clr;
115
+ }
116
+ }
117
+ }
118
+
119
+ .iw-so-article-byline-above {
120
+ margin-top: 0;
121
+ margin-bottom: 0.7em;
122
+ }
123
+
124
+ .iw-so-article-byline-below {
125
+ margin-top: 0.7em;
126
+ margin-bottom: 0;
127
+ }
128
+
129
+ .iw-so-article-excerpt {
130
+ font-size: @e-size;
131
+ color: @e-clr;
132
+ a {
133
+ text-decoration: none;
134
+ color: @e-clr;
135
+ &:hover {
136
+ text-decoration: none;
137
+ color: @e-clr;
138
+ }
139
+ }
140
+ }
widgets/ink-blgs-widget/styles/thumb-none.less ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+ @import "button";
3
+
4
+ @gap: 0;
5
+ @t-size: 2em;
6
+ @t-clr: #333;
7
+ @e-size: 1.1em;
8
+ @e-clr: #333;
9
+ @m-size: 0.9em;
10
+ @m-link: #666;
11
+ @m-clr: #999;
12
+ @hl-clr: #666;
13
+ @img-ol: transparent;
14
+ @img-ol-o: 1;
15
+ @img-e: '';
16
+ @icon-bg: transparent;
17
+ @icon-shape: 0;
18
+ @gap-left: 0;
19
+ @icon-show: default;
20
+ @cnt-bg: transparent;
21
+ @format: '';
22
+
23
+ .iw-so-article {
24
+ margin-bottom: @gap;
25
+ }
26
+
27
+ .iw-so-thumb-none {
28
+ height: 100%;
29
+ }
30
+
31
+ .iw-so-article-content {
32
+ padding: 10px;
33
+ background: @cnt-bg;
34
+ position: relative;
35
+ height: 100%;
36
+ [class^="sow-icon-"] {
37
+ position: absolute;
38
+ top: 50%;
39
+ left: 10px;
40
+ -webkit-transform: translateY(-50%);
41
+ -moz-transform: translateY(-50%);
42
+ -ms-transform: translateY(-50%);
43
+ -o-transform: translateY(-50%);
44
+ transform: translateY(-50%);
45
+ -webkit-transition: .2s all linear;
46
+ -moz-transition: .2s all linear;
47
+ -ms-transition: .2s all linear;
48
+ -o-transition: .2s all linear;
49
+ transition: .2s all linear;
50
+ padding: 15px;
51
+ background: @icon-bg;
52
+ border-radius: @icon-shape;
53
+ .icon-display() when (@icon-show = default) { opacity: 0.8; }
54
+ .icon-display() when (@icon-show = hover) { opacity: 0; }
55
+ .icon-display();
56
+ }
57
+ &:hover,
58
+ &:focus {
59
+ [class^="sow-icon-"] {
60
+ opacity: 0.8;
61
+ }
62
+ }
63
+ h2,
64
+ p {
65
+ .icon-display() when (@format = 1) {
66
+ padding-left: @gap-left; }
67
+ .icon-display();
68
+ }
69
+ }
70
+
71
+ .iw-so-article-title {
72
+ margin-top: 0;
73
+ margin-bottom: 0.25em;
74
+ font-size: @t-size;
75
+ line-height: 1.2;
76
+ a {
77
+ text-decoration: none;
78
+ color: @t-clr;
79
+ &:hover,
80
+ &:focus {
81
+ color: @hl-clr;
82
+ }
83
+ }
84
+ }
85
+
86
+ .iw-so-article-byline-above,
87
+ .iw-so-article-byline-below,
88
+ .iw-so-article-byline-end {
89
+ font-size: @m-size;
90
+ color: @m-clr;
91
+ a {
92
+ text-decoration: none;
93
+ color: @m-link;
94
+ &:hover,
95
+ &:focus {
96
+ color: @hl-clr;
97
+ }
98
+ }
99
+ }
100
+
101
+ .iw-so-article-byline-above {
102
+ margin-top: 0;
103
+ margin-bottom: 0.7em;
104
+ }
105
+
106
+ .iw-so-article-byline-below {
107
+ margin-top: 0.7em;
108
+ margin-bottom: 0;
109
+ }
110
+
111
+ .iw-so-article-excerpt {
112
+ font-size: @e-size;
113
+ color: @e-clr;
114
+ a {
115
+ text-decoration: none;
116
+ color: @e-clr;
117
+ &:hover {
118
+ text-decoration: none;
119
+ color: @e-clr;
120
+ }
121
+ }
122
+ }
widgets/ink-blgs-widget/styles/thumb-right.less ADDED
@@ -0,0 +1,140 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+ @import "button";
3
+
4
+ @gap: 0;
5
+ @t-size: 2em;
6
+ @t-clr: #333;
7
+ @e-size: 1.1em;
8
+ @e-clr: #333;
9
+ @m-size: 0.9em;
10
+ @m-link: #666;
11
+ @m-clr: #999;
12
+ @hl-clr: #666;
13
+ @img-ol: transparent;
14
+ @img-ol-o: 1;
15
+ @img-e: '';
16
+ @icon-bg: transparent;
17
+ @icon-shape: 0;
18
+ @icon-show: default;
19
+ @cnt-bg: transparent;
20
+
21
+ .iw-so-article {
22
+ margin-bottom: @gap;
23
+ }
24
+
25
+ .iw-so-article-thumb {
26
+ overflow: hidden;
27
+ position: relative;
28
+ background: @img-ol;
29
+ img {
30
+ vertical-align: top;
31
+ width: 100%;
32
+ -webkit-transform: scale(1);
33
+ -moz-transform: scale(1);
34
+ -ms-transform: scale(1);
35
+ -o-transform: scale(1);
36
+ transform: scale(1);
37
+ .transition(all, .25s, linear);
38
+ .img-expand-def() when (@img-e = '' ) {
39
+ -webkit-transform: translateZ(0);
40
+ -moz-transform: translateZ(0);
41
+ -ms-transform: translateZ(0);
42
+ -o-transform: translateZ(0);
43
+ transform: translateZ(0);
44
+ }
45
+ .img-expand-def();
46
+ }
47
+ [class^="sow-icon-"] {
48
+ position: absolute;
49
+ top: 50%;
50
+ left: 50%;
51
+ -webkit-transform: translate(-50%, -50%);
52
+ -moz-transform: translate(-50%, -50%);
53
+ -ms-transform: translate(-50%, -50%);
54
+ -o-transform: translate(-50%, -50%);
55
+ transform: translate(-50%, -50%);
56
+ .transition(all, .2s, linear);
57
+ padding: 15px;
58
+ background: @icon-bg;
59
+ border-radius: @icon-shape;
60
+ .icon-display() when (@icon-show = default) { opacity: 0.8; }
61
+ .icon-display() when (@icon-show = hover) { opacity: 0; }
62
+ .icon-display();
63
+ }
64
+ &:hover,
65
+ &:focus {
66
+ img {
67
+ font-size: @img-e;
68
+ .img-expand() when (@img-e = 1 ) {
69
+ -webkit-transform: scale(1.1);
70
+ -moz-transform: scale(1.1);
71
+ -ms-transform: scale(1.1);
72
+ -o-transform: scale(1.1);
73
+ transform: scale(1.1);
74
+ }
75
+ .img-expand();
76
+ opacity: @img-ol-o;
77
+ }
78
+ [class^="sow-icon-"] {
79
+ opacity: 0.8;
80
+ }
81
+ }
82
+ }
83
+
84
+ .iw-so-article-content {
85
+ padding: 10px;
86
+ background: @cnt-bg;
87
+ }
88
+
89
+ .iw-so-article-title {
90
+ margin-top: 0;
91
+ margin-bottom: 0.25em;
92
+ font-size: @t-size;
93
+ line-height: 1.2;
94
+ a {
95
+ text-decoration: none;
96
+ color: @t-clr;
97
+ &:hover,
98
+ &:focus {
99
+ color: @hl-clr;
100
+ }
101
+ }
102
+ }
103
+
104
+ .iw-so-article-byline-above,
105
+ .iw-so-article-byline-below,
106
+ .iw-so-article-byline-end {
107
+ font-size: @m-size;
108
+ color: @m-clr;
109
+ a {
110
+ text-decoration: none;
111
+ color: @m-link;
112
+ &:hover,
113
+ &:focus {
114
+ color: @hl-clr;
115
+ }
116
+ }
117
+ }
118
+
119
+ .iw-so-article-byline-above {
120
+ margin-top: 0;
121
+ margin-bottom: 0.7em;
122
+ }
123
+
124
+ .iw-so-article-byline-below {
125
+ margin-top: 0.7em;
126
+ margin-bottom: 0;
127
+ }
128
+
129
+ .iw-so-article-excerpt {
130
+ font-size: @e-size;
131
+ color: @e-clr;
132
+ a {
133
+ text-decoration: none;
134
+ color: @e-clr;
135
+ &:hover {
136
+ text-decoration: none;
137
+ color: @e-clr;
138
+ }
139
+ }
140
+ }
widgets/ink-blgs-widget/tpl/thumb-above.php ADDED
@@ -0,0 +1,153 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $icon_styles = array();
4
+ if(!empty($instance['icons']['color'])) $icon_styles[] = 'color: '.$instance['icons']['color'];
5
+ if(!empty($instance['icons']['size'])) $icon_styles[] = 'font-size: '.$instance['icons']['size'];
6
+
7
+ $btn_class = array('iw-so-article-btn');
8
+ if( !empty($instance['styling']['btn-hover']) ) $btn_class[] = 'iw-so-article-btn-hover';
9
+ if( !empty($instance['styling']['btn-click']) ) $btn_class[] = 'iw-so-article-btn-click';
10
+
11
+ $button_attributes = array(
12
+ 'class' => esc_attr(implode(' ', $classes))
13
+ );
14
+
15
+ if( $instance['design']['columns'] == 1 ):
16
+ $cols = ' iw-small-12';
17
+ elseif( $instance['design']['columns'] == 2 ):
18
+ $cols = ' iw-medium-6 iw-small-12';
19
+ elseif( $instance['design']['columns'] == 3 ):
20
+ $cols = ' iw-large-4 iw-medium-6 iw-small-12';
21
+ elseif( $instance['design']['columns'] == 4 ):
22
+ $cols = ' iw-large-3 iw-medium-6 iw-small-12';
23
+ endif;
24
+
25
+ if( !empty($instance['title']) ) echo $args['before_title'] . esc_html($instance['title']) . $args['after_title'];
26
+ ?>
27
+
28
+ <?php
29
+ // Setting up posts query
30
+
31
+ $post_selector_pseudo_query = $instance['posts'];
32
+ $processed_query = siteorigin_widget_post_selector_process_query( $post_selector_pseudo_query );
33
+ $query_result = new WP_Query( $processed_query );
34
+ ?>
35
+
36
+ <?php
37
+
38
+ // Looping through the posts
39
+
40
+ if($query_result->have_posts()) : ?>
41
+
42
+ <div class="iw-row" data-equalizer>
43
+
44
+ <?php while($query_result->have_posts()) : $query_result->the_post(); ?>
45
+
46
+ <div class="iw-so-article<?php echo $cols; ?> iw-cols" data-equalizer-watch>
47
+
48
+ <div class="iw-row iw-collapse iw-so-thumb-above">
49
+
50
+ <div class="iw-small-12 iw-cols">
51
+
52
+ <div class="iw-so-article-thumb">
53
+
54
+ <a href="<?php the_permalink(); ?>">
55
+ <?php the_post_thumbnail($instance['design']['img-size']); ?>
56
+ <?php
57
+ if ( get_post_format() && $instance['design']['format'] ):
58
+ echo siteorigin_widget_get_icon( $instance['icons'][get_post_format()], $icon_styles );
59
+ elseif ( $instance['design']['format'] ):
60
+ echo siteorigin_widget_get_icon( $instance['icons']['standard'], $icon_styles );
61
+ endif;
62
+ ?>
63
+ </a>
64
+
65
+ </div>
66
+
67
+ </div>
68
+
69
+ <div class="iw-small-12 iw-cols">
70
+
71
+ <div class="iw-so-article-content">
72
+
73
+ <?php if ($instance['design']['byline-above']) : ?>
74
+
75
+ <?php $byline_above = apply_filters( 'wpinked_byline', $instance['design']['byline-above'] ); ?>
76
+
77
+ <p class="iw-so-article-byline-above <?php echo $instance['styling']['align']; ?>">
78
+
79
+ <?php echo sprintf( $byline_above, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
80
+
81
+ </p>
82
+
83
+ <?php endif; ?>
84
+
85
+ <h2 class="iw-so-article-title <?php echo $instance['styling']['align']; ?>"><a href="<?php the_permalink(); ?>"><?php the_title() ?></a></h2>
86
+
87
+ <?php if ($instance['design']['byline-below']) : ?>
88
+
89
+ <?php $byline_below = apply_filters( 'wpinked_byline', $instance['design']['byline-below'] ); ?>
90
+
91
+ <p class="iw-so-article-byline-below <?php echo $instance['styling']['align']; ?>">
92
+
93
+ <?php echo sprintf( $byline_below, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
94
+
95
+ </p>
96
+
97
+ <?php endif; ?>
98
+
99
+ <?php if ( $instance['design']['content'] ): ?>
100
+
101
+ <div class="iw-so-article-full">
102
+ <?php global $more; $more = 1; the_content(); ?>
103
+ </div>
104
+
105
+ <?php elseif ( $instance['design']['excerpt'] ): ?>
106
+
107
+ <p class="iw-so-article-excerpt <?php echo $instance['styling']['align']; ?>">
108
+ <?php if ( $instance['design']['e-link'] ): ?>
109
+ <a href="<?php the_permalink(); ?>">
110
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
111
+ </a>
112
+ <?php else: ?>
113
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
114
+ <?php endif; ?>
115
+ </p>
116
+
117
+ <?php endif; ?>
118
+
119
+ <?php if ($instance['design']['byline-end']) : ?>
120
+
121
+ <?php $byline_end = apply_filters( 'wpinked_byline', $instance['design']['byline-end'] ); ?>
122
+
123
+ <p class="iw-so-article-byline-end <?php echo $instance['styling']['align']; ?>">
124
+
125
+ <?php echo sprintf( $byline_end, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
126
+
127
+ </p>
128
+
129
+ <?php endif; ?>
130
+
131
+ <?php if ($instance['design']['button']) : ?>
132
+
133
+ <div class="iw-so-article-button">
134
+ <a class="<?php echo esc_attr(implode(' ', $btn_class)); ?>" href="<?php the_permalink(); ?>">
135
+ <?php echo $instance['design']['btn-text']; ?>
136
+ </a>
137
+ </div>
138
+
139
+ <?php endif; ?>
140
+
141
+ </div>
142
+
143
+ </div>
144
+
145
+ </div>
146
+
147
+ </div>
148
+
149
+ <?php endwhile; wp_reset_postdata(); ?>
150
+
151
+ </div>
152
+
153
+ <?php endif; ?>
widgets/ink-blgs-widget/tpl/thumb-behind.php ADDED
@@ -0,0 +1,149 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $icon_styles = array();
4
+ if(!empty($instance['icons']['color'])) $icon_styles[] = 'color: '.$instance['icons']['color'];
5
+ if(!empty($instance['icons']['size'])) $icon_styles[] = 'font-size: '.$instance['icons']['size'];
6
+
7
+ $btn_class = array('iw-so-article-btn');
8
+ if( !empty($instance['styling']['btn-hover']) ) $btn_class[] = 'iw-so-article-btn-hover';
9
+ if( !empty($instance['styling']['btn-click']) ) $btn_class[] = 'iw-so-article-btn-click';
10
+
11
+ if( $instance['design']['columns'] == 1 ):
12
+ $cols = ' iw-small-12';
13
+ elseif( $instance['design']['columns'] == 2 ):
14
+ $cols = ' iw-medium-6 iw-small-12';
15
+ elseif( $instance['design']['columns'] == 3 ):
16
+ $cols = ' iw-large-4 iw-medium-6 iw-small-12';
17
+ elseif( $instance['design']['columns'] == 4 ):
18
+ $cols = ' iw-large-3 iw-medium-6 iw-small-12';
19
+ endif;
20
+
21
+ if( !empty($instance['title']) ) echo $args['before_title'] . esc_html($instance['title']) . $args['after_title'];
22
+
23
+ ?>
24
+
25
+ <?php
26
+ // Setting up posts query
27
+
28
+ $post_selector_pseudo_query = $instance['posts'];
29
+
30
+ $processed_query = siteorigin_widget_post_selector_process_query( $post_selector_pseudo_query );
31
+
32
+ $query_result = new WP_Query( $processed_query );
33
+ ?>
34
+
35
+ <?php
36
+
37
+ // Looping through the posts
38
+
39
+ if($query_result->have_posts()) : ?>
40
+
41
+ <div class="iw-row iw-collapse" data-equalizer>
42
+
43
+ <?php while($query_result->have_posts()) : $query_result->the_post(); ?>
44
+
45
+ <div class="iw-so-article<?php echo $cols; ?> iw-cols" data-equalizer-watch>
46
+
47
+ <div class="iw-row <?php if (!$instance['styling']['gap-bw']){echo 'iw-collapse'; } ?> iw-so-thumb-behind">
48
+
49
+ <?php if ( has_post_thumbnail() ) :
50
+ $thumbnail = wp_get_attachment_url( get_post_thumbnail_id() );
51
+ endif; ?>
52
+
53
+ <div class="iw-small-12 iw-cols" data-equalizer-watch>
54
+
55
+ <div class="iw-so-article-bg iw-blg-thumb-bg" style="background-image: url('<?php echo $thumbnail; ?>');" data-equalizer-watch>
56
+
57
+ <div class="iw-so-article-content iw-blg-thumb-ol" data-equalizer-watch>
58
+
59
+ <?php
60
+ if ( get_post_format() && $instance['design']['format'] ):
61
+ echo siteorigin_widget_get_icon( $instance['icons'][get_post_format()], $icon_styles );
62
+ elseif ( $instance['design']['format'] ):
63
+ echo siteorigin_widget_get_icon( $instance['icons']['standard'], $icon_styles );
64
+ endif;
65
+ ?>
66
+
67
+ <?php if ($instance['design']['byline-above']) : ?>
68
+
69
+ <?php $byline_above = apply_filters( 'wpinked_byline', $instance['design']['byline-above'] ); ?>
70
+
71
+ <p class="iw-so-article-byline-above <?php echo $instance['styling']['align']; ?>">
72
+
73
+ <?php echo sprintf( $byline_above, get_the_date(), get_the_category_list(', '), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
74
+
75
+ </p>
76
+
77
+ <?php endif; ?>
78
+
79
+ <h2 class="iw-so-article-title <?php echo $instance['styling']['align']; ?>"><a href="<?php the_permalink(); ?>"><?php the_title() ?></a></h2>
80
+
81
+ <?php if ($instance['design']['byline-below']) : ?>
82
+
83
+ <?php $byline_below = apply_filters( 'wpinked_byline', $instance['design']['byline-below'] ); ?>
84
+
85
+ <p class="iw-so-article-byline-below <?php echo $instance['styling']['align']; ?>">
86
+
87
+ <?php echo sprintf( $byline_below, get_the_date(), get_the_category_list(', '), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
88
+
89
+ </p>
90
+
91
+ <?php endif; ?>
92
+
93
+ <?php if ( $instance['design']['content'] ): ?>
94
+
95
+ <div class="iw-so-article-full">
96
+ <?php global $more; $more = 1; the_content(); ?>
97
+ </div>
98
+
99
+ <?php elseif ( $instance['design']['excerpt'] ): ?>
100
+
101
+ <p class="iw-so-article-excerpt <?php echo $instance['styling']['align']; ?>">
102
+ <?php if ( $instance['design']['e-link'] ): ?>
103
+ <a href="<?php the_permalink(); ?>">
104
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
105
+ </a>
106
+ <?php else: ?>
107
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
108
+ <?php endif; ?>
109
+ </p>
110
+
111
+ <?php endif; ?>
112
+
113
+ <?php if ($instance['design']['byline-end']) : ?>
114
+
115
+ <?php $byline_end = apply_filters( 'wpinked_byline', $instance['design']['byline-end'] ); ?>
116
+
117
+ <p class="iw-so-article-byline-end <?php echo $instance['styling']['align']; ?>">
118
+
119
+ <?php echo sprintf( $byline_end, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
120
+
121
+ </p>
122
+
123
+ <?php endif; ?>
124
+
125
+ <?php if ($instance['design']['button']) : ?>
126
+
127
+ <div class="iw-so-article-button">
128
+ <a class="<?php echo esc_attr(implode(' ', $btn_class)); ?>" href="<?php the_permalink(); ?>">
129
+ <?php echo $instance['design']['btn-text']; ?>
130
+ </a>
131
+ </div>
132
+
133
+ <?php endif; ?>
134
+
135
+ </div>
136
+
137
+ </div>
138
+
139
+ </div>
140
+
141
+ </div>
142
+
143
+ </div>
144
+
145
+ <?php endwhile; wp_reset_postdata(); ?>
146
+
147
+ </div>
148
+
149
+ <?php endif; ?>
widgets/ink-blgs-widget/tpl/thumb-left.php ADDED
@@ -0,0 +1,152 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $icon_styles = array();
4
+ if(!empty($instance['icons']['color'])) $icon_styles[] = 'color: '.$instance['icons']['color'];
5
+ if(!empty($instance['icons']['size'])) $icon_styles[] = 'font-size: '.$instance['icons']['size'];
6
+
7
+ $btn_class = array('iw-so-article-btn');
8
+ if( !empty($instance['styling']['btn-hover']) ) $btn_class[] = 'iw-so-article-btn-hover';
9
+ if( !empty($instance['styling']['btn-click']) ) $btn_class[] = 'iw-so-article-btn-click';
10
+
11
+ if( $instance['design']['columns'] == 1 ):
12
+ $cols = ' iw-small-12';
13
+ elseif( $instance['design']['columns'] == 2 ):
14
+ $cols = ' iw-medium-6 iw-small-12';
15
+ elseif( $instance['design']['columns'] == 3 ):
16
+ $cols = ' iw-large-4 iw-medium-6 iw-small-12';
17
+ elseif( $instance['design']['columns'] == 4 ):
18
+ $cols = ' iw-large-3 iw-medium-6 iw-small-12';
19
+ endif;
20
+
21
+ if ( $instance['design']['responsive'] ):
22
+ $img_col_class = ' iw-large-4 iw-medium-5';
23
+ $ctnt_col_class = ' iw-large-8 iw-medium-7';
24
+ else:
25
+ $img_col_class = ' iw-large-4 iw-medium-5 iw-small-4';
26
+ $ctnt_col_class = ' iw-large-8 iw-medium-7 iw-small-8';
27
+ endif;
28
+
29
+ if( !empty($instance['title']) ) echo $args['before_title'] . esc_html($instance['title']) . $args['after_title'];
30
+ ?>
31
+
32
+ <?php
33
+ // Setting up posts query
34
+
35
+ $post_selector_pseudo_query = $instance['posts'];
36
+ $processed_query = siteorigin_widget_post_selector_process_query( $post_selector_pseudo_query );
37
+ $query_result = new WP_Query( $processed_query );
38
+ ?>
39
+
40
+ <?php
41
+
42
+ // Looping through the posts
43
+
44
+ if($query_result->have_posts()) : ?>
45
+
46
+ <div class="iw-row" data-equalizer>
47
+
48
+ <?php while($query_result->have_posts()) : $query_result->the_post(); ?>
49
+
50
+ <div class="iw-so-article<?php echo $cols; ?> iw-cols" data-equalizer-watch>
51
+
52
+ <div class="iw-row iw-so-thumb-left">
53
+
54
+ <div class="iw-left iw-cols<?php echo $img_col_class; ?>">
55
+
56
+ <div class="iw-so-article-thumb">
57
+
58
+ <a href="<?php the_permalink(); ?>"><center><?php the_post_thumbnail($instance['design']['img-size']); ?></center></a>
59
+
60
+ <?php
61
+ if ( get_post_format() && $instance['design']['format'] ):
62
+ echo siteorigin_widget_get_icon( $instance['icons'][get_post_format()], $icon_styles );
63
+ elseif ( $instance['design']['format'] ):
64
+ echo siteorigin_widget_get_icon( $instance['icons']['standard'], $icon_styles );
65
+ endif;
66
+ ?>
67
+
68
+ </div>
69
+
70
+ </div>
71
+
72
+ <div class="iw-right iw-cols<?php echo $ctnt_col_class; ?>">
73
+
74
+ <?php if ($instance['design']['byline-above']) : ?>
75
+
76
+ <?php $byline_above = apply_filters( 'wpinked_byline', $instance['design']['byline-above'] ); ?>
77
+
78
+ <p class="iw-so-article-byline-above <?php echo $instance['styling']['align']; ?>">
79
+
80
+ <?php echo sprintf( $byline_above, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
81
+
82
+ </p>
83
+
84
+ <?php endif; ?>
85
+
86
+ <h2 class="iw-so-article-title <?php echo $instance['styling']['align']; ?>"><a href="<?php the_permalink(); ?>"><?php the_title() ?></a></h2>
87
+
88
+ <?php if ($instance['design']['byline-below']) : ?>
89
+
90
+ <?php $byline_below = apply_filters( 'wpinked_byline', $instance['design']['byline-below'] ); ?>
91
+
92
+ <p class="iw-so-article-byline-below <?php echo $instance['styling']['align']; ?>">
93
+
94
+ <?php echo sprintf( $byline_below, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
95
+
96
+ </p>
97
+
98
+ <?php endif; ?>
99
+
100
+ <?php if ( $instance['design']['content'] ): ?>
101
+
102
+ <div class="iw-so-article-full">
103
+ <?php global $more; $more = 1; the_content(); ?>
104
+ </div>
105
+
106
+ <?php elseif ( $instance['design']['excerpt'] ): ?>
107
+
108
+ <p class="iw-so-article-excerpt <?php echo $instance['styling']['align']; ?>">
109
+ <?php if ( $instance['design']['e-link'] ): ?>
110
+ <a href="<?php the_permalink(); ?>">
111
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
112
+ </a>
113
+ <?php else: ?>
114
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
115
+ <?php endif; ?>
116
+ </p>
117
+
118
+ <?php endif; ?>
119
+
120
+ <?php if ($instance['design']['byline-end']) : ?>
121
+
122
+ <?php $byline_end = apply_filters( 'wpinked_byline', $instance['design']['byline-end'] ); ?>
123
+
124
+ <p class="iw-so-article-byline-end <?php echo $instance['styling']['align']; ?>">
125
+
126
+ <?php echo sprintf( $byline_end, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
127
+
128
+ </p>
129
+
130
+ <?php endif; ?>
131
+
132
+ <?php if ($instance['design']['button']) : ?>
133
+
134
+ <div class="iw-so-article-button">
135
+ <a class="<?php echo esc_attr(implode(' ', $btn_class)); ?>" href="<?php the_permalink(); ?>">
136
+ <?php echo $instance['design']['btn-text']; ?>
137
+ </a>
138
+ </div>
139
+
140
+ <?php endif; ?>
141
+
142
+ </div>
143
+
144
+ </div>
145
+
146
+ </div>
147
+
148
+ <?php endwhile; wp_reset_postdata(); ?>
149
+
150
+ </div>
151
+
152
+ <?php endif; ?>
widgets/ink-blgs-widget/tpl/thumb-none.php ADDED
@@ -0,0 +1,134 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $icon_styles = array();
4
+ if(!empty($instance['icons']['color'])) $icon_styles[] = 'color: '.$instance['icons']['color'];
5
+ if(!empty($instance['icons']['size'])) $icon_styles[] = 'font-size: '.$instance['icons']['size'];
6
+
7
+ $btn_class = array('iw-so-article-btn');
8
+ if( !empty($instance['styling']['btn-hover']) ) $btn_class[] = 'iw-so-article-btn-hover';
9
+ if( !empty($instance['styling']['btn-click']) ) $btn_class[] = 'iw-so-article-btn-click';
10
+
11
+ if( $instance['design']['columns'] == 1 ):
12
+ $cols = ' iw-small-12';
13
+ elseif( $instance['design']['columns'] == 2 ):
14
+ $cols = ' iw-medium-6 iw-small-12';
15
+ elseif( $instance['design']['columns'] == 3 ):
16
+ $cols = ' iw-large-4 iw-medium-6 iw-small-12';
17
+ elseif( $instance['design']['columns'] == 4 ):
18
+ $cols = ' iw-large-3 iw-medium-6 iw-small-12';
19
+ endif;
20
+
21
+ if( !empty($instance['title']) ) echo $args['before_title'] . esc_html($instance['title']) . $args['after_title'];
22
+ ?>
23
+
24
+ <?php
25
+ // Setting up posts query
26
+
27
+ $post_selector_pseudo_query = $instance['posts'];
28
+ $processed_query = siteorigin_widget_post_selector_process_query( $post_selector_pseudo_query );
29
+ $query_result = new WP_Query( $processed_query );
30
+ ?>
31
+
32
+ <?php
33
+
34
+ // Looping through the posts
35
+
36
+ if($query_result->have_posts()) : ?>
37
+
38
+ <div class="iw-row" data-equalizer>
39
+
40
+ <?php while($query_result->have_posts()) : $query_result->the_post(); ?>
41
+
42
+ <div class="iw-so-article<?php echo $cols; ?> iw-cols" data-equalizer-watch>
43
+
44
+ <div class="iw-row iw-so-thumb-none">
45
+
46
+ <div class="iw-small-12 iw-cols iw-so-article-content">
47
+
48
+ <?php
49
+ if ( get_post_format() && $instance['design']['format'] ):
50
+ echo siteorigin_widget_get_icon( $instance['icons'][get_post_format()], $icon_styles );
51
+ elseif ( $instance['design']['format'] ):
52
+ echo siteorigin_widget_get_icon( $instance['icons']['standard'], $icon_styles );
53
+ endif;
54
+ ?>
55
+
56
+ <?php if ($instance['design']['byline-above']) : ?>
57
+
58
+ <?php $byline_above = apply_filters( 'wpinked_byline', $instance['design']['byline-above'] ); ?>
59
+
60
+ <p class="iw-so-article-byline-above <?php echo $instance['styling']['align']; ?>">
61
+
62
+ <?php echo sprintf( $byline_above, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
63
+
64
+ </p>
65
+
66
+ <?php endif; ?>
67
+
68
+ <h2 class="iw-so-article-title <?php echo $instance['styling']['align']; ?>"><a href="<?php the_permalink(); ?>"><?php the_title() ?></a></h2>
69
+
70
+ <?php if ($instance['design']['byline-below']) : ?>
71
+
72
+ <?php $byline_below = apply_filters( 'wpinked_byline', $instance['design']['byline-below'] ); ?>
73
+
74
+ <p class="iw-so-article-byline-below <?php echo $instance['styling']['align']; ?>">
75
+
76
+ <?php echo sprintf( $byline_below, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
77
+
78
+ </p>
79
+
80
+ <?php endif; ?>
81
+
82
+ <?php if ( $instance['design']['content'] ): ?>
83
+
84
+ <div class="iw-so-article-full">
85
+ <?php global $more; $more = 1; the_content(); ?>
86
+ </div>
87
+
88
+ <?php elseif ( $instance['design']['excerpt'] ): ?>
89
+
90
+ <p class="iw-so-article-excerpt <?php echo $instance['styling']['align']; ?>">
91
+ <?php if ( $instance['design']['e-link'] ): ?>
92
+ <a href="<?php the_permalink(); ?>">
93
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
94
+ </a>
95
+ <?php else: ?>
96
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
97
+ <?php endif; ?>
98
+ </p>
99
+
100
+ <?php endif; ?>
101
+
102
+ <?php if ($instance['design']['byline-end']) : ?>
103
+
104
+ <?php $byline_end = apply_filters( 'wpinked_byline', $instance['design']['byline-end'] ); ?>
105
+
106
+ <p class="iw-so-article-byline-end <?php echo $instance['styling']['align']; ?>">
107
+
108
+ <?php echo sprintf( $byline_end, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
109
+
110
+ </p>
111
+
112
+ <?php endif; ?>
113
+
114
+ <?php if ($instance['design']['button']) : ?>
115
+
116
+ <div class="iw-so-article-button">
117
+ <a class="<?php echo esc_attr(implode(' ', $btn_class)); ?>" href="<?php the_permalink(); ?>">
118
+ <?php echo $instance['design']['btn-text']; ?>
119
+ </a>
120
+ </div>
121
+
122
+ <?php endif; ?>
123
+
124
+ </div>
125
+
126
+ </div>
127
+
128
+ </div>
129
+
130
+ <?php endwhile; wp_reset_postdata(); ?>
131
+
132
+ </div>
133
+
134
+ <?php endif; ?>
widgets/ink-blgs-widget/tpl/thumb-right.php ADDED
@@ -0,0 +1,152 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $icon_styles = array();
4
+ if(!empty($instance['icons']['color'])) $icon_styles[] = 'color: '.$instance['icons']['color'];
5
+ if(!empty($instance['icons']['size'])) $icon_styles[] = 'font-size: '.$instance['icons']['size'];
6
+
7
+ $btn_class = array('iw-so-article-btn');
8
+ if( !empty($instance['styling']['btn-hover']) ) $btn_class[] = 'iw-so-article-btn-hover';
9
+ if( !empty($instance['styling']['btn-click']) ) $btn_class[] = 'iw-so-article-btn-click';
10
+
11
+ if( $instance['design']['columns'] == 1 ):
12
+ $cols = ' iw-small-12';
13
+ elseif( $instance['design']['columns'] == 2 ):
14
+ $cols = ' iw-medium-6 iw-small-12';
15
+ elseif( $instance['design']['columns'] == 3 ):
16
+ $cols = ' iw-large-4 iw-medium-6 iw-small-12';
17
+ elseif( $instance['design']['columns'] == 4 ):
18
+ $cols = ' iw-large-3 iw-medium-6 iw-small-12';
19
+ endif;
20
+
21
+ if ( $instance['design']['responsive'] ):
22
+ $img_col_class = ' iw-large-4 iw-medium-5';
23
+ $ctnt_col_class = ' iw-large-8 iw-medium-7';
24
+ else:
25
+ $img_col_class = ' iw-large-4 iw-medium-5 iw-small-4';
26
+ $ctnt_col_class = ' iw-large-8 iw-medium-7 iw-small-8';
27
+ endif;
28
+
29
+ if( !empty($instance['title']) ) echo $args['before_title'] . esc_html($instance['title']) . $args['after_title'];
30
+ ?>
31
+
32
+ <?php
33
+ // Setting up posts query
34
+
35
+ $post_selector_pseudo_query = $instance['posts'];
36
+ $processed_query = siteorigin_widget_post_selector_process_query( $post_selector_pseudo_query );
37
+ $query_result = new WP_Query( $processed_query );
38
+ ?>
39
+
40
+ <?php
41
+
42
+ // Looping through the posts
43
+
44
+ if($query_result->have_posts()) : ?>
45
+
46
+ <div class="iw-row" data-equalizer>
47
+
48
+ <?php while($query_result->have_posts()) : $query_result->the_post(); ?>
49
+
50
+ <div class="iw-so-article<?php echo $cols; ?> iw-cols" data-equalizer-watch>
51
+
52
+ <div class="iw-row iw-so-thumb-right">
53
+
54
+ <div class="iw-right iw-cols<?php echo $img_col_class; ?>">
55
+
56
+ <div class="iw-so-article-thumb">
57
+
58
+ <a href="<?php the_permalink(); ?>"><center><?php the_post_thumbnail($instance['design']['img-size']); ?></center></a>
59
+
60
+ <?php
61
+ if ( get_post_format() && $instance['design']['format'] ):
62
+ echo siteorigin_widget_get_icon( $instance['icons'][get_post_format()], $icon_styles );
63
+ elseif ( $instance['design']['format'] ):
64
+ echo siteorigin_widget_get_icon( $instance['icons']['standard'], $icon_styles );
65
+ endif;
66
+ ?>
67
+
68
+ </div>
69
+
70
+ </div>
71
+
72
+ <div class="iw-left iw-cols<?php echo $ctnt_col_class; ?>">
73
+
74
+ <?php if ($instance['design']['byline-above']) : ?>
75
+
76
+ <?php $byline_above = apply_filters( 'wpinked_byline', $instance['design']['byline-above'] ); ?>
77
+
78
+ <p class="iw-so-article-byline-above <?php echo $instance['styling']['align']; ?>">
79
+
80
+ <?php echo sprintf( $byline_above, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
81
+
82
+ </p>
83
+
84
+ <?php endif; ?>
85
+
86
+ <h2 class="iw-so-article-title <?php echo $instance['styling']['align']; ?>"><a href="<?php the_permalink(); ?>"><?php the_title() ?></a></h2>
87
+
88
+ <?php if ($instance['design']['byline-below']) : ?>
89
+
90
+ <?php $byline_below = apply_filters( 'wpinked_byline', $instance['design']['byline-below'] ); ?>
91
+
92
+ <p class="iw-so-article-byline-below <?php echo $instance['styling']['align']; ?>">
93
+
94
+ <?php echo sprintf( $byline_below, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
95
+
96
+ </p>
97
+
98
+ <?php endif; ?>
99
+
100
+ <?php if ( $instance['design']['content'] ): ?>
101
+
102
+ <div class="iw-so-article-full">
103
+ <?php global $more; $more = 1; the_content(); ?>
104
+ </div>
105
+
106
+ <?php elseif ( $instance['design']['excerpt'] ): ?>
107
+
108
+ <p class="iw-so-article-excerpt <?php echo $instance['styling']['align']; ?>">
109
+ <?php if ( $instance['design']['e-link'] ): ?>
110
+ <a href="<?php the_permalink(); ?>">
111
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
112
+ </a>
113
+ <?php else: ?>
114
+ <?php wpinked_so_post_excerpt( $instance['design']['excerpt-length'], $instance['design']['excerpt-after'] ); ?>
115
+ <?php endif; ?>
116
+ </p>
117
+
118
+ <?php endif; ?>
119
+
120
+ <?php if ($instance['design']['byline-end']) : ?>
121
+
122
+ <?php $byline_end = apply_filters( 'wpinked_byline', $instance['design']['byline-end'] ); ?>
123
+
124
+ <p class="iw-so-article-byline-end <?php echo $instance['styling']['align']; ?>">
125
+
126
+ <?php echo sprintf( $byline_end, get_the_date(), get_the_category_list($instance['design']['cats']), '<a href="' . get_author_posts_url( $id ) . '">' . get_the_author() . '</a>', get_comments_number() ); ?>
127
+
128
+ </p>
129
+
130
+ <?php endif; ?>
131
+
132
+ <?php if ($instance['design']['button']) : ?>
133
+
134
+ <div class="iw-so-article-button">
135
+ <a class="<?php echo esc_attr(implode(' ', $btn_class)); ?>" href="<?php the_permalink(); ?>">
136
+ <?php echo $instance['design']['btn-text']; ?>
137
+ </a>
138
+ </div>
139
+
140
+ <?php endif; ?>
141
+
142
+ </div>
143
+
144
+ </div>
145
+
146
+ </div>
147
+
148
+ <?php endwhile; wp_reset_postdata(); ?>
149
+
150
+ </div>
151
+
152
+ <?php endif; ?>
widgets/ink-btns-widget/assets/banner.svg ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Button" sketch:type="MSLayerGroup">
9
+ <rect fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(45.000000, 80.000000)" sketch:type="MSShapeGroup">
11
+ <rect id="Rectangle" stroke="#F7EBE8" stroke-width="4" x="0" y="0" width="150" height="75" rx="6"></rect>
12
+ <circle id="Oval-1" stroke="#F7EBE8" stroke-width="4" cx="71.5" cy="45.5" r="10.5"></circle>
13
+ <circle id="Oval-2" stroke="#F7EBE8" stroke-width="4" cx="72" cy="46" r="21"></circle>
14
+ <path d="M73.9791847,47.9791847 L112.162951,57.8786797 L83.8786797,86.1629509 L73.9791847,47.9791847 Z M98.1464466,72.8535534 L125.146447,99.8535534 L125.853553,99.1464466 L98.8535534,72.1464466 L98.1464466,72.8535534 Z" id="Arrow" stroke="#F7EBE8" stroke-width="4" fill="#E74C3C"></path>
15
+ <path d="M80.2734375,46.0056152 C82.494291,46.7762875 86.7765733,47.6750645 89.0220947,48.2659912 C90.7434651,48.7189834 93.6390547,49.6496965 95.6479492,50" id="Line-1" stroke="#E74C3C" stroke-width="3" stroke-linecap="square"></path>
16
+ <path d="M75.8234584,69.3001508 C75.6394947,67.6651469 74.6144962,63.0589277 73.3338293,58.9634886 C71.738905,53.8630872 72.2571323,55.3586748 71.9416609,54.0179214" id="Line-2" stroke="#E74C3C" stroke-width="3" stroke-linecap="square"></path>
17
+ </g>
18
+ </g>
19
+ </g>
20
+ </svg>
widgets/ink-btns-widget/ink-btns-widget.php ADDED
@@ -0,0 +1,216 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Buttons
5
+ Description: The power of click!
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Buttons_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-buttons',
17
+
18
+ __('Inked Buttons', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('The power of click!', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/button-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+
30
+ 'text' => array(
31
+ 'type' => 'text',
32
+ 'label' => __('Button text', 'wpinked-widgets'),
33
+ ),
34
+
35
+ 'url' => array(
36
+ 'type' => 'link',
37
+ 'label' => __('Destination URL', 'wpinked-widgets'),
38
+ ),
39
+
40
+ 'new_window' => array(
41
+ 'type' => 'checkbox',
42
+ 'default' => false,
43
+ 'label' => __('Open in a new window', 'wpinked-widgets'),
44
+ ),
45
+
46
+ 'icon' => array(
47
+ 'type' => 'section',
48
+ 'label' => __('Icon', 'wpinked-widgets'),
49
+ 'hide' => true,
50
+ 'fields' => array(
51
+ 'select' => array(
52
+ 'type' => 'icon',
53
+ 'label' => __('Icon', 'wpinked-widgets'),
54
+ ),
55
+
56
+ 'location' => array(
57
+ 'type' => 'select',
58
+ 'label' => __( 'Location', 'wpinked-widgets' ),
59
+ 'default' => 'left',
60
+ 'options' => array(
61
+ 'left' => __( 'Before Text', 'wpinked-widgets' ),
62
+ 'right' => __( 'After Text', 'wpinked-widgets' ),
63
+ 'above' => __( 'Above Text', 'wpinked-widgets' )
64
+ )
65
+ )
66
+
67
+ ),
68
+ ),
69
+
70
+ 'styling' => array(
71
+ 'type' => 'section',
72
+ 'label' => __('Styling', 'wpinked-widgets'),
73
+ 'hide' => true,
74
+ 'fields' => array(
75
+
76
+ 'align' => array(
77
+ 'type' => 'select',
78
+ 'label' => __('Button Alignment', 'wpinked-widgets'),
79
+ 'default' => 'center',
80
+ 'options' => array(
81
+ 'left' => __('Left', 'wpinked-widgets'),
82
+ 'right' => __('Right', 'wpinked-widgets'),
83
+ 'center' => __('Center', 'wpinked-widgets'),
84
+ 'full' => __('Full Width', 'wpinked-widgets'),
85
+ ),
86
+ ),
87
+
88
+ 'theme' => array(
89
+ 'type' => 'select',
90
+ 'label' => __('Theme', 'wpinked-widgets'),
91
+ 'default' => 'classic',
92
+ 'options' => array(
93
+ 'classic' => __('Classic', 'wpinked-widgets'),
94
+ 'flat' => __('Flat', 'wpinked-widgets'),
95
+ 'outline' => __('Outline', 'wpinked-widgets'),
96
+ 'threed' => __('3D', 'wpinked-widgets'),
97
+ 'shadow' => __('Shadow', 'wpinked-widgets'),
98
+ 'deline' => __('Deline', 'wpinked-widgets'),
99
+ ),
100
+ ),
101
+
102
+ 'button_color' => array(
103
+ 'type' => 'color',
104
+ 'label' => __('Highlight Color', 'wpinked-widgets'),
105
+ 'description' => __( 'Typically used as button background.', 'wpinked-widgets' ),
106
+ ),
107
+
108
+ 'text_color' => array(
109
+ 'type' => 'color',
110
+ 'label' => __('Base Color', 'wpinked-widgets'),
111
+ 'description' => __( 'Typically used as text color.', 'wpinked-widgets' ),
112
+ ),
113
+
114
+ 'hover' => array(
115
+ 'type' => 'checkbox',
116
+ 'default' => true,
117
+ 'label' => __('Use hover effect ?', 'wpinked-widgets'),
118
+ ),
119
+
120
+ 'click' => array(
121
+ 'type' => 'checkbox',
122
+ 'default' => true,
123
+ 'label' => __('Use click effect ?', 'wpinked-widgets'),
124
+ ),
125
+
126
+ 'corners' => array(
127
+ 'type' => 'select',
128
+ 'label' => __('Corners', 'wpinked-widgets'),
129
+ 'default' => '0.25em',
130
+ 'options' => array(
131
+ '0em' => __('Sharp', 'wpinked-widgets'),
132
+ '0.25em' => __('Slightly curved', 'wpinked-widgets'),
133
+ '0.75em' => __('Highly curved', 'wpinked-widgets'),
134
+ '1.5em' => __('Round', 'wpinked-widgets'),
135
+ ),
136
+ ),
137
+
138
+ 'size' => array(
139
+ 'type' => 'select',
140
+ 'label' => __('Size', 'wpinked-widgets'),
141
+ 'default' => 'standard',
142
+ 'options' => array(
143
+ 'tiny' => __('Tiny', 'wpinked-widgets'),
144
+ 'small' => __('Small', 'wpinked-widgets'),
145
+ 'standard' => __('Standard', 'wpinked-widgets'),
146
+ 'large' => __('Large', 'wpinked-widgets'),
147
+ ),
148
+ ),
149
+
150
+ ),
151
+ ),
152
+
153
+ 'attributes' => array(
154
+ 'type' => 'section',
155
+ 'label' => __('Attributes and SEO', 'wpinked-widgets'),
156
+ 'hide' => true,
157
+ 'fields' => array(
158
+ 'id' => array(
159
+ 'type' => 'text',
160
+ 'label' => __('Button ID', 'wpinked-widgets'),
161
+ 'description' => __('An ID attribute allows you to target this button in Javascript.', 'wpinked-widgets'),
162
+ ),
163
+
164
+ 'title' => array(
165
+ 'type' => 'text',
166
+ 'label' => __('Title attribute', 'wpinked-widgets'),
167
+ 'description' => __('Adds a title attribute to the button link.', 'wpinked-widgets'),
168
+ ),
169
+
170
+ 'onclick' => array(
171
+ 'type' => 'text',
172
+ 'label' => __('Onclick', 'wpinked-widgets'),
173
+ 'description' => __('Run this Javascript when the button is clicked. Ideal for tracking.', 'wpinked-widgets'),
174
+ ),
175
+ )
176
+ ),
177
+
178
+ ),
179
+
180
+ //The $base_folder path string.
181
+ plugin_dir_path(__FILE__)
182
+ );
183
+ }
184
+
185
+ function get_template_name($instance) {
186
+ return 'buttons';
187
+ }
188
+
189
+ function get_style_name($instance) {
190
+ return 'buttons';
191
+ }
192
+
193
+ function enqueue_frontend_scripts( $instance ) {
194
+
195
+ wp_enqueue_style( 'iw-buttons', siteorigin_widget_get_plugin_dir_url('ink-buttons') . 'styles/buttons.css', array(), INKED_SO_WIDGETS );
196
+
197
+ parent::enqueue_frontend_scripts( $instance );
198
+ }
199
+
200
+ function get_less_variables($instance) {
201
+ if( empty( $instance ) ) return array();
202
+
203
+ return array(
204
+ 'radius' => $instance['styling']['corners'],
205
+ 'size' => $instance['styling']['size'],
206
+ 'text' => $instance['styling']['text_color'],
207
+ 'button' => $instance['styling']['button_color'],
208
+ 'align' => $instance['styling']['align'],
209
+ 'icon' => $instance['icon']['location'],
210
+ 'theme' => $instance['styling']['theme'],
211
+ );
212
+ }
213
+
214
+ }
215
+
216
+ siteorigin_widget_register('ink-buttons', __FILE__, 'Inked_Buttons_SO_Widget');
widgets/ink-btns-widget/styles/buttons.css ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .iw-so-button {
2
+ -webkit-appearance: none;
3
+ -moz-appearance: none;
4
+ cursor: pointer;
5
+ font-family: inherit;
6
+ font-weight: normal;
7
+ line-height: normal;
8
+ position: relative;
9
+ text-align: center;
10
+ text-decoration: none;
11
+ display: inline-block;
12
+ -webkit-transition: all 0.15s ease-in-out;
13
+ -moz-transition: all 0.15s ease-in-out;
14
+ -ms-transition: all 0.15s ease-in-out;
15
+ -o-transition: all 0.15s ease-in-out;
16
+ transition: all 0.15s ease-in-out;
17
+ }
18
+
19
+ @media only screen and (min-width: 40.0625em) {
20
+ .iw-so-button {
21
+ display: inline-block;
22
+ }
23
+ }
widgets/ink-btns-widget/styles/buttons.less ADDED
@@ -0,0 +1,177 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+
3
+ @radius: 0em;
4
+ @text: #fff;
5
+ @size: standard;
6
+ @button: #333;
7
+ @align: center;
8
+ @icon: left;
9
+ @theme: flat;
10
+
11
+ .iw-so-button-base {
12
+ .clearfix();
13
+
14
+ .btn-align() when (@align = left) { text-align: left }
15
+ .btn-align() when (@align = right) { text-align: right }
16
+ .btn-align() when (@align = center) { text-align: center }
17
+ .btn-align();
18
+ }
19
+
20
+ .iw-so-button {
21
+
22
+ border-radius: @radius;
23
+ color: @text;
24
+
25
+ .btn-size() when (@size = tiny) {
26
+ font-size: 0.75em;
27
+ padding: 0.625em 1.25em;
28
+ }
29
+ .btn-size() when (@size = small) {
30
+ font-size: 0.9em;
31
+ padding: 0.875em 1.75em;
32
+ }
33
+ .btn-size() when (@size = standard) {
34
+ font-size: 1.2em;
35
+ padding: 1em 2em ;
36
+ }
37
+ .btn-size() when (@size = large) {
38
+ font-size: 1.75em;
39
+ padding: 1.125em 2.25em;
40
+ }
41
+ .btn-size();
42
+
43
+ .full-width() when (@align = full) { padding-left: 0; padding-right: 0; width: 100%; }
44
+ .full-width();
45
+
46
+ .btn-theme() when (@theme = classic) {
47
+ .gradient(@button, darken(@button, 15%), @button);
48
+ border: 1px solid;
49
+ border-color: darken(@button, 8%) darken(@button, 10%) darken(@button, 13%) darken(@button, 10%);
50
+ }
51
+ .btn-theme() when (@theme = flat) {
52
+ background: @button;
53
+ border: 1px solid @button;
54
+ }
55
+ .btn-theme() when (@theme = outline) {
56
+ background: transparent;
57
+ border: 2px solid @button;
58
+ color: @button;
59
+ }
60
+ .btn-theme() when (@theme = threed) {
61
+ background: @button;
62
+ box-shadow: 0px 5px 0px 0px darken(@button, 10%);
63
+ }
64
+ .btn-theme() when (@theme = shadow) {
65
+ .drop-shadow(1px, 1px, 4px, 0.4);
66
+ background: @button;
67
+ border: 1px solid @button;
68
+ }
69
+ .btn-theme() when (@theme = deline) {
70
+ background: @button;
71
+ border: 2px solid @button;
72
+ }
73
+ .btn-theme();
74
+
75
+ [class^="sow-icon-"] {
76
+ .icon-size() when (@size = tiny) { font-size: 0.9em; }
77
+ .icon-size() when (@size = small) { font-size: 1.1em; }
78
+ .icon-size() when (@size = standard) { font-size: 1.5em; }
79
+ .icon-size() when (@size = large) { font-size: 2em; }
80
+ .icon-size();
81
+ height: 1em;
82
+ width: auto;
83
+ .icon-loc() when (@icon = left) { float: left; margin: -0.1em 0.75em -0.2em 0em; }
84
+ .icon-loc() when (@icon = right) { float: right; margin: -0.1em 0em -0.2em 0.75em; }
85
+ .icon-loc() when (@icon = above) { margin: -0.1em auto 0.5em auto; }
86
+ .icon-loc();
87
+ display: block;
88
+ }
89
+ &:hover,
90
+ &:focus {
91
+ .dft-theme() when (@theme = classic) {
92
+ color: @text;
93
+ }
94
+ .dft-theme() when (@theme = flat) {
95
+ color: @text;
96
+ }
97
+ .dft-theme() when (@theme = outline) {
98
+ color: @button;
99
+ }
100
+ .dft-theme() when (@theme = threed) {
101
+ color: @text;
102
+ }
103
+ .dft-theme() when (@theme = shadow) {
104
+ color: @text;
105
+ }
106
+ .dft-theme() when (@theme = deline) {
107
+ color: @text;
108
+ }
109
+ .dft-theme();
110
+ }
111
+ }
112
+ .iw-so-button-hover {
113
+ &:hover,
114
+ &:focus {
115
+ color: @text;
116
+ .btn-hover() when (@theme = classic) {
117
+ .gradient(lighten(@button, 2%), darken(@button, 20%), lighten(@button, 2%));
118
+ border-color: darken(@button, 4%) darken(@button, 6%) darken(@button, 18%) darken(@button, 6%);
119
+ color: @text;
120
+ }
121
+ .btn-hover() when (@theme = flat) {
122
+ background: darken(@button, 7.5%);
123
+ border-color: darken(@button, 7.5%);
124
+ }
125
+ .btn-hover() when (@theme = outline) {
126
+ background: @button;
127
+ color: @text;
128
+ }
129
+ .btn-hover() when (@theme = threed) {
130
+ background: lighten(@button, 10%);
131
+ }
132
+ .btn-hover() when (@theme = shadow) {
133
+ background: lighten(@button, 5%);
134
+ border-color: lighten(@button, 5%);
135
+ .drop-shadow(1px, 1px, 8px, 0.4);
136
+ }
137
+ .btn-hover() when (@theme = deline) {
138
+ color: @button;
139
+ background: transparent;
140
+ }
141
+ .btn-hover();
142
+ }
143
+ }
144
+ .iw-so-button-click {
145
+ &:active {
146
+ .btn-active() when (@theme = classic) {
147
+ .box-shadow(inset 0 3px 25px darken(@button, 25%));
148
+ }
149
+ .btn-active() when (@theme = flat) {
150
+ background: darken(@button, 15%);
151
+ border-color: darken(@button, 15%);
152
+ }
153
+ .btn-active() when (@theme = outline) {
154
+ background: lighten(@button, 10%);
155
+ border-color: lighten(@button, 10%);
156
+ color: @text;
157
+ }
158
+ .btn-active() when (@theme = threed) {
159
+ -webkit-transform: translate(0, 5px);
160
+ -moz-transform: translate(0, 5px);
161
+ -ms-transform: translate(0, 5px);
162
+ -o-transform: translate(0, 5px);
163
+ transform: translate(0, 5px);
164
+ box-shadow: 0px 1px 0px 0px;
165
+ }
166
+ .btn-active() when (@theme = shadow) {
167
+ background: darken(@button, 4%);
168
+ border-color: darken(@button, 4%);
169
+ }
170
+ .btn-active() when (@theme = deline) {
171
+ color: lighten(@button, 20%);
172
+ border-color: lighten(@button, 20%);
173
+ background: transparent;
174
+ }
175
+ .btn-active();
176
+ }
177
+ }
widgets/ink-btns-widget/tpl/buttons.php ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $classes = array('iw-so-button');
4
+ if( !empty($instance['styling']['hover']) ) $classes[] = 'iw-so-button-hover';
5
+ if( !empty($instance['styling']['click']) ) $classes[] = 'iw-so-button-click';
6
+
7
+ $button_attributes = array(
8
+ 'class' => esc_attr(implode(' ', $classes))
9
+ );
10
+ if(!empty($instance['new_window'])) $button_attributes['target'] = '_blank';
11
+ if(!empty($instance['url'])) $button_attributes['href'] = sow_esc_url($instance['url']);
12
+ if(!empty($instance['attributes']['id'])) $button_attributes['id'] = esc_attr($instance['attributes']['id']);
13
+ if(!empty($instance['attributes']['title'])) $button_attributes['title'] = esc_attr($instance['attributes']['title']);
14
+ if(!empty($instance['attributes']['onclick'])) $button_attributes['onclick'] = esc_attr($instance['attributes']['onclick']);
15
+
16
+ $icon_styles = array();
17
+ ?>
18
+
19
+ <div class="iw-so-button-base">
20
+ <a <?php foreach($button_attributes as $name => $val) echo $name . '="' . $val . '" ' ?>>
21
+ <?php echo siteorigin_widget_get_icon( $instance['icon']['select'], $icon_styles ); ?>
22
+ <?php echo $instance['text']; ?>
23
+ </a>
24
+ </div>
widgets/ink-dvdr-widget/assets/banner.svg ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Divider" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(35.000000, 57.000000)" stroke="#F7EBE8" stroke-width="4" stroke-linecap="square">
11
+ <path d="M0,63 L170,63" id="Line" sketch:type="MSShapeGroup"></path>
12
+ <path d="M82,49.5 L82,0" id="arrow-up" fill="#F7EBE8" sketch:type="MSShapeGroup"></path>
13
+ <path id="arrow-up-decoration-1" d="M82,0 L79,10.8 L85,10.8 L82,0 Z" fill="#F7EBE8"></path>
14
+ <path d="M83,81.5 L83,131" id="arrow-down" sketch:type="MSShapeGroup"></path>
15
+ <path id="arrow-down-decoration-1" d="M83,131 L86,120.2 L80,120.2 L83,131 Z"></path>
16
+ </g>
17
+ </g>
18
+ </g>
19
+ </svg>
widgets/ink-dvdr-widget/ink-dvdr-widget.php ADDED
@@ -0,0 +1,115 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Divider/Gap
5
+ Description: Draw seperators or create gaps in your page.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Divider_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-divider',
17
+
18
+ __('Inked Divider', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Draw seperators or create gaps in your page.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/divider-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+
30
+ 'type' => array(
31
+ 'type' => 'select',
32
+ 'label' => __( 'Type', 'wpinked-widgets' ),
33
+ 'default' => 'none',
34
+ 'options' => array(
35
+ 'none' => __( 'Gap', 'wpinked-widgets' ),
36
+ 'solid' => __( 'Single Line', 'wpinked-widgets' ),
37
+ 'double' => __( 'Double Line', 'wpinked-widgets' ),
38
+ 'dotted' => __( 'Dotted Line', 'wpinked-widgets' ),
39
+ 'dashed' => __( 'Dashed Line', 'wpinked-widgets' )
40
+ )
41
+ ),
42
+
43
+ 'styling' => array(
44
+ 'type' => 'section',
45
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
46
+ 'hide' => true,
47
+ 'fields' => array(
48
+
49
+ 'color' => array(
50
+ 'type' => 'color',
51
+ 'label' => __( 'Color', 'wpinked-widgets' ),
52
+ 'description' => __( 'Select the color of your divider.', 'wpinked-widgets' ),
53
+ 'default' => '#333'
54
+ ),
55
+
56
+ 'size' => array(
57
+ 'type' => 'text',
58
+ 'label' => __('Size', 'wpinked-widgets'),
59
+ 'description' => __( 'Define the thickness of the divider. Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
60
+ 'default' => ''
61
+ ),
62
+
63
+ 'width' => array(
64
+ 'type' => 'text',
65
+ 'label' => __('Width', 'wpinked-widgets'),
66
+ 'description' => __( 'Enter the units, eg: px, em, rem, %, ...', 'wpinked-widgets' ),
67
+ 'default' => ''
68
+ ),
69
+
70
+ 'margin-top' => array(
71
+ 'type' => 'text',
72
+ 'label' => __('Margin Top', 'wpinked-widgets'),
73
+ 'description' => __( 'Spacing above the divider. Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
74
+ 'default' => ''
75
+ ),
76
+
77
+ 'margin-bottom' => array(
78
+ 'type' => 'text',
79
+ 'label' => __('Margin Bottom', 'wpinked-widgets'),
80
+ 'description' => __( 'Spacing below the divider. Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
81
+ 'default' => ''
82
+ )
83
+
84
+ )
85
+ ),
86
+ ),
87
+
88
+ plugin_dir_path(__FILE__)
89
+ );
90
+ }
91
+
92
+ function get_template_name($instance) {
93
+ return 'divider';
94
+ }
95
+
96
+ function get_style_name($instance) {
97
+ return 'divider';
98
+ }
99
+
100
+ function get_less_variables($instance) {
101
+ if( empty( $instance ) ) return array();
102
+
103
+ return array(
104
+ 'type' => $instance['type'],
105
+ 'color' => $instance['styling']['color'],
106
+ 'size' => $instance['styling']['size'],
107
+ 'width' => $instance['styling']['width'],
108
+ 'm-top' => $instance['styling']['margin-top'],
109
+ 'm-bottom' => $instance['styling']['margin-bottom']
110
+ );
111
+ }
112
+
113
+ }
114
+
115
+ siteorigin_widget_register('ink-divider', __FILE__, 'Inked_Divider_SO_Widget');
widgets/ink-dvdr-widget/styles/divider.less ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @type: gap;
2
+ @color: #333;
3
+ @size: 1px;
4
+ @width: 100%;
5
+ @m-top: 0px;
6
+ @m-bottom: 0px;
7
+
8
+ .iw-so-divider {
9
+ border-top-style: @type;
10
+ border-top-width: @size;
11
+ border-top-color: @color;
12
+ width: @width;
13
+ margin-left: auto;
14
+ margin-right: auto;
15
+ }
16
+ .iw-so-divider-top {
17
+ height: @m-top;
18
+ }
19
+ .iw-so-divider-bottom {
20
+ height: @m-bottom;
21
+ }
widgets/ink-dvdr-widget/tpl/divider.php ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+
2
+ <div class="iw-so-divider-top"></div>
3
+ <div class="iw-so-divider"></div>
4
+ <div class="iw-so-divider-bottom"></div>
widgets/ink-fard-widget/assets/banner.svg ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Filter-Accordion" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(35.000000, 34.000000)" stroke="#F7EBE8" sketch:type="MSShapeGroup">
11
+ <rect id="Rectangle" stroke-width="4" x="0" y="31" width="170" height="115"></rect>
12
+ <path d="M9,159 L159,159" id="Line" stroke-width="4" stroke-linecap="square"></path>
13
+ <path d="M18.9863014,172 L148.986301,172" id="Line-2" stroke-width="4" stroke-linecap="square"></path>
14
+ <path d="M20.4452055,1 L35.5821918,1" id="Line-Copy-20" stroke-width="3" stroke-linecap="square"></path>
15
+ <path d="M48.9383562,1 L64.0753425,1" id="Line-Copy-15" stroke-width="3" stroke-linecap="square"></path>
16
+ <path d="M77.4315068,1 L92.5684932,1" id="Line-Copy-16" stroke-width="3" stroke-linecap="square"></path>
17
+ <path d="M77.4315068,1 L92.5684932,1" id="Line-Copy-17" stroke-width="3" stroke-linecap="square"></path>
18
+ <path d="M105.924658,1 L121.061644,1" id="Line-Copy-18" stroke-width="3" stroke-linecap="square"></path>
19
+ <path d="M134.417808,1 L149.554795,1" id="Line-Copy-19" stroke-width="3" stroke-linecap="square"></path>
20
+ </g>
21
+ </g>
22
+ </g>
23
+ </svg>
widgets/ink-fard-widget/ink-fard-widget.php ADDED
@@ -0,0 +1,306 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Filter Accordion
5
+ Description: Expand and collapse content that is broken into logical sections.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Filter_Accordion_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-filt-ardn',
17
+
18
+ __('Inked Filter Accordion', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Expand and collapse content that is broken into logical sections.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/filter-accordion-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+ 'title' => array(
30
+ 'type' => 'text',
31
+ 'label' => __('Title', 'wpinked-widgets'),
32
+ 'default' => ''
33
+ ),
34
+
35
+ 'id' => array(
36
+ 'type' => 'text',
37
+ 'label' => __('ID', 'wpinked-widgets'),
38
+ 'description' => __( 'Should be unique on the page. Must begin with alphabets[A-Za-z]. Should not contain spaces.', 'wpinked-widgets' ),
39
+ 'default' => ''
40
+ ),
41
+
42
+ 'expand' => array(
43
+ 'type' => 'checkbox',
44
+ 'label' => __( 'Open multiple toggles simultaneously?', 'wpinked-widgets' ),
45
+ 'default' => false
46
+ ),
47
+
48
+ 'toggleable' => array(
49
+ 'type' => 'checkbox',
50
+ 'label' => __( 'Close toggle only if another is open ?', 'wpinked-widgets' ),
51
+ 'default' => false
52
+ ),
53
+
54
+ 'icon-open' => array(
55
+ 'type' => 'icon',
56
+ 'label' => __('Closed Toggle Icon', 'wpinked-widgets'),
57
+ ),
58
+
59
+ 'icon-close' => array(
60
+ 'type' => 'icon',
61
+ 'label' => __('Open Toggle Icon.', 'wpinked-widgets'),
62
+ ),
63
+
64
+ 'all' => array(
65
+ 'type' => 'text',
66
+ 'label' => __('Label for showing all Toggles', 'wpinked-widgets'),
67
+ 'default' => 'ALL'
68
+ ),
69
+
70
+ 'filters' => array(
71
+ 'type' => 'repeater',
72
+ 'label' => __( 'Filters' , 'wpinked-widgets' ),
73
+ 'item_name' => __( 'Filter', 'wpinked-widgets' ),
74
+ 'item_label' => array(
75
+ 'selector' => "[id*='title']",
76
+ 'update_event' => 'change',
77
+ 'value_method' => 'val'
78
+ ),
79
+ 'fields' => array(
80
+
81
+ 'name' => array(
82
+ 'type' => 'text',
83
+ 'label' => __('Filter', 'wpinked-widgets'),
84
+ 'default' => ''
85
+ ),
86
+
87
+ 'slug' => array(
88
+ 'type' => 'text',
89
+ 'label' => __('Slug', 'wpinked-widgets'),
90
+ 'default' => '',
91
+ 'description' => __( 'Should be unique. Should not contain spaces.', 'wpinked-widgets' ),
92
+ ),
93
+
94
+ )
95
+ ),
96
+
97
+ 'toggles' => array(
98
+ 'type' => 'repeater',
99
+ 'label' => __( 'Toggles' , 'wpinked-widgets' ),
100
+ 'item_name' => __( 'Toggle', 'wpinked-widgets' ),
101
+ 'item_label' => array(
102
+ 'selector' => "[id*='title']",
103
+ 'update_event' => 'change',
104
+ 'value_method' => 'val'
105
+ ),
106
+ 'fields' => array(
107
+
108
+ 'title' => array(
109
+ 'type' => 'text',
110
+ 'label' => __('Title', 'wpinked-widgets'),
111
+ 'default' => ''
112
+ ),
113
+
114
+ 'active' => array(
115
+ 'type' => 'checkbox',
116
+ 'label' => __( 'Open by default ?', 'wpinked-widgets' ),
117
+ 'default' => false,
118
+ ),
119
+
120
+ 'slugs' => array(
121
+ 'type' => 'text',
122
+ 'label' => __('Slugs', 'wpinked-widgets'),
123
+ 'default' => '',
124
+ 'description' => __( 'Add the slugs from above for which this toggle should be visible. Leave spaces between slugs.', 'wpinked-widgets' ),
125
+ ),
126
+
127
+ 'content' => array(
128
+ 'type' => 'tinymce',
129
+ 'label' => __( 'Content', 'wpinked-widgets' ),
130
+ 'default' => '',
131
+ 'rows' => 10,
132
+ 'default_editor' => 'tinymce',
133
+ 'button_filters' => array(
134
+ 'mce_buttons' => array( $this, 'filter_mce_buttons' ),
135
+ 'mce_buttons_2' => array( $this, 'filter_mce_buttons_2' ),
136
+ 'mce_buttons_3' => array( $this, 'filter_mce_buttons_3' ),
137
+ 'mce_buttons_4' => array( $this, 'filter_mce_buttons_5' ),
138
+ 'quicktags_settings' => array( $this, 'filter_quicktags_settings' ),
139
+ ),
140
+ )
141
+
142
+ )
143
+ ),
144
+
145
+ 'styling' => array(
146
+ 'type' => 'section',
147
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
148
+ 'hide' => true,
149
+ 'fields' => array(
150
+
151
+ 'type-theme' => array(
152
+ 'type' => 'select',
153
+ 'label' => __( 'Filter List Theme', 'wpinked-widgets' ),
154
+ 'default' => 'minimal',
155
+ 'options' => array(
156
+ 'minimal' => __( 'Minimal', 'wpinked-widgets' ),
157
+ 'outline' => __( 'Outline', 'wpinked-widgets' ),
158
+ 'flat' => __( 'Flat', 'wpinked-widgets' )
159
+ )
160
+ ),
161
+
162
+ 'type-color' => array(
163
+ 'type' => 'color',
164
+ 'label' => __( 'Filter List Color', 'wpinked-widgets' ),
165
+ 'default' => '',
166
+ 'description' => __( 'Typically used as text color.', 'wpinked-widgets' ),
167
+ ),
168
+
169
+ 'type-h-color' => array(
170
+ 'type' => 'color',
171
+ 'label' => __( 'Filter List Highlight Color', 'wpinked-widgets' ),
172
+ 'default' => '',
173
+ 'description' => __( 'Typically used as button background.', 'wpinked-widgets' ),
174
+ ),
175
+
176
+ 'type-pos' => array(
177
+ 'type' => 'select',
178
+ 'label' => __( 'Filter List Position', 'wpinked-widgets' ),
179
+ 'default' => 'center',
180
+ 'options' => array(
181
+ 'left' => __( 'Left', 'wpinked-widgets' ),
182
+ 'center' => __( 'Center', 'wpinked-widgets' ),
183
+ 'right' => __( 'Right', 'wpinked-widgets' )
184
+ )
185
+ ),
186
+
187
+ 'icon' => array(
188
+ 'type' => 'select',
189
+ 'label' => __( 'Icon Location', 'wpinked-widgets' ),
190
+ 'default' => 'right',
191
+ 'options' => array(
192
+ 'left' => __( 'Left', 'wpinked-widgets' ),
193
+ 'right' => __( 'Right', 'wpinked-widgets' )
194
+ )
195
+ ),
196
+
197
+ 'text' => array(
198
+ 'type' => 'select',
199
+ 'label' => __( 'Text Alignment', 'wpinked-widgets' ),
200
+ 'default' => 'iw-text-left',
201
+ 'options' => array(
202
+ 'iw-text-left' => __( 'Left', 'wpinked-widgets' ),
203
+ 'iw-text-center' => __( 'Center', 'wpinked-widgets' ),
204
+ 'iw-text-right' => __( 'Right', 'wpinked-widgets' ),
205
+ )
206
+ ),
207
+
208
+ 'gap' => array(
209
+ 'type' => 'checkbox',
210
+ 'label' => __( 'Gap between toggles?', 'wpinked-widgets' ),
211
+ 'default' => true
212
+ ),
213
+
214
+ 'title-bg' => array(
215
+ 'type' => 'color',
216
+ 'label' => __( 'Title Background Color', 'wpinked-widgets' ),
217
+ 'default' => ''
218
+ ),
219
+
220
+ 'title-h-bg' => array(
221
+ 'type' => 'color',
222
+ 'label' => __( 'Title Background Hover Color', 'wpinked-widgets' ),
223
+ 'default' => ''
224
+ ),
225
+
226
+ 'title' => array(
227
+ 'type' => 'color',
228
+ 'label' => __( 'Title Color', 'wpinked-widgets' ),
229
+ 'default' => ''
230
+ ),
231
+
232
+ 'title-h' => array(
233
+ 'type' => 'color',
234
+ 'label' => __( 'Title Hover Color', 'wpinked-widgets' ),
235
+ 'default' => ''
236
+ ),
237
+
238
+ 'icon-open' => array(
239
+ 'type' => 'color',
240
+ 'label' => __( 'Icon Open Color', 'wpinked-widgets' ),
241
+ 'default' => ''
242
+ ),
243
+
244
+ 'icon-close' => array(
245
+ 'type' => 'color',
246
+ 'label' => __( 'Icon Close Color', 'wpinked-widgets' ),
247
+ 'default' => ''
248
+ ),
249
+
250
+ 'content-bg' => array(
251
+ 'type' => 'color',
252
+ 'label' => __( 'Content Background Color', 'wpinked-widgets' ),
253
+ 'default' => ''
254
+ ),
255
+
256
+ )
257
+ ),
258
+ ),
259
+
260
+ //The $base_folder path string.
261
+ plugin_dir_path(__FILE__)
262
+ );
263
+ }
264
+
265
+ function get_template_name($instance) {
266
+ return 'accordion';
267
+ }
268
+
269
+ function get_style_name($instance) {
270
+ return 'accordion';
271
+ }
272
+
273
+ function enqueue_frontend_scripts( $instance ) {
274
+
275
+ wp_register_script( 'iw-accordion-js', siteorigin_widget_get_plugin_dir_url('ink-accordion') . 'scripts/accordion.js', array( 'iw-foundation-js' ), INKED_SO_WIDGETS, true );
276
+
277
+ wp_enqueue_script( 'iw-filter-init', siteorigin_widget_get_plugin_dir_url('ink-filt-ardn') . 'scripts/filter.init.js', array( 'iw-accordion-js', 'iw-mixitup-js' ), INKED_SO_WIDGETS, true );
278
+
279
+ wp_enqueue_style( 'iw-filt-ardn', siteorigin_widget_get_plugin_dir_url('ink-filt-ardn') . 'styles/accordion.css', array(), INKED_SO_WIDGETS );
280
+
281
+ parent::enqueue_frontend_scripts( $instance );
282
+ }
283
+
284
+ function get_less_variables($instance) {
285
+ if( empty( $instance ) ) return array();
286
+
287
+ return array(
288
+ 'gap' => $instance['styling']['gap'],
289
+ 'icon' => $instance['styling']['icon'],
290
+ 'title' => $instance['styling']['title'],
291
+ 'title-bg' => $instance['styling']['title-bg'],
292
+ 'title-h' => $instance['styling']['title-h'],
293
+ 'title-h-bg' => $instance['styling']['title-h-bg'],
294
+ 'cont-bg' => $instance['styling']['content-bg'],
295
+ 'icon-open' => $instance['styling']['icon-open'],
296
+ 'icon-close' => $instance['styling']['icon-close'],
297
+ 'type-th' => $instance['styling']['type-theme'],
298
+ 'type-clr' => $instance['styling']['type-color'],
299
+ 'type-hl' => $instance['styling']['type-h-color'],
300
+ 'type-pos' => $instance['styling']['type-pos'],
301
+ );
302
+ }
303
+
304
+ }
305
+
306
+ siteorigin_widget_register('ink-filt-ardn', __FILE__, 'Inked_Filter_Accordion_SO_Widget');
widgets/ink-fard-widget/scripts/filter.init.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery(document).foundation();
2
+
3
+ ( function($) {
4
+
5
+ $(document).ready( function() {
6
+
7
+ $('#Container').mixItUp();
8
+
9
+ });
10
+
11
+ })( jQuery );
widgets/ink-fard-widget/styles/accordion.css ADDED
@@ -0,0 +1,124 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #Container .mix{
2
+ display: none;
3
+ width: 100%;
4
+ }
5
+
6
+ .iw-so-acrdn-terms {
7
+ list-style: none;
8
+ overflow: hidden;
9
+ padding: 0;
10
+ display: table;
11
+ }
12
+
13
+ .iw-so-acrdn-terms > li {
14
+ display: block;
15
+ float: left;
16
+ list-style: none;
17
+ margin-left: 0 !important;
18
+ margin-bottom: 0 !important;
19
+ }
20
+
21
+ .iw-so-acrdn-terms > li > a {
22
+ cursor: pointer;
23
+ font-size: 1em;
24
+ padding: .5em 1em;
25
+ }
26
+
27
+ .iw-so-acrdn-terms > li > * {
28
+ display: block;
29
+ }
30
+
31
+ .accordion {
32
+ margin-bottom: 0;
33
+ margin-left: 0;
34
+ }
35
+
36
+ .accordion:before, .accordion:after {
37
+ content: " ";
38
+ display: table;
39
+ }
40
+
41
+ .accordion:after {
42
+ clear: both;
43
+ }
44
+
45
+ .accordion .accordion-navigation {
46
+ display: block;
47
+ margin-bottom: 0;
48
+ margin-left: 0 !important;
49
+ margin-top: 0 !important;
50
+ margin-right: 0 !important;
51
+ }
52
+
53
+ .accordion .accordion-navigation > a {
54
+ display: block;
55
+ font-family: inherit;
56
+ font-size: 1.1em;
57
+ padding: 1em;
58
+ text-decoration: none;
59
+ outline: none;
60
+ position: relative;
61
+ }
62
+
63
+ .accordion .accordion-navigation.active > a .iw-so-tgl-close {
64
+ display: block;
65
+ }
66
+
67
+ .accordion .accordion-navigation.active > a .iw-so-tgl-open {
68
+ display: none;
69
+ }
70
+
71
+ .accordion .accordion-navigation > a span {
72
+ position: absolute;
73
+ top: 5px;
74
+ }
75
+
76
+ .accordion .accordion-navigation > a .iw-so-tgl-close {
77
+ display: none;
78
+ }
79
+
80
+ .accordion .accordion-navigation > a .iw-so-tgl-open {
81
+ display: block;
82
+ }
83
+
84
+ .accordion .accordion-navigation > a:hover {
85
+ background: #e3e3e3;
86
+ }
87
+
88
+ .accordion .accordion-navigation > .content {
89
+ display: none;
90
+ padding: 0.9375em;
91
+ }
92
+
93
+ .accordion .accordion-navigation > .content.active {
94
+ background: #FFFFFF;
95
+ display: block;
96
+ }
97
+
98
+ .accordion .accordion-navigation > .content * {
99
+ display: none;
100
+ }
101
+
102
+ .accordion .accordion-navigation > .content.active * {
103
+ display: block;
104
+ }
105
+
106
+ .accordion .accordion-navigation > a {
107
+ position: relative;
108
+ z-index: 10;
109
+ }
110
+ .accordion .accordion-navigation > .content {
111
+ padding: 0 0.9375rem;
112
+ height: 0;
113
+ display: block;
114
+ opacity: 0;
115
+ -webkit-transition: .5s all ease;
116
+ -moz-transition: .5s all ease;
117
+ -o-transition: .5s all ease;
118
+ transition: .5s all ease;
119
+ }
120
+ .accordion .accordion-navigation > .content.active {
121
+ height: auto;
122
+ padding: 0.9375rem;
123
+ opacity: 1;
124
+ }
widgets/ink-fard-widget/styles/accordion.less ADDED
@@ -0,0 +1,103 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @gap: 0;
2
+ @icon: right;
3
+ @title-bg: transparent;
4
+ @cont-bg: transparent;
5
+ @title: #333;
6
+ @icon-open: #333;
7
+ @icon-close: #333;
8
+ @title-h: #666;
9
+ @title-h-bg: transparent;
10
+ @type-th: 'minimal';
11
+ @type-clr: #95a5a6;
12
+ @type-hl: #2c3e50;
13
+ @type-pos: 'center';
14
+
15
+ .iw-so-filter-acrdn-terms {
16
+ .clearfix();
17
+ }
18
+
19
+ .iw-so-acrdn-terms {
20
+
21
+ margin: 2em auto;
22
+
23
+ .type-pos() when (@type-pos = left) {
24
+ float: left;
25
+ }
26
+ .type-pos() when (@type-pos = right) {
27
+ float: right;
28
+ }
29
+ .type-pos();
30
+
31
+ li {
32
+
33
+ margin-right: 3px;
34
+
35
+ a {
36
+ color: @type-clr;
37
+
38
+ .type-theme() when (@type-th = minimal) {
39
+ padding-left: 2px;
40
+ }
41
+ .type-theme() when (@type-th = outline) {
42
+ border: 2px solid transparent;
43
+ }
44
+ .type-theme();
45
+
46
+ &:hover,
47
+ &:focus {
48
+ color: @type-hl;
49
+ }
50
+ &.active {
51
+
52
+ .type-hl() when (@type-th = outline) {
53
+ border-color: @type-hl;
54
+ color: @type-hl;
55
+ }
56
+ .type-hl() when (@type-th = minimal) {
57
+ color: @type-hl;
58
+ }
59
+ .type-hl() when (@type-th = flat) {
60
+ background: @type-hl;
61
+ color: @type-clr;
62
+ }
63
+ .type-hl();
64
+ }
65
+
66
+ }
67
+ }
68
+ }
69
+
70
+ .accordion .accordion-navigation {
71
+ .gap() when (@gap = 1) { margin-bottom: 12px; }
72
+ .gap();
73
+ a {
74
+ background: @title-bg;
75
+ color: @title;
76
+
77
+ .icon-padding() when (@icon = right) { padding-right: 3.5em; }
78
+ .icon-padding() when (@icon = left) { padding-left: 3.5em; }
79
+ .icon-padding();
80
+
81
+ &:hover{
82
+ background: @title-h-bg;
83
+ color: @title-h;
84
+ }
85
+
86
+ span {
87
+ .icon-pos() when (@icon = right) { right: 10px; }
88
+ .icon-pos() when (@icon = left) { left: 10px; }
89
+ .icon-pos();
90
+ }
91
+
92
+ .iw-so-tgl-close {
93
+ color: @icon-close;
94
+ }
95
+
96
+ .iw-so-tgl-open {
97
+ color: @icon-open;
98
+ }
99
+ }
100
+ .content {
101
+ background: @cont-bg;
102
+ }
103
+ }
widgets/ink-fard-widget/tpl/accordion.php ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if( !empty($instance['title']) ) echo $args['before_title'] . esc_html($instance['title']) . $args['after_title'];
3
+
4
+ $icon_styles = array();
5
+ $icon_styles[] = 'font-size: 2em';
6
+ if(!empty($instance['styling']['icon'])) $icon_styles[] = 'color: '.$instance['styling']['icon'];
7
+
8
+ if($instance['expand']):
9
+ $expand = ' multi_expand: true;';
10
+ endif;
11
+
12
+ if($instance['toggleable']):
13
+ $toggleable = ' toggleable: false;';
14
+ endif;
15
+
16
+ $acc_no = 1;
17
+ ?>
18
+
19
+ <div class="iw-so-filter-acrdn-terms">
20
+ <ul class="iw-so-acrdn-terms">
21
+ <?php
22
+ echo '<li><a class="filter" data-filter="all">' . $instance['all'] . '</a></li>';
23
+
24
+ foreach ( $instance['filters'] as $term ) {
25
+ echo '<li><a class="filter" data-filter=".' . $term['slug'] . '" >' . $term['name'] .'</a></li>';
26
+ }
27
+ ?>
28
+ </ul>
29
+ </div>
30
+
31
+ <ul class="accordion" id="Container" data-accordion data-options="<?php echo $expand . $toggleable; ?>">
32
+
33
+ <?php foreach( $instance['toggles'] as $i => $toggle ) { ?>
34
+
35
+ <li class="accordion-navigation mix <?php echo $toggle['slugs']; ?>">
36
+
37
+ <a href="#<?php echo $instance['id'] . '-' . $acc_no; ?>" class="<?php echo $instance['styling']['text']; ?>">
38
+ <?php echo $toggle['title']; ?>
39
+ <span class="iw-so-tgl-open"><?php echo siteorigin_widget_get_icon( $instance['icon-open'], $icon_styles ); ?></span>
40
+ <span class="iw-so-tgl-close"><?php echo siteorigin_widget_get_icon( $instance['icon-close'], $icon_styles ); ?></span>
41
+ </a>
42
+
43
+ <div id="<?php echo $instance['id'] . '-' . $acc_no; ?>" class="content<?php echo ($toggle['active'] == 1 ? ' active' : '' ); ?>">
44
+
45
+ <?php echo $toggle['content']; ?>
46
+
47
+ </div>
48
+
49
+ </li>
50
+
51
+ <?php $acc_no++; ?>
52
+
53
+ <?php } ?>
54
+
55
+ </ul>
widgets/ink-mbox-widget/assets/banner.svg ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Image-Box" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(30.000000, 26.000000)" stroke="#F7EBE8" stroke-width="4" sketch:type="MSShapeGroup">
11
+ <rect id="Rectangle-19" x="0" y="0" width="179" height="58"></rect>
12
+ <rect id="Rectangle-19-Copy" x="61" y="155" width="60" height="21"></rect>
13
+ <path d="M56,76 L124,76" id="Line-Copy-5" stroke-linecap="square"></path>
14
+ <path d="M17,96 L166,96" id="Line-Copy-6" stroke-linecap="square"></path>
15
+ <path d="M17,111 L166,111" id="Line-Copy-7" stroke-linecap="square"></path>
16
+ <path d="M17,126 L166,126" id="Line-Copy-8" stroke-linecap="square"></path>
17
+ </g>
18
+ </g>
19
+ </g>
20
+ </svg>
widgets/ink-mbox-widget/ink-mbox-widget.php ADDED
@@ -0,0 +1,344 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Media Box
5
+ Description: Highlight important bits of information.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Media_Box_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-media-box',
17
+
18
+ __('Inked Media Box', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Highlight important bits of information.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/media-box-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+
30
+ 'admin' => array(
31
+ 'type' => 'text',
32
+ 'label' => __('Admin Label', 'wpinked-widgets'),
33
+ 'default' => ''
34
+ ),
35
+
36
+ 'box' => array(
37
+ 'type' => 'section',
38
+ 'label' => __( 'Box Settings' , 'wpinked-widgets' ),
39
+ 'hide' => true,
40
+ 'fields' => array(
41
+
42
+ 'media' => array(
43
+ 'type' => 'select',
44
+ 'label' => __('Media Type', 'wpinked-widgets'),
45
+ 'default' => 'image',
46
+ 'options' => array(
47
+ 'image' => __('Image', 'wpinked-widgets'),
48
+ 'icon' => __('Icon', 'wpinked-widgets'),
49
+ ),
50
+ 'state_emitter' => array(
51
+ 'callback' => 'select',
52
+ 'args' => array('media_type')
53
+ )
54
+ ),
55
+
56
+ 'image' => array(
57
+ 'type' => 'media',
58
+ 'fallback' => false,
59
+ 'label' => __( 'Image', 'wpinked-widgets' ),
60
+ 'default' => '',
61
+ 'library' => 'image',
62
+ 'state_handler' => array(
63
+ 'media_type[image]' => array('show'),
64
+ 'media_type[icon]' => array('hide'),
65
+ ),
66
+ ),
67
+
68
+ 'icon' => array(
69
+ 'type' => 'icon',
70
+ 'label' => __('Icon', 'wpinked-widgets'),
71
+ 'state_handler' => array(
72
+ 'media_type[image]' => array('hide'),
73
+ 'media_type[icon]' => array('show'),
74
+ ),
75
+ ),
76
+
77
+ 'title' => array(
78
+ 'type' => 'text',
79
+ 'label' => __( 'Title', 'wpinked-widgets' ),
80
+ 'default' => '',
81
+ ),
82
+
83
+ 'content' => array(
84
+ 'type' => 'textarea',
85
+ 'label' => __( 'Content', 'wpinked-widgets' ),
86
+ 'rows' => 5
87
+ ),
88
+
89
+ 'btn' => array(
90
+ 'type' => 'text',
91
+ 'label' => __('Button text', 'wpinked-widgets'),
92
+ ),
93
+
94
+ 'btn-url' => array(
95
+ 'type' => 'link',
96
+ 'label' => __('Destination URL', 'wpinked-widgets'),
97
+ ),
98
+
99
+ 'btn-window' => array(
100
+ 'type' => 'checkbox',
101
+ 'default' => false,
102
+ 'label' => __('Open in a new window', 'wpinked-widgets'),
103
+ ),
104
+
105
+ 'btn-id' => array(
106
+ 'type' => 'text',
107
+ 'label' => __('Button ID', 'wpinked-widgets'),
108
+ 'description' => __('An ID attribute allows you to target this button in Javascript.', 'wpinked-widgets'),
109
+ ),
110
+
111
+ 'btn-title' => array(
112
+ 'type' => 'text',
113
+ 'label' => __('Button Title attribute', 'wpinked-widgets'),
114
+ 'description' => __('Adds a title attribute to the button link.', 'wpinked-widgets'),
115
+ ),
116
+
117
+ 'btn-onclick' => array(
118
+ 'type' => 'text',
119
+ 'label' => __('Button Onclick', 'wpinked-widgets'),
120
+ 'description' => __('Run this Javascript when the button is clicked. Ideal for tracking.', 'wpinked-widgets'),
121
+ ),
122
+
123
+ )
124
+
125
+ ),
126
+
127
+ 'styling' => array(
128
+ 'type' => 'section',
129
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
130
+ 'hide' => true,
131
+ 'fields' => array(
132
+
133
+ 'padding-top' => array(
134
+ 'type' => 'text',
135
+ 'label' => __( 'Padding Top', 'wpinked-widgets' ),
136
+ 'default' => '30px',
137
+ 'description' => __( 'Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' )
138
+ ),
139
+
140
+ 'padding-bottom' => array(
141
+ 'type' => 'text',
142
+ 'label' => __( 'Padding Bottom', 'wpinked-widgets' ),
143
+ 'default' => '30px',
144
+ 'description' => __( 'Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' )
145
+ ),
146
+
147
+ 'img-shape' => array(
148
+ 'type' => 'select',
149
+ 'label' => __('Image Shape', 'wpinked-widgets'),
150
+ 'default' => '0',
151
+ 'options' => array(
152
+ '0' => __('Sharp', 'wpinked-widgets'),
153
+ '3px' => __('Slight Curve', 'wpinked-widgets'),
154
+ '10px' => __('High Curve', 'wpinked-widgets'),
155
+ '50%' => __('Round', 'wpinked-widgets'),
156
+ ),
157
+ 'state_handler' => array(
158
+ 'media_type[image]' => array('show'),
159
+ 'media_type[icon]' => array('hide'),
160
+ ),
161
+ ),
162
+
163
+ 'icon-clr' => array(
164
+ 'type' => 'color',
165
+ 'label' => __('Icon Color', 'wpinked-widgets'),
166
+ 'state_handler' => array(
167
+ 'media_type[image]' => array('hide'),
168
+ 'media_type[icon]' => array('show'),
169
+ ),
170
+ ),
171
+
172
+ 'icon-size' => array(
173
+ 'type' => 'text',
174
+ 'label' => __( 'Icon Size', 'wpinked-widgets' ),
175
+ 'default' => '',
176
+ 'description' => __( 'Enter the units, eg: px, em, rem, ...', 'wpinked-widgets' ),
177
+ 'state_handler' => array(
178
+ 'media_type[image]' => array('hide'),
179
+ 'media_type[icon]' => array('show'),
180
+ ),
181
+ ),
182
+
183
+ 'icon-border' => array(
184
+ 'type' => 'checkbox',
185
+ 'label' => __( 'Show Icon Border ?', 'wpinked-widgets' ),
186
+ 'default' => false,
187
+ 'state_handler' => array(
188
+ 'media_type[image]' => array('hide'),
189
+ 'media_type[icon]' => array('show'),
190
+ ),
191
+ ),
192
+
193
+ 'icon-border-clr' => array(
194
+ 'type' => 'color',
195
+ 'label' => __( 'Icon Border Color', 'wpinked-widgets' ),
196
+ 'default' => '',
197
+ 'state_handler' => array(
198
+ 'media_type[image]' => array('hide'),
199
+ 'media_type[icon]' => array('show'),
200
+ ),
201
+ ),
202
+
203
+ 'icon-shape' => array(
204
+ 'type' => 'select',
205
+ 'label' => __('Icon Border Shape', 'wpinked-widgets'),
206
+ 'default' => '0',
207
+ 'options' => array(
208
+ '0' => __('Sharp', 'wpinked-widgets'),
209
+ '3px' => __('Slight Curve', 'wpinked-widgets'),
210
+ '10px' => __('High Curve', 'wpinked-widgets'),
211
+ '50%' => __('Round', 'wpinked-widgets'),
212
+ ),
213
+ 'state_handler' => array(
214
+ 'media_type[image]' => array('hide'),
215
+ 'media_type[icon]' => array('show'),
216
+ ),
217
+ ),
218
+
219
+ 'title' => array(
220
+ 'type' => 'color',
221
+ 'label' => __( 'Title Color', 'wpinked-widgets' ),
222
+ 'default' => ''
223
+ ),
224
+
225
+ 'content' => array(
226
+ 'type' => 'color',
227
+ 'label' => __( 'Content Color', 'wpinked-widgets' ),
228
+ 'default' => ''
229
+ ),
230
+
231
+ 'btn-size' => array(
232
+ 'type' => 'select',
233
+ 'label' => __('Button Size', 'wpinked-widgets'),
234
+ 'default' => 'default',
235
+ 'options' => array(
236
+ 'default' => __('Default', 'wpinked-widgets'),
237
+ 'full' => __('Fullwidth', 'wpinked-widgets'),
238
+ ),
239
+ ),
240
+
241
+ 'btn-theme' => array(
242
+ 'type' => 'select',
243
+ 'label' => __('Button Theme', 'wpinked-widgets'),
244
+ 'default' => 'classic',
245
+ 'options' => array(
246
+ 'classic' => __('Classic', 'wpinked-widgets'),
247
+ 'flat' => __('Flat', 'wpinked-widgets'),
248
+ 'outline' => __('Outline', 'wpinked-widgets'),
249
+ 'threed' => __('3D', 'wpinked-widgets'),
250
+ 'shadow' => __('Shadow', 'wpinked-widgets'),
251
+ 'deline' => __('Deline', 'wpinked-widgets'),
252
+ ),
253
+ ),
254
+
255
+ 'btn-clr' => array(
256
+ 'type' => 'color',
257
+ 'label' => __('Button Highlight Color', 'wpinked-widgets'),
258
+ 'description' => __( 'Typically used as button background.', 'wpinked-widgets' ),
259
+ ),
260
+
261
+ 'btn-base' => array(
262
+ 'type' => 'color',
263
+ 'label' => __('Button Base Color', 'wpinked-widgets'),
264
+ 'description' => __( 'Typically used as text color.', 'wpinked-widgets' ),
265
+ ),
266
+
267
+ 'btn-hover' => array(
268
+ 'type' => 'checkbox',
269
+ 'default' => true,
270
+ 'label' => __('Use button hover effect ?', 'wpinked-widgets'),
271
+ ),
272
+
273
+ 'btn-click' => array(
274
+ 'type' => 'checkbox',
275
+ 'default' => true,
276
+ 'label' => __('Use button click effect ?', 'wpinked-widgets'),
277
+ ),
278
+
279
+ 'btn-corners' => array(
280
+ 'type' => 'select',
281
+ 'label' => __('Button Corners', 'wpinked-widgets'),
282
+ 'default' => '0.25em',
283
+ 'options' => array(
284
+ '0em' => __('Sharp', 'wpinked-widgets'),
285
+ '0.25em' => __('Slightly curved', 'wpinked-widgets'),
286
+ '0.75em' => __('Highly curved', 'wpinked-widgets'),
287
+ '1.5em' => __('Round', 'wpinked-widgets'),
288
+ ),
289
+ ),
290
+
291
+ 'background' => array(
292
+ 'type' => 'color',
293
+ 'label' => __( 'Media Box Background Color', 'wpinked-widgets' ),
294
+ 'default' => ''
295
+ ),
296
+
297
+ )
298
+ ),
299
+ ),
300
+
301
+ //The $base_folder path string.
302
+ plugin_dir_path(__FILE__)
303
+ );
304
+ }
305
+
306
+ function get_template_name($instance) {
307
+ return 'media-box';
308
+ }
309
+
310
+ function get_style_name($instance) {
311
+ return 'media-box';
312
+ }
313
+
314
+ function enqueue_frontend_scripts( $instance ) {
315
+
316
+ wp_enqueue_style( 'iw-imgbox', siteorigin_widget_get_plugin_dir_url('ink-media-box') . 'styles/media-box.css', array(), INKED_SO_WIDGETS );
317
+
318
+ parent::enqueue_frontend_scripts( $instance );
319
+ }
320
+
321
+ function get_less_variables($instance) {
322
+ if( empty( $instance ) ) return array();
323
+
324
+ return array(
325
+ 'img-shape' => $instance['styling']['img-shape'],
326
+ 'icon-bdr' => $instance['styling']['icon-border'],
327
+ 'icon-bdr-clr' => $instance['styling']['icon-border-clr'],
328
+ 'icon-shape' => $instance['styling']['icon-shape'],
329
+ 'btn-size' => $instance['styling']['btn-size'],
330
+ 'btn-theme' => $instance['styling']['btn-theme'],
331
+ 'btn-clr' => $instance['styling']['btn-clr'],
332
+ 'btn-base' => $instance['styling']['btn-base'],
333
+ 'btn-crnr' => $instance['styling']['btn-corners'],
334
+ 'pad-top' => $instance['styling']['padding-top'],
335
+ 'pad-btm' => $instance['styling']['padding-bottom'],
336
+ 'title' => $instance['styling']['title'],
337
+ 'content' => $instance['styling']['content'],
338
+ 'bg' => $instance['styling']['background'],
339
+ );
340
+ }
341
+
342
+ }
343
+
344
+ siteorigin_widget_register('ink-media-box', __FILE__, 'Inked_Media_Box_SO_Widget');
widgets/ink-mbox-widget/styles/media-box.css ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .iw-so-imgbox-btn {
2
+ -webkit-appearance: none;
3
+ -moz-appearance: none;
4
+ cursor: pointer;
5
+ font-family: inherit;
6
+ font-weight: normal;
7
+ line-height: normal;
8
+ position: relative;
9
+ text-align: center;
10
+ text-decoration: none;
11
+ display: inline-block;
12
+ -webkit-transition: all 0.15s ease-in-out;
13
+ -moz-transition: all 0.15s ease-in-out;
14
+ -ms-transition: all 0.15s ease-in-out;
15
+ -o-transition: all 0.15s ease-in-out;
16
+ transition: all 0.15s ease-in-out;
17
+ font-size: 1em;
18
+ padding: 0.875em 1.75em;
19
+ }
20
+
21
+ @media only screen and (min-width: 40.0625em) {
22
+ .iw-so-imgbox-btn {
23
+ display: inline-block;
24
+ }
25
+ }
widgets/ink-mbox-widget/styles/media-box.less ADDED
@@ -0,0 +1,166 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+
3
+ @img-shape: 0;
4
+ @icon-bdr: '';
5
+ @icon-bdr-clr: '';
6
+ @icon-shape: 0;
7
+ @btn-size: default;
8
+ @btn-theme: flat;
9
+ @btn-clr: #333;
10
+ @btn-base: #eee;
11
+ @btn-crnr: 0;
12
+ @pad-top: '';
13
+ @pad-btm: '';
14
+ @title: inherit;
15
+ @content: inherit;
16
+ @bg: '';
17
+
18
+ .iw-so-imgbox {
19
+ padding-top: @pad-top;
20
+ padding-bottom: @pad-btm;
21
+ background: @bg;
22
+ .iw-so-imgbox-title {
23
+ color: @title;
24
+ padding: 0 10%;
25
+ }
26
+ .iw-so-imgbox-content {
27
+ color: @content;
28
+ padding: 0 10%;
29
+ }
30
+ img {
31
+ max-width: 100%;
32
+ border-radius: @img-shape;
33
+ }
34
+ [class^="sow-icon-"] {
35
+ padding: 20px;
36
+ .icon-border() when ( @icon-bdr = 1 ) { border: 2px solid @icon-brdr-clr; }
37
+ .icon-border();
38
+ border-radius: @icon-shape;
39
+ }
40
+ .iw-so-imgbox-btn-base {
41
+ .clearfix();
42
+ }
43
+ .iw-so-imgbox-btn {
44
+ border-radius: @btn-crnr;
45
+ color: @btn-base;
46
+ .full-width() when (@btn-size = full) { padding-left: 0; padding-right: 0; width: 100%; box-sizing: border-box; }
47
+ .full-width();
48
+ .btn-theme() when (@btn-theme = classic) {
49
+ .gradient(@btn-clr, darken(@btn-clr, 15%), @btn-clr);
50
+ border: 1px solid;
51
+ border-color: darken(@btn-clr, 8%) darken(@btn-clr, 10%) darken(@btn-clr, 13%) darken(@btn-clr, 10%);
52
+ }
53
+ .btn-theme() when (@btn-theme = flat) {
54
+ background: @btn-clr;
55
+ border: 1px solid @btn-clr;
56
+ }
57
+ .btn-theme() when (@btn-theme = outline) {
58
+ background: transparent;
59
+ border: 2px solid @btn-clr;
60
+ color: @btn-clr;
61
+ }
62
+ .btn-theme() when (@btn-theme = threed) {
63
+ background: @btn-clr;
64
+ box-shadow: 0px 5px 0px 0px darken(@btn-clr, 10%);
65
+ }
66
+ .btn-theme() when (@btn-theme = shadow) {
67
+ .drop-shadow(1px, 1px, 4px, 0.4);
68
+ background: @btn-clr;
69
+ border: 1px solid @btn-clr;
70
+ }
71
+ .btn-theme() when (@btn-theme = deline) {
72
+ background: @btn-clr;
73
+ border: 2px solid @btn-clr;
74
+ }
75
+ .btn-theme();
76
+ &:hover,
77
+ &:focus {
78
+ .dft-theme() when (@btn-theme = classic) {
79
+ color: @btn-base;
80
+ }
81
+ .dft-theme() when (@btn-theme = flat) {
82
+ color: @btn-base;
83
+ }
84
+ .dft-theme() when (@btn-theme = outline) {
85
+ color: @btn-clr;
86
+ }
87
+ .dft-theme() when (@btn-theme = threed) {
88
+ color: @btn-base;
89
+ }
90
+ .dft-theme() when (@btn-theme = shadow) {
91
+ color: @btn-base;
92
+ }
93
+ .dft-theme() when (@btn-theme = deline) {
94
+ color: @btn-base;
95
+ }
96
+ .dft-theme();
97
+ }
98
+
99
+ }
100
+ .iw-so-imgbox-btn-hover {
101
+ &:hover,
102
+ &:focus {
103
+ color: @btn-base;
104
+ .btn-hover() when (@btn-theme = classic) {
105
+ .gradient(lighten(@btn-clr, 2%), darken(@btn-clr, 20%), lighten(@btn-clr, 2%));
106
+ border-color: darken(@btn-clr, 4%) darken(@btn-clr, 6%) darken(@btn-clr, 18%) darken(@btn-clr, 6%);
107
+ color: @btn-base;
108
+ }
109
+ .btn-hover() when (@btn-theme = flat) {
110
+ background: darken(@btn-clr, 7.5%);
111
+ border-color: darken(@btn-clr, 7.5%);
112
+ }
113
+ .btn-hover() when (@btn-theme = outline) {
114
+ background: @btn-clr;
115
+ color: @btn-base;
116
+ }
117
+ .btn-hover() when (@btn-theme = threed) {
118
+ background: lighten(@btn-clr, 10%);
119
+ }
120
+ .btn-hover() when (@btn-theme = shadow) {
121
+ background: lighten(@btn-clr, 5%);
122
+ border-color: lighten(@btn-clr, 5%);
123
+ .drop-shadow(1px, 1px, 8px, 0.4);
124
+ }
125
+ .btn-hover() when (@btn-theme = deline) {
126
+ color: @btn-clr;
127
+ background: transparent;
128
+ }
129
+ .btn-hover();
130
+ }
131
+ }
132
+ .iw-so-imgbox-btn-click {
133
+ &:active {
134
+ .btn-active() when (@btn-theme = classic) {
135
+ .box-shadow(inset 0 3px 25px darken(@btn-clr, 25%));
136
+ }
137
+ .btn-active() when (@btn-theme = flat) {
138
+ background: darken(@btn-clr, 15%);
139
+ border-color: darken(@btn-clr, 15%);
140
+ }
141
+ .btn-active() when (@btn-theme = outline) {
142
+ background: lighten(@btn-clr, 10%);
143
+ border-color: lighten(@btn-clr, 10%);
144
+ color: @btn-base;
145
+ }
146
+ .btn-active() when (@btn-theme = threed) {
147
+ -webkit-transform: translate(0, 5px);
148
+ -moz-transform: translate(0, 5px);
149
+ -ms-transform: translate(0, 5px);
150
+ -o-transform: translate(0, 5px);
151
+ transform: translate(0, 5px);
152
+ box-shadow: 0px 1px 0px 0px;
153
+ }
154
+ .btn-active() when (@btn-theme = shadow) {
155
+ background: darken(@btn-clr, 4%);
156
+ border-color: darken(@btn-clr, 4%);
157
+ }
158
+ .btn-active() when (@btn-theme = deline) {
159
+ color: lighten(@btn-clr, 20%);
160
+ border-color: lighten(@btn-clr, 20%);
161
+ background: transparent;
162
+ }
163
+ .btn-active();
164
+ }
165
+ }
166
+ }
widgets/ink-mbox-widget/tpl/media-box.php ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $icon_styles = array();
4
+ if(!empty($instance['styling']['icon-size'])) $icon_styles[] = 'font-size: '.$instance['styling']['icon-size'];
5
+ if(!empty($instance['styling']['icon-clr'])) $icon_styles[] = 'color: '.$instance['styling']['icon-clr'];
6
+
7
+ $classes = array('iw-so-imgbox-btn');
8
+ if( !empty($instance['styling']['btn-hover']) ) $classes[] = 'iw-so-imgbox-btn-hover';
9
+ if( !empty($instance['styling']['btn-click']) ) $classes[] = 'iw-so-imgbox-btn-click';
10
+
11
+ $button_attributes = array(
12
+ 'class' => esc_attr(implode(' ', $classes))
13
+ );
14
+ if(!empty($instance['box']['btn-window'])) $button_attributes['target'] = '_blank';
15
+ if(!empty($instance['box']['btn-url'])) $button_attributes['href'] = sow_esc_url($instance['box']['btn-url']);
16
+ if(!empty($instance['box']['btn-id'])) $button_attributes['id'] = esc_attr($instance['box']['btn-id']);
17
+ if(!empty($instance['box']['btn-title'])) $button_attributes['title'] = esc_attr($instance['box']['btn-title']);
18
+ if(!empty($instance['box']['btn-onclick'])) $button_attributes['onclick'] = esc_attr($instance['box']['btn-onclick']);
19
+ ?>
20
+
21
+ <div class="iw-row iw-collapse iw-so-imgbox">
22
+ <div class="iw-small-12 iw-cols">
23
+ <?php if ( $instance['box']['media'] == 'image' ): ?>
24
+ <center><?php echo wp_get_attachment_image( $instance['box']['image'], 'full' ); ?></center>
25
+ <?php elseif ( $instance['box']['media'] == 'icon' ): ?>
26
+ <center><?php echo siteorigin_widget_get_icon( $instance['box']['icon'], $icon_styles ); ?></center>
27
+ <?php endif; ?>
28
+ </div>
29
+ <div class="iw-small-12 iw-cols">
30
+ <?php if ( $instance['box']['title'] ): ?>
31
+ <h3 class="iw-so-imgbox-title iw-text-center"><?php echo $instance['box']['title']; ?></h3>
32
+ <?php endif; ?>
33
+ <?php if ( $instance['box']['content'] ): ?>
34
+ <p class="iw-so-imgbox-content iw-text-center"><?php echo $instance['box']['content']; ?></p>
35
+ <?php endif; ?>
36
+ </div>
37
+ <div class="iw-small-12 iw-cols">
38
+ <?php if ( $instance['box']['btn'] ): ?>
39
+ <div class="iw-so-imgbox-btn-base iw-text-center">
40
+ <a <?php foreach($button_attributes as $name => $val) echo $name . '="' . $val . '" ' ?>>
41
+ <?php echo $instance['box']['btn']; ?>
42
+ </a>
43
+ </div>
44
+ <?php endif; ?>
45
+ </div>
46
+ </div>
widgets/ink-prsn-widget/assets/banner.svg ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Person" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(52.000000, 29.000000)" stroke="#F7EBE8" stroke-width="4" sketch:type="MSShapeGroup">
11
+ <path d="M68,103.289949 C87.882251,103.289949 104,68.2506268 104,36.4890449 C104,4.72746301 87.882251,0 68,0 C48.117749,0 32,4.72746301 32,36.4890449 C32,68.2506268 48.117749,103.289949 68,103.289949 Z" id="Oval-6"></path>
12
+ <path d="M44.5,86.5 C44.5,86.5 13.949161,100.675673 6.18273306,111.972296 C-0.717505687,122.009007 0.5,150.5 0.5,150.5" id="Line" stroke-linecap="square"></path>
13
+ <path d="M135.5,86.5 C135.5,86.5 104.949161,100.675673 97.1827331,111.972296 C90.2824943,122.009007 91.5,150.5 91.5,150.5" id="Line-Copy-3" stroke-linecap="square" transform="translate(113.458582, 118.500000) scale(-1, 1) translate(-113.458582, -118.500000) "></path>
14
+ <path d="M0.5,152 L135,152" id="Line" stroke-linecap="square"></path>
15
+ </g>
16
+ </g>
17
+ </g>
18
+ </svg>
widgets/ink-prsn-widget/ink-prsn-widget.php ADDED
@@ -0,0 +1,243 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Person
5
+ Description: Getting to know you better.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Person_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-person',
17
+
18
+ __('Inked Person', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Getting to know you better.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/person-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+
30
+ 'name' => array(
31
+ 'type' => 'text',
32
+ 'label' => __('Name', 'wpinked-widgets'),
33
+ 'default' => ''
34
+ ),
35
+
36
+ 'person' => array(
37
+ 'type' => 'section',
38
+ 'label' => __( 'Person' , 'wpinked-widgets' ),
39
+ 'hide' => true,
40
+ 'fields' => array(
41
+
42
+ 'image' => array(
43
+ 'type' => 'media',
44
+ 'label' => __( 'Image', 'wpinked-widgets' ),
45
+ 'choose' => __( 'Choose image', 'wpinked-widgets' ),
46
+ 'update' => __( 'Set image', 'wpinked-widgets' ),
47
+ 'library' => 'image',
48
+ 'fallback' => false
49
+ ),
50
+
51
+ 'designation' => array(
52
+ 'type' => 'text',
53
+ 'label' => __('Designation', 'wpinked-widgets'),
54
+ 'default' => ''
55
+ ),
56
+
57
+ 'about' => array(
58
+ 'type' => 'textarea',
59
+ 'label' => __( 'About', 'wpinked-widgets' ),
60
+ 'rows' => 5
61
+ )
62
+
63
+ )
64
+ ),
65
+
66
+ 'social' => array(
67
+ 'type' => 'section',
68
+ 'label' => __( 'Social' , 'wpinked-widgets' ),
69
+ 'hide' => true,
70
+ 'fields' => array(
71
+
72
+ 'target' => array(
73
+ 'type' => 'select',
74
+ 'label' => __( 'Open Link in', 'wpinked-widgets' ),
75
+ 'default' => '_blank',
76
+ 'options' => array(
77
+ '_self' => __( 'Same Window', 'wpinked-widgets' ),
78
+ '_blank' => __( 'New Window', 'wpinked-widgets' )
79
+ )
80
+ ),
81
+
82
+ 'profiles' => array(
83
+ 'type' => 'repeater',
84
+ 'label' => __( 'Profiles' , 'wpinked-widgets' ),
85
+ 'item_name' => __( 'Profile', 'wpinked-widgets' ),
86
+ 'item_label' => array(
87
+ 'selector' => "[id*='repeat_text']",
88
+ 'update_event' => 'change',
89
+ 'value_method' => 'val'
90
+ ),
91
+ 'fields' => array(
92
+
93
+ 'link' => array(
94
+ 'type' => 'link',
95
+ 'label' => __('Link', 'wpinked-widgets'),
96
+ 'default' => ''
97
+ ),
98
+
99
+ 'icon' => array(
100
+ 'type' => 'icon',
101
+ 'label' => __('Icon', 'wpinked-widgets'),
102
+ ),
103
+
104
+ )
105
+ )
106
+
107
+ )
108
+ ),
109
+
110
+ 'styling' => array(
111
+ 'type' => 'section',
112
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
113
+ 'hide' => true,
114
+ 'fields' => array(
115
+
116
+ 'design' => array(
117
+ 'type' => 'select',
118
+ 'label' => __( 'Design', 'wpinked-widgets' ),
119
+ 'default' => 'basic',
120
+ 'options' => array(
121
+ 'basic' => __( 'Basic', 'wpinked-widgets' ),
122
+ 'icons' => __( 'Icons over image', 'wpinked-widgets' ),
123
+ 'about' => __( 'About over image', 'wpinked-widgets' )
124
+ )
125
+ ),
126
+
127
+ 'img-radius' => array(
128
+ 'type' => 'select',
129
+ 'label' => __( 'Image Corners', 'wpinked-widgets' ),
130
+ 'default' => '0',
131
+ 'options' => array(
132
+ '0' => __( 'Sharp', 'wpinked-widgets' ),
133
+ '3%' => __('Slightly curved', 'wpinked-widgets'),
134
+ '12%' => __('Highly curved', 'wpinked-widgets'),
135
+ '50%' => __( 'Circle', 'wpinked-widgets' ),
136
+ )
137
+ ),
138
+
139
+ 'img-hover' => array(
140
+ 'type' => 'color',
141
+ 'label' => __( 'Image Hover Overlay Color', 'wpinked-widgets' ),
142
+ 'default' => ''
143
+ ),
144
+
145
+ 'img-hover-op' => array(
146
+ 'type' => 'slider',
147
+ 'label' => __( 'Image Hover Opacity', 'wpinked-widgets' ),
148
+ 'default' => 0,
149
+ 'min' => 0,
150
+ 'max' => 100,
151
+ 'integer' => true
152
+ ),
153
+
154
+ 'icon' => array(
155
+ 'type' => 'color',
156
+ 'label' => __( 'Icon Color', 'wpinked-widgets' ),
157
+ 'default' => ''
158
+ ),
159
+
160
+ 'icon-hover' => array(
161
+ 'type' => 'color',
162
+ 'label' => __( 'Icon Hover Color', 'wpinked-widgets' ),
163
+ 'default' => ''
164
+ ),
165
+
166
+ 'content' => array(
167
+ 'type' => 'color',
168
+ 'label' => __( 'Content Background Color', 'wpinked-widgets' ),
169
+ 'default' => ''
170
+ ),
171
+
172
+ 'name' => array(
173
+ 'type' => 'color',
174
+ 'label' => __( 'Name Color', 'wpinked-widgets' ),
175
+ 'default' => ''
176
+ ),
177
+
178
+ 'designation' => array(
179
+ 'type' => 'color',
180
+ 'label' => __( 'Designation Color', 'wpinked-widgets' ),
181
+ 'default' => ''
182
+ ),
183
+
184
+ 'about' => array(
185
+ 'type' => 'color',
186
+ 'label' => __( 'About Color', 'wpinked-widgets' ),
187
+ 'default' => ''
188
+ ),
189
+
190
+ 'align' => array(
191
+ 'type' => 'select',
192
+ 'label' => __('Text Alignment', 'wpinked-widgets'),
193
+ 'default' => 'iw-text-center',
194
+ 'options' => array(
195
+ 'iw-text-left' => __('Left', 'wpinked-widgets'),
196
+ 'iw-text-center' => __('Center', 'wpinked-widgets'),
197
+ 'iw-text-right' => __('Right', 'wpinked-widgets'),
198
+ ),
199
+ ),
200
+
201
+ )
202
+ ),
203
+ ),
204
+
205
+ //The $base_folder path string.
206
+ plugin_dir_path(__FILE__)
207
+ );
208
+ }
209
+
210
+ function get_template_name($instance) {
211
+ return 'person';
212
+ }
213
+
214
+ function get_style_name($instance) {
215
+ return 'person';
216
+ }
217
+
218
+ function enqueue_frontend_scripts( $instance ) {
219
+
220
+ wp_enqueue_style( 'iw-person', siteorigin_widget_get_plugin_dir_url('ink-person') . 'styles/person.css', array(), INKED_SO_WIDGETS );
221
+
222
+ parent::enqueue_frontend_scripts( $instance );
223
+ }
224
+
225
+ function get_less_variables($instance) {
226
+ if( empty( $instance ) ) return array();
227
+
228
+ return array(
229
+ 'img-r' => $instance['styling']['img-radius'],
230
+ 'img-h' => $instance['styling']['img-hover'],
231
+ 'img-h-o' => $instance['styling']['img-hover-op'],
232
+ 'icon-h' => $instance['styling']['icon-hover'],
233
+ 'icon' => $instance['styling']['icon'],
234
+ 'content' => $instance['styling']['content'],
235
+ 'name' => $instance['styling']['name'],
236
+ 'designation' => $instance['styling']['designation'],
237
+ 'about' => $instance['styling']['about'],
238
+ );
239
+ }
240
+
241
+ }
242
+
243
+ siteorigin_widget_register('ink-person', __FILE__, 'Inked_Person_SO_Widget');
widgets/ink-prsn-widget/styles/person.css ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .iw-so-person-profiles [class^="sow-icon-"] {
2
+ font-size: 2em;
3
+ }
4
+
5
+ .iw-so-person-img {
6
+ position: relative;
7
+ margin-bottom: 1em;
8
+ }
9
+
10
+ .iw-so-person-img img {
11
+ vertical-align: top;
12
+ width: 100%;
13
+ }
14
+
15
+ .iw-so-person-ol {
16
+ border-radius: inherit;
17
+ opacity: 0;
18
+ position: absolute;
19
+ top: 0;
20
+ width: 100%;
21
+ height: 100%;
22
+ box-sizing: border-box;
23
+ }
24
+ .iw-so-person-ol p {
25
+ position: absolute;
26
+ top: 50%;
27
+ -webkit-transform: translateY(-50%);
28
+ -moz-transform: translateY(-50%);
29
+ -ms-transform: translateY(-50%);
30
+ -o-transform: translateY(-50%);
31
+ transform: translateY(-50%);
32
+ width: 100%;
33
+ padding: 0 15px;
34
+ opacity: 0;
35
+ margin: 0 !important;
36
+ box-sizing: border-box;
37
+ }
38
+
39
+ .iw-so-person-img .iw-so-person-ol:hover,
40
+ .iw-so-person-img .iw-so-person-ol:focus,
41
+ .iw-so-person-img .iw-so-person-ol:hover p,
42
+ .iw-so-person-img .iw-so-person-ol:focus p {
43
+ opacity: 1;
44
+ }
widgets/ink-prsn-widget/styles/person.less ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+
3
+ @img-r: 0;
4
+ @img-h: #fff;
5
+ @img-h-o: 0;
6
+ @icon-h: #333;
7
+ @icon: #ccc;
8
+ @content: transparent;
9
+ @name: #666;
10
+ @designation: #aaa;
11
+ @about: #333;
12
+
13
+ .iw-so-person-img img {
14
+ border-radius: @img-r;
15
+ }
16
+
17
+ .iw-so-person-ol {
18
+ background: fade(@img-h, @img-h-o);
19
+ border-radius: @img-r;
20
+ .transition(opacity, .3s, linear);
21
+ p {
22
+ .transition(opacity, .3s, linear);
23
+ }
24
+ }
25
+
26
+ .iw-so-person-profiles{
27
+ [class^="sow-icon-"] {
28
+ color: @icon;
29
+ &:hover,
30
+ &:focus {
31
+ color: @icon-h;
32
+ }
33
+ }
34
+ }
35
+
36
+ .iw-so-person-content {
37
+ background: @content;
38
+ }
39
+
40
+ .iw-so-person-name {
41
+ font-size: 1.25em;
42
+ font-weight: bold;
43
+ margin-bottom: 0;
44
+ }
45
+
46
+ .iw-so-person-desig {
47
+ font-size: 1.1em;
48
+ font-weight: lighter;
49
+ font-style: italic;
50
+ margin-top: 0.3em;
51
+ letter-spacing: 2px;
52
+ }
widgets/ink-prsn-widget/tpl/person.php ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="iw-row iw-so-person">
2
+
3
+ <div class="iw-cols iw-small-12 iw-so-person-img">
4
+
5
+ <div class="iw-row">
6
+
7
+ <?php echo wp_get_attachment_image( $instance['person']['image'], 'full' ); ?>
8
+
9
+ <div class="iw-so-person-ol">
10
+
11
+ <?php if( $instance['styling']['design'] == 'about' ) : ?>
12
+
13
+ <p class="iw-so-person-about <?php echo $instance['styling']['align'];?>"><?php echo $instance['person']['about']; ?></p>
14
+
15
+ <?php endif; ?>
16
+
17
+ <?php if( $instance['styling']['design'] == 'icons' ) : ?>
18
+
19
+ <?php wpinked_so_person_social( $instance['social']['profiles'], $instance['styling']['align'], $instance['social']['target'] ); ?>
20
+
21
+ <?php endif; ?>
22
+
23
+ </div>
24
+ </div>
25
+
26
+ </div>
27
+
28
+ <div class="iw-cols iw-small-12 iw-so-person-content">
29
+
30
+ <h4 class="iw-so-person-name <?php echo $instance['styling']['align'];?>"><?php echo $instance['name']; ?></h4>
31
+
32
+ <p class="iw-so-person-desig <?php echo $instance['styling']['align'];?>"><?php echo $instance['person']['designation']; ?></p>
33
+
34
+ <?php if( $instance['styling']['design'] != 'about' ) : ?>
35
+
36
+ <p class="iw-so-person-about <?php echo $instance['styling']['align'];?>"><?php echo $instance['person']['about']; ?></p>
37
+
38
+ <?php endif; ?>
39
+
40
+ <?php if( $instance['styling']['design'] != 'icons' ) : ?>
41
+
42
+ <?php wpinked_so_person_social( $instance['social']['profiles'], $instance['styling']['align'] ); ?>
43
+
44
+ <?php endif; ?>
45
+
46
+ </div>
47
+
48
+ </div>
widgets/ink-ptfl-widget/assets/banner.svg ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Portfolio" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(29.000000, 30.000000)" stroke="#F7EBE8" sketch:type="MSShapeGroup">
11
+ <rect id="Rectangle-17" stroke-width="4" x="0" y="0" width="182" height="181"></rect>
12
+ <path d="M5,6 L175,6" id="Line" stroke-width="10" stroke-linecap="square"></path>
13
+ <path d="M4,38 L179,38" id="Line-Copy-4" stroke-width="4" stroke-linecap="square"></path>
14
+ <path d="M4,66 L178,66" id="Line-Copy-5" stroke-width="4" stroke-linecap="square"></path>
15
+ <path d="M4,96 L178,96" id="Line-Copy-9" stroke-width="4" stroke-linecap="square"></path>
16
+ <path d="M5,124 L179,124" id="Line-Copy-10" stroke-width="4" stroke-linecap="square"></path>
17
+ <path d="M5,152 L179,152" id="Line-Copy-11" stroke-width="4" stroke-linecap="square"></path>
18
+ <path d="M62,7.5 L62,179.5" id="Line-Copy-12" stroke-width="4" stroke-linecap="square"></path>
19
+ <path d="M124,7.5 L124,179.5" id="Line-Copy-13" stroke-width="4" stroke-linecap="square"></path>
20
+ </g>
21
+ </g>
22
+ </g>
23
+ </svg>
widgets/ink-ptfl-widget/ink-ptfl-widget.php ADDED
@@ -0,0 +1,223 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Portfolio
5
+ Description: Show off your work.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Folio_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-folio',
17
+
18
+ __('Inked Portfolio', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Show off your work.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/portfolio-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+ 'title' => array(
30
+ 'type' => 'text',
31
+ 'label' => __('Title', 'wpinked-widgets'),
32
+ 'default' => ''
33
+ ),
34
+
35
+ 'portfolio' => array(
36
+ 'type' => 'posts',
37
+ 'label' => __('Select Projects', 'wpinked-widgets'),
38
+ 'description' => __('Make sure that <b>Custom Post Types</b> module in active in Jetpack. Choose <b>Projects</b> under post type', 'wpinked-widgets'),
39
+ ),
40
+
41
+ 'design' => array(
42
+ 'type' => 'section',
43
+ 'label' => __( 'Design' , 'wpinked-widgets' ),
44
+ 'hide' => true,
45
+ 'fields' => array(
46
+
47
+ 'sorting' => array(
48
+ 'type' => 'checkbox',
49
+ 'label' => __( 'Enable Sorting ?', 'wpinked-widgets' ),
50
+ 'default' => true
51
+ ),
52
+
53
+ 'icon' => array(
54
+ 'type' => 'icon',
55
+ 'label' => __('Icon', 'wpinked-widgets'),
56
+ 'description' => __( 'This will appear above the image, on hover.', 'wpinked-widgets' ),
57
+ ),
58
+
59
+ 'columns' => array(
60
+ 'type' => 'select',
61
+ 'label' => __( 'Number of Columns', 'wpinked-widgets' ),
62
+ 'default' => '25%',
63
+ 'options' => array(
64
+ '100%' => __( '1', 'wpinked-widgets' ),
65
+ '50%' => __( '2', 'wpinked-widgets' ),
66
+ '33.33%' => __( '3', 'wpinked-widgets' ),
67
+ '25%' => __( '4', 'wpinked-widgets' ),
68
+ '20%' => __( '5', 'wpinked-widgets' ),
69
+ '16.66%' => __( '6', 'wpinked-widgets' ),
70
+ ),
71
+ 'state_emitter' => array(
72
+ 'callback' => 'select',
73
+ 'args' => array( 'columns' )
74
+ ),
75
+ 'description' => __('The widget is responsive, so the columns will adjust based on screen size.', 'wpinked-widgets'),
76
+ ),
77
+ )
78
+ ),
79
+
80
+ 'styling' => array(
81
+ 'type' => 'section',
82
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
83
+ 'hide' => true,
84
+ 'fields' => array(
85
+
86
+ 'type-theme' => array(
87
+ 'type' => 'select',
88
+ 'label' => __( 'Filter List Theme', 'wpinked-widgets' ),
89
+ 'default' => 'minimal',
90
+ 'options' => array(
91
+ 'minimal' => __( 'Minimal', 'wpinked-widgets' ),
92
+ 'outline' => __( 'Outline', 'wpinked-widgets' ),
93
+ 'flat' => __( 'Flat', 'wpinked-widgets' )
94
+ )
95
+ ),
96
+
97
+ 'type-color' => array(
98
+ 'type' => 'color',
99
+ 'label' => __( 'Filter List Color', 'wpinked-widgets' ),
100
+ 'default' => '',
101
+ 'description' => __( 'Typically used as text color.', 'wpinked-widgets' ),
102
+ ),
103
+
104
+ 'type-h-color' => array(
105
+ 'type' => 'color',
106
+ 'label' => __( 'Filter List Highlight Color', 'wpinked-widgets' ),
107
+ 'default' => '',
108
+ 'description' => __( 'Typically used as button background.', 'wpinked-widgets' ),
109
+ ),
110
+
111
+ 'type-pos' => array(
112
+ 'type' => 'select',
113
+ 'label' => __( 'Filter List Position', 'wpinked-widgets' ),
114
+ 'default' => 'center',
115
+ 'options' => array(
116
+ 'left' => __( 'Left', 'wpinked-widgets' ),
117
+ 'center' => __( 'Center', 'wpinked-widgets' ),
118
+ 'right' => __( 'Right', 'wpinked-widgets' )
119
+ )
120
+ ),
121
+
122
+ 'align' => array(
123
+ 'type' => 'select',
124
+ 'label' => __( 'Text Alignment', 'wpinked-widgets' ),
125
+ 'default' => 'center',
126
+ 'options' => array(
127
+ 'left' => __( 'Left', 'wpinked-widgets' ),
128
+ 'center' => __( 'Center', 'wpinked-widgets' ),
129
+ 'right' => __( 'Right', 'wpinked-widgets' )
130
+ )
131
+ ),
132
+
133
+ 'spacing' => array(
134
+ 'type' => 'checkbox',
135
+ 'label' => __( 'Remove Spacing between projects ?', 'wpinked-widgets' ),
136
+ 'default' => false
137
+ ),
138
+
139
+ 'background' => array(
140
+ 'type' => 'color',
141
+ 'label' => __( 'Background Color', 'wpinked-widgets' ),
142
+ 'default' => ''
143
+ ),
144
+
145
+ 'img-hover' => array(
146
+ 'type' => 'color',
147
+ 'label' => __( 'Image Hover Color', 'wpinked-widgets' ),
148
+ 'default' => ''
149
+ ),
150
+
151
+ 'img-opacity' => array(
152
+ 'type' => 'number',
153
+ 'label' => __( 'Image Hover Opacity', 'wpinked-widgets' ),
154
+ 'default' => '0.5',
155
+ 'description' => __( 'Choose a value between 0 and 1. 0: transparent 1: opaque', 'wpinked-widgets' ),
156
+ ),
157
+
158
+ 'icon' => array(
159
+ 'type' => 'color',
160
+ 'label' => __( 'Icon Color', 'wpinked-widgets' ),
161
+ 'default' => ''
162
+ ),
163
+
164
+ 'p-title' => array(
165
+ 'type' => 'color',
166
+ 'label' => __( 'Project Name Color', 'wpinked-widgets' ),
167
+ 'default' => ''
168
+ ),
169
+
170
+ 'p-cats' => array(
171
+ 'type' => 'color',
172
+ 'label' => __( 'Project Types Color', 'wpinked-widgets' ),
173
+ 'default' => ''
174
+ ),
175
+ )
176
+ ),
177
+ ),
178
+
179
+ //The $base_folder path string.
180
+ plugin_dir_path(__FILE__)
181
+ );
182
+ }
183
+
184
+ function get_template_name($instance) {
185
+ return 'folio';
186
+ }
187
+
188
+ function get_style_name($instance) {
189
+ return 'folio';
190
+ }
191
+
192
+ function enqueue_frontend_scripts( $instance ) {
193
+
194
+ wp_enqueue_script( 'iw-folio-js', siteorigin_widget_get_plugin_dir_url('ink-folio') . 'scripts/folio.js', array( 'iw-mixitup-js' ), INKED_SO_WIDGETS );
195
+
196
+ wp_enqueue_script( 'ink-folio-init', siteorigin_widget_get_plugin_dir_url('ink-folio') . 'scripts/equalizer.init.js', array( 'iw-equalizer-js' ), INKED_SO_WIDGETS, true );
197
+
198
+ wp_enqueue_style( 'iw-folio', siteorigin_widget_get_plugin_dir_url('ink-folio') . 'styles/folio.css', array(), INKED_SO_WIDGETS );
199
+
200
+ parent::enqueue_frontend_scripts( $instance );
201
+ }
202
+
203
+ function get_less_variables($instance) {
204
+ if( empty( $instance ) ) return array();
205
+
206
+ return array(
207
+ 'columns' => $instance['design']['columns'],
208
+ 'img-hover' => $instance['styling']['img-hover'],
209
+ 'background' => $instance['styling']['background'],
210
+ 'img-op' => $instance['styling']['img-opacity'],
211
+ 'p-title' => $instance['styling']['p-title'],
212
+ 'p-cats' => $instance['styling']['p-cats'],
213
+ 'type-th' => $instance['styling']['type-theme'],
214
+ 'type-clr' => $instance['styling']['type-color'],
215
+ 'type-hl' => $instance['styling']['type-h-color'],
216
+ 'type-pos' => $instance['styling']['type-pos'],
217
+ 'spacing' => $instance['styling']['spacing'],
218
+ );
219
+ }
220
+
221
+ }
222
+
223
+ siteorigin_widget_register('ink-folio', __FILE__, 'Inked_Folio_SO_Widget');
widgets/ink-ptfl-widget/scripts/equalizer.init.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ jQuery(document).foundation({
2
+ equalizer : {
3
+ equalize_on_stack: true,
4
+ }
5
+ });
widgets/ink-ptfl-widget/scripts/folio.js ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ ( function($) {
2
+
3
+ $(document).ready( function() {
4
+
5
+ $('#folio-grid').mixItUp();
6
+
7
+ });
8
+
9
+ })( jQuery );
widgets/ink-ptfl-widget/styles/folio.css ADDED
@@ -0,0 +1,86 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #folio-grid .mix{
2
+ display: none;
3
+ }
4
+
5
+ .iw-so-folio-terms {
6
+ list-style: none;
7
+ overflow: hidden;
8
+ padding: 0;
9
+ display: table;
10
+ }
11
+
12
+ .iw-so-folio-terms > li {
13
+ display: block;
14
+ float: left;
15
+ list-style: none;
16
+ margin-left: 0 !important;
17
+ margin-bottom: 0 !important;
18
+ }
19
+
20
+ .iw-so-folio-terms > li > a {
21
+ cursor: pointer;
22
+ font-size: 1em;
23
+ padding: .5em 1em;
24
+ }
25
+
26
+ .iw-so-folio-terms > li > * {
27
+ display: block;
28
+ }
29
+
30
+ .iw-so-folio-grid article {
31
+ margin: 0.25em 0.5em;
32
+ }
33
+
34
+ .iw-so-project-image {
35
+ overflow: hidden;
36
+ }
37
+
38
+ .iw-so-project-image a {
39
+ display: block;
40
+ position: relative;
41
+
42
+ -webkit-transition: .3s all linear;
43
+ -moz-transition: .3s all linear;
44
+ -ms-transition: .3s all linear;
45
+ -o-transition: .3s all linear;
46
+ transition: .3s all linear;
47
+ }
48
+
49
+ .iw-so-project-image a [class^="sow-icon-"] {
50
+ position: absolute;
51
+ top: 50%;
52
+ left: 50%;
53
+ transform: translate(-50%, -50%);
54
+ display: none;
55
+ -webkit-transition: .2s all linear;
56
+ -moz-transition: .2s all linear;
57
+ -ms-transition: .2s all linear;
58
+ -o-transition: .2s all linear;
59
+ transition: .2s all linear;
60
+ }
61
+ .iw-so-project-image a:hover [class^="sow-icon-"] {
62
+ display: block;
63
+ }
64
+
65
+ .iw-so-project-image img {
66
+ vertical-align: top;
67
+ -webkit-transform: scale(1);
68
+ -moz-transform: scale(1);
69
+ -ms-transform: scale(1);
70
+ -o-transform: scale(1);
71
+ transform: scale(1);
72
+
73
+ -webkit-transition: .2s all linear;
74
+ -moz-transition: .2s all linear;
75
+ -ms-transition: .2s all linear;
76
+ -o-transition: .2s all linear;
77
+ transition: .2s all linear;
78
+ }
79
+
80
+ .iw-so-project-image:hover img {
81
+ -webkit-transform: scale(1.15);
82
+ -moz-transform: scale(1.15);
83
+ -ms-transform: scale(1.15);
84
+ -o-transform: scale(1.15);
85
+ transform: scale(1.15);
86
+ }
widgets/ink-ptfl-widget/styles/folio.less ADDED
@@ -0,0 +1,134 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+
3
+ @columns: 25%;
4
+ @img-hover: transparent;
5
+ @background: transparent;
6
+ @img-op: 1;
7
+ @p-title: #333;
8
+ @p-cats: #bdc3c7;
9
+ @type-th: 'minimal';
10
+ @type-clr: #95a5a6;
11
+ @type-hl: #2c3e50;
12
+ @type-pos: 'center';
13
+ @spacing: '';
14
+
15
+ .iw-so-folio-terms-container {
16
+ .clearfix();
17
+ }
18
+
19
+ .iw-so-folio-terms {
20
+
21
+ margin: 2em auto;
22
+
23
+ .type-pos() when (@type-pos = left) {
24
+ float: left;
25
+ }
26
+ .type-pos() when (@type-pos = right) {
27
+ float: right;
28
+ }
29
+ .type-pos();
30
+
31
+ li {
32
+
33
+ margin-right: 3px;
34
+
35
+ a {
36
+ color: @type-clr;
37
+
38
+ .type-theme() when (@type-th = minimal) {
39
+ padding-left: 2px;
40
+ }
41
+ .type-theme() when (@type-th = outline) {
42
+ border: 2px solid transparent;
43
+ }
44
+ .type-theme();
45
+
46
+ &:hover,
47
+ &:focus {
48
+ color: @type-hl;
49
+ }
50
+ &.active {
51
+
52
+ .type-hl() when (@type-th = outline) {
53
+ border-color: @type-hl;
54
+ color: @type-hl;
55
+ }
56
+ .type-hl() when (@type-th = minimal) {
57
+ color: @type-hl;
58
+ }
59
+ .type-hl() when (@type-th = flat) {
60
+ background: @type-hl;
61
+ color: @type-clr;
62
+ }
63
+ .type-hl();
64
+ }
65
+
66
+ }
67
+ }
68
+ }
69
+
70
+ @media only screen {
71
+ .iw-so-folio-grid {
72
+ .mix, .no-mix { width: 100%; }
73
+ }
74
+ }
75
+ @media only screen and (min-width: 480px) {
76
+ .iw-so-folio-grid {
77
+ .mix, .no-mix { width: 50%; }
78
+ }
79
+ }
80
+ @media only screen and (min-width: 640px) {
81
+ .iw-so-folio-grid {
82
+ .mix, .no-mix { width: @columns; min-width: 33.33% }
83
+ }
84
+ }
85
+ @media only screen and (min-width: 786px) {
86
+ .iw-so-folio-grid {
87
+ .mix, .no-mix { width: @columns; min-width: 25% }
88
+ }
89
+ }
90
+ @media only screen and (min-width: 1024px) {
91
+ .iw-so-folio-grid {
92
+ .mix, .no-mix { width: @columns; min-width: 20% }
93
+ }
94
+ }
95
+ @media only screen and (min-width: 1280px) {
96
+ .iw-so-folio-grid {
97
+ .mix, .no-mix { width: @columns; min-width: 16.66667% }
98
+ }
99
+ }
100
+
101
+ .iw-so-project-image a {
102
+ background: @img-hover;
103
+ }
104
+
105
+ .iw-so-folio-grid article {
106
+ background: @background;
107
+ .space-collapse() when (@spacing = 1) {
108
+ margin: 0;
109
+ }
110
+ .space-collapse();
111
+ }
112
+
113
+ .iw-so-project-image:hover img {
114
+ opacity: @img-op;
115
+ }
116
+
117
+ .iw-so-project-type {
118
+ padding-bottom: 1em;
119
+ margin-top: 0;
120
+ color: @p-cats;
121
+ .space-para() when (@spacing = 1) {
122
+ margin-bottom: 0;
123
+ }
124
+ .space-para();
125
+ }
126
+
127
+ .iw-so-project-title {
128
+ margin-bottom: .25em;
129
+ }
130
+
131
+ .iw-so-project-title a {
132
+ color: @p-title;
133
+ text-decoration: none;
134
+ }
widgets/ink-ptfl-widget/tpl/folio.php ADDED
@@ -0,0 +1,93 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $ink_post = $instance['design'];
4
+
5
+ if( !empty($instance['title']) ) echo $args['before_title'] . esc_html($instance['title']) . $args['after_title'];
6
+
7
+ $icon_styles = array();
8
+ if(!empty($instance['styling']['icon'])) $icon_styles[] = 'color: '.$instance['styling']['icon'];
9
+ $icon_styles[] = 'font-size: 35px';
10
+
11
+ $project_class = ( $instance['design']['sorting'] ? 'mix' : 'no-mix' );
12
+ ?>
13
+
14
+ <?php if ( $ink_post['sorting'] ): ?>
15
+
16
+ <div class="iw-so-folio-terms-container">
17
+ <ul class="iw-so-folio-terms">
18
+ <?php
19
+ echo '<li><a class="filter" data-filter="all">' . __( 'ALL', 'wpinked-widgets' ) . '</a></li>';
20
+
21
+ $taxonomy = 'jetpack-portfolio-type';
22
+ $tax_terms = get_terms( $taxonomy );
23
+
24
+ foreach ( $tax_terms as $tax_term ) {
25
+ echo '<li><a class="filter" data-filter=".' . $tax_term->slug . '" >' . $tax_term->name .'</a></li>';
26
+ }
27
+ ?>
28
+ </ul>
29
+ </div>
30
+
31
+ <?php endif; ?>
32
+
33
+ <?php
34
+ // Setting up posts query
35
+
36
+ $post_selector_pseudo_query = $instance['portfolio'];
37
+
38
+ $processed_query = siteorigin_widget_post_selector_process_query( $post_selector_pseudo_query );
39
+
40
+ $query_result = new WP_Query( $processed_query );
41
+ ?>
42
+
43
+ <?php
44
+ // Looping through the posts
45
+
46
+ if($query_result->have_posts()) : ?>
47
+
48
+ <div id="folio-grid" class="iw-so-folio-grid iw-row iw-collapse" data-equalizer>
49
+
50
+ <?php while($query_result->have_posts()) : $query_result->the_post(); ?>
51
+
52
+ <?php
53
+ // get Jetpack Portfolio taxonomy terms for portfolio filtering
54
+ $terms = get_the_terms( $post->ID, 'jetpack-portfolio-type' );
55
+
56
+ if ( $terms && ! is_wp_error( $terms ) ) :
57
+
58
+ $filtering_links = array();
59
+
60
+ foreach ( $terms as $term ) {
61
+ $filtering_links[] = $term->slug;
62
+ }
63
+
64
+ $filtering = join( ", ", $filtering_links );
65
+
66
+ $types = join( " ", $filtering_links );
67
+ ?>
68
+
69
+ <div class="<?php echo $project_class; ?> <?php echo $types; ?> iw-cols">
70
+ <article class="iw-so-project-article" data-equalizer-watch>
71
+
72
+ <?php if ( '' != get_the_post_thumbnail() ) : ?>
73
+ <div class="iw-so-project-image">
74
+ <a href="<?php the_permalink(); ?>">
75
+ <?php the_post_thumbnail( 'folio' ); ?>
76
+ <?php echo siteorigin_widget_get_icon( $instance['design']['icon'], $icon_styles ); ?>
77
+ </a>
78
+ </div>
79
+ <?php endif; ?>
80
+ <h3 class="iw-so-project-title iw-text-center"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
81
+ <p class="iw-so-project-type iw-text-center"><?php echo $filtering; ?></p>
82
+
83
+ </article>
84
+ </div>
85
+
86
+ <?php
87
+ endif; ?>
88
+
89
+ <?php endwhile; wp_reset_postdata(); ?>
90
+
91
+ </div>
92
+
93
+ <?php endif; ?>
widgets/ink-tabb-widget/assets/banner.svg ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Tabs" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(35.000000, 54.000000)" stroke="#F7EBE8" stroke-width="4" sketch:type="MSShapeGroup">
11
+ <path d="M48,16.2608696 L170,16.2608696 L170,118 L0,118 L0,17.9565217 L0,1 L48,1 L48,16.2608696 Z" id="Rectangle"></path>
12
+ <path d="M47.5,1 L122.5,1" id="Line" stroke-linecap="square"></path>
13
+ <path d="M123,1 L123,16" id="Line" stroke-linecap="square"></path>
14
+ <path d="M88,3 L88,15" id="Line-Copy-14" stroke-linecap="square"></path>
15
+ </g>
16
+ </g>
17
+ </g>
18
+ </svg>
widgets/ink-tabb-widget/ink-tabb-widget.php ADDED
@@ -0,0 +1,198 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Tabs
5
+ Description: Organize and navigate multiple documents in a single container.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Tabs_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-tabs',
17
+
18
+ __('Inked Tabs', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Organize and navigate multiple documents in a single container.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/tabs-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+ 'admin' => array(
30
+ 'type' => 'text',
31
+ 'label' => __('Admin Label', 'wpinked-widgets'),
32
+ 'default' => ''
33
+ ),
34
+
35
+ 'id' => array(
36
+ 'type' => 'text',
37
+ 'label' => __('ID', 'wpinked-widgets'),
38
+ 'description' => __( 'Should be unique on the page. Must begin with alphabets[A-Za-z]. Should not contain spaces.', 'wpinked-widgets' ),
39
+ 'default' => ''
40
+ ),
41
+
42
+ 'tabs' => array(
43
+ 'type' => 'repeater',
44
+ 'label' => __( 'Tabs' , 'wpinked-widgets' ),
45
+ 'item_name' => __( 'Tab', 'wpinked-widgets' ),
46
+ 'item_label' => array(
47
+ 'selector' => "[id*='title']",
48
+ 'update_event' => 'change',
49
+ 'value_method' => 'val'
50
+ ),
51
+ 'fields' => array(
52
+
53
+ 'title' => array(
54
+ 'type' => 'text',
55
+ 'label' => __('Title', 'wpinked-widgets'),
56
+ 'default' => ''
57
+ ),
58
+
59
+ 'active' => array(
60
+ 'type' => 'checkbox',
61
+ 'label' => __( 'Open by default ?', 'wpinked-widgets' ),
62
+ 'default' => false,
63
+ 'description' => __( 'Check this for only one of the tabs.', 'wpinked-widgets' ),
64
+ ),
65
+
66
+ 'icon' => array(
67
+ 'type' => 'icon',
68
+ 'label' => __('Icon', 'wpinked-widgets'),
69
+ ),
70
+
71
+ 'content' => array(
72
+ 'type' => 'tinymce',
73
+ 'label' => __( 'Content', 'wpinked-widgets' ),
74
+ 'default' => '',
75
+ 'rows' => 10,
76
+ 'default_editor' => 'tinymce',
77
+ 'button_filters' => array(
78
+ 'mce_buttons' => array( $this, 'filter_mce_buttons' ),
79
+ 'mce_buttons_2' => array( $this, 'filter_mce_buttons_2' ),
80
+ 'mce_buttons_3' => array( $this, 'filter_mce_buttons_3' ),
81
+ 'mce_buttons_4' => array( $this, 'filter_mce_buttons_5' ),
82
+ 'quicktags_settings' => array( $this, 'filter_quicktags_settings' ),
83
+ ),
84
+ )
85
+
86
+ )
87
+ ),
88
+
89
+ 'styling' => array(
90
+ 'type' => 'section',
91
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
92
+ 'hide' => true,
93
+ 'fields' => array(
94
+
95
+ 'orientation' => array(
96
+ 'type' => 'select',
97
+ 'label' => __( 'Oritentation', 'wpinked-widgets' ),
98
+ 'default' => 'horizontal',
99
+ 'options' => array(
100
+ 'horizontal' => __( 'Horizontal', 'wpinked-widgets' ),
101
+ 'vertical' => __( 'Vertical', 'wpinked-widgets' )
102
+ )
103
+ ),
104
+
105
+ 'theme' => array(
106
+ 'type' => 'select',
107
+ 'label' => __( 'Theme', 'wpinked-widgets' ),
108
+ 'default' => 'flat',
109
+ 'options' => array(
110
+ 'boxed' => __( 'Boxed', 'wpinked-widgets' ),
111
+ 'flat' => __( 'Flat', 'wpinked-widgets' ),
112
+ 'underline' => __( 'Underline', 'wpinked-widgets' ),
113
+ 'overline' => __( 'Overline', 'wpinked-widgets' ),
114
+ 'minimal' => __( 'Minimal', 'wpinked-widgets' ),
115
+ )
116
+ ),
117
+
118
+ 'icon' => array(
119
+ 'type' => 'select',
120
+ 'label' => __( 'Icon Location', 'wpinked-widgets' ),
121
+ 'default' => 'flat',
122
+ 'options' => array(
123
+ 'left' => __( 'Left', 'wpinked-widgets' ),
124
+ 'right' => __( 'Right', 'wpinked-widgets' ),
125
+ 'above' => __( 'Above', 'wpinked-widgets' )
126
+ )
127
+ ),
128
+
129
+ 'tab' => array(
130
+ 'type' => 'color',
131
+ 'label' => __( 'Tab Background Color', 'wpinked-widgets' ),
132
+ 'default' => ''
133
+ ),
134
+
135
+ 'content' => array(
136
+ 'type' => 'color',
137
+ 'label' => __( 'Content Background Color', 'wpinked-widgets' ),
138
+ 'default' => ''
139
+ ),
140
+
141
+ 'basic' => array(
142
+ 'type' => 'color',
143
+ 'label' => __( 'Basic Color', 'wpinked-widgets' ),
144
+ 'default' => '',
145
+ 'description' => __( 'Color of the title.', 'wpinked-widgets' ),
146
+ ),
147
+
148
+ 'highlight' => array(
149
+ 'type' => 'color',
150
+ 'label' => __( 'Highlight Color', 'wpinked-widgets' ),
151
+ 'default' => '',
152
+ 'description' => __( 'Color of title when it is active.', 'wpinked-widgets' ),
153
+ ),
154
+
155
+ )
156
+ ),
157
+ ),
158
+
159
+ //The $base_folder path string.
160
+ plugin_dir_path(__FILE__)
161
+ );
162
+ }
163
+
164
+ function get_template_name($instance) {
165
+ return 'tabs';
166
+ }
167
+
168
+ function get_style_name($instance) {
169
+ return 'tabs';
170
+ }
171
+
172
+ function enqueue_frontend_scripts( $instance ) {
173
+
174
+ wp_register_script( 'iw-tabs-js', siteorigin_widget_get_plugin_dir_url('ink-tabs') . 'scripts/tabs.js', array( 'iw-foundation-js' ), INKED_SO_WIDGETS, true );
175
+
176
+ wp_enqueue_script( 'iw-tabs-init', siteorigin_widget_get_plugin_dir_url('ink-tabs') . 'scripts/tabs.init.js', array( 'iw-tabs-js' ), INKED_SO_WIDGETS, true );
177
+
178
+ wp_enqueue_style( 'iw-tabs', siteorigin_widget_get_plugin_dir_url('ink-tabs') . 'styles/tabs.css', array(), INKED_SO_WIDGETS );
179
+
180
+ parent::enqueue_frontend_scripts( $instance );
181
+ }
182
+
183
+ function get_less_variables($instance) {
184
+ if( empty( $instance ) ) return array();
185
+
186
+ return array(
187
+ 'theme' => $instance['styling']['theme'],
188
+ 'bg' => $instance['styling']['tab'],
189
+ 'bg-c' => $instance['styling']['content'],
190
+ 'title' => $instance['styling']['basic'],
191
+ 'highlight' => $instance['styling']['highlight'],
192
+ 'icon' => $instance['styling']['icon'],
193
+ );
194
+ }
195
+
196
+ }
197
+
198
+ siteorigin_widget_register('ink-tabs', __FILE__, 'Inked_Tabs_SO_Widget');
widgets/ink-tabb-widget/scripts/tabs.init.js ADDED
@@ -0,0 +1 @@
 
1
+ jQuery(document).foundation();
widgets/ink-tabb-widget/scripts/tabs.js ADDED
@@ -0,0 +1,249 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ;(function ($, window, document, undefined) {
2
+ 'use strict';
3
+
4
+ Foundation.libs.tab = {
5
+ name : 'tab',
6
+
7
+ version : '5.5.2',
8
+
9
+ settings : {
10
+ active_class : 'active',
11
+ callback : function () {},
12
+ deep_linking : false,
13
+ scroll_to_content : true,
14
+ is_hover : false
15
+ },
16
+
17
+ default_tab_hashes : [],
18
+
19
+ init : function (scope, method, options) {
20
+ var self = this,
21
+ S = this.S;
22
+
23
+ // Store the default active tabs which will be referenced when the
24
+ // location hash is absent, as in the case of navigating the tabs and
25
+ // returning to the first viewing via the browser Back button.
26
+ S('[' + this.attr_name() + '] > .active > a', this.scope).each(function () {
27
+ self.default_tab_hashes.push(this.hash);
28
+ });
29
+
30
+ // store the initial href, which is used to allow correct behaviour of the
31
+ // browser back button when deep linking is turned on.
32
+ self.entry_location = window.location.href;
33
+
34
+ this.bindings(method, options);
35
+ this.handle_location_hash_change();
36
+ },
37
+
38
+ events : function () {
39
+ var self = this,
40
+ S = this.S;
41
+
42
+ var usual_tab_behavior = function (e, target) {
43
+ var settings = S(target).closest('[' + self.attr_name() + ']').data(self.attr_name(true) + '-init');
44
+ if (!settings.is_hover || Modernizr.touch) {
45
+ e.preventDefault();
46
+ e.stopPropagation();
47
+ self.toggle_active_tab(S(target).parent());
48
+ }
49
+ };
50
+
51
+ S(this.scope)
52
+ .off('.tab')
53
+ // Key event: focus/tab key
54
+ .on('keydown.fndtn.tab', '[' + this.attr_name() + '] > * > a', function(e) {
55
+ var el = this;
56
+ var keyCode = e.keyCode || e.which;
57
+ // if user pressed tab key
58
+ if (keyCode == 9) {
59
+ e.preventDefault();
60
+ // TODO: Change usual_tab_behavior into accessibility function?
61
+ usual_tab_behavior(e, el);
62
+ }
63
+ })
64
+ // Click event: tab title
65
+ .on('click.fndtn.tab', '[' + this.attr_name() + '] > * > a', function(e) {
66
+ var el = this;
67
+ usual_tab_behavior(e, el);
68
+ })
69
+ // Hover event: tab title
70
+ .on('mouseenter.fndtn.tab', '[' + this.attr_name() + '] > * > a', function (e) {
71
+ var settings = S(this).closest('[' + self.attr_name() + ']').data(self.attr_name(true) + '-init');
72
+ if (settings.is_hover) {
73
+ self.toggle_active_tab(S(this).parent());
74
+ }
75
+ });
76
+
77
+ // Location hash change event
78
+ S(window).on('hashchange.fndtn.tab', function (e) {
79
+ e.preventDefault();
80
+ self.handle_location_hash_change();
81
+ });
82
+ },
83
+
84
+ handle_location_hash_change : function () {
85
+
86
+ var self = this,
87
+ S = this.S;
88
+
89
+ S('[' + this.attr_name() + ']', this.scope).each(function () {
90
+ var settings = S(this).data(self.attr_name(true) + '-init');
91
+ if (settings.deep_linking) {
92
+ // Match the location hash to a label
93
+ var hash;
94
+ if (settings.scroll_to_content) {
95
+ hash = self.scope.location.hash;
96
+ } else {
97
+ // prefix the hash to prevent anchor scrolling
98
+ hash = self.scope.location.hash.replace('fndtn-', '');
99
+ }
100
+ if (hash != '') {
101
+ // Check whether the location hash references a tab content div or
102
+ // another element on the page (inside or outside the tab content div)
103
+ var hash_element = S(hash);
104
+ if (hash_element.hasClass('content') && hash_element.parent().hasClass('tabs-content')) {
105
+ // Tab content div
106
+ self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=' + hash + ']').parent());
107
+ } else {
108
+ // Not the tab content div. If inside the tab content, find the
109
+ // containing tab and toggle it as active.
110
+ var hash_tab_container_id = hash_element.closest('.content').attr('id');
111
+ if (hash_tab_container_id != undefined) {
112
+ self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=#' + hash_tab_container_id + ']').parent(), hash);
113
+ }
114
+ }
115
+ } else {
116
+ // Reference the default tab hashes which were initialized in the init function
117
+ for (var ind = 0; ind < self.default_tab_hashes.length; ind++) {
118
+ self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=' + self.default_tab_hashes[ind] + ']').parent());
119
+ }
120
+ }
121
+ }
122
+ });
123
+ },
124
+
125
+ toggle_active_tab : function (tab, location_hash) {
126
+ var self = this,
127
+ S = self.S,
128
+ tabs = tab.closest('[' + this.attr_name() + ']'),
129
+ tab_link = tab.find('a'),
130
+ anchor = tab.children('a').first(),
131
+ target_hash = '#' + anchor.attr('href').split('#')[1],
132
+ target = S(target_hash),
133
+ siblings = tab.siblings(),
134
+ settings = tabs.data(this.attr_name(true) + '-init'),
135
+ interpret_keyup_action = function (e) {
136
+ // Light modification of Heydon Pickering's Practical ARIA Examples: http://heydonworks.com/practical_aria_examples/js/a11y.js
137
+
138
+ // define current, previous and next (possible) tabs
139
+
140
+ var $original = $(this);
141
+ var $prev = $(this).parents('li').prev().children('[role="tab"]');
142
+ var $next = $(this).parents('li').next().children('[role="tab"]');
143
+ var $target;
144
+
145
+ // find the direction (prev or next)
146
+
147
+ switch (e.keyCode) {
148
+ case 37:
149
+ $target = $prev;
150
+ break;
151
+ case 39:
152
+ $target = $next;
153
+ break;
154
+ default:
155
+ $target = false
156
+ break;
157
+ }
158
+
159
+ if ($target.length) {
160
+ $original.attr({
161
+ 'tabindex' : '-1',
162
+ 'aria-selected' : null
163
+ });
164
+ $target.attr({
165
+ 'tabindex' : '0',
166
+ 'aria-selected' : true
167
+ }).focus();
168
+ }
169
+
170
+ // Hide panels
171
+
172
+ $('[role="tabpanel"]')
173
+ .attr('aria-hidden', 'true');
174
+
175
+ // Show panel which corresponds to target
176
+
177
+ $('#' + $(document.activeElement).attr('href').substring(1))
178
+ .attr('aria-hidden', null);
179
+
180
+ },
181
+ go_to_hash = function(hash) {
182
+ // This function allows correct behaviour of the browser's back button when deep linking is enabled. Without it
183
+ // the user would get continually redirected to the default hash.
184
+ var is_entry_location = window.location.href === self.entry_location,
185
+ default_hash = settings.scroll_to_content ? self.default_tab_hashes[0] : is_entry_location ? window.location.hash :'fndtn-' + self.default_tab_hashes[0].replace('#', '')
186
+
187
+ if (!(is_entry_location && hash === default_hash)) {
188
+ window.location.hash = hash;
189
+ }
190
+ };
191
+
192
+ // allow usage of data-tab-content attribute instead of href
193
+ if (anchor.data('tab-content')) {
194
+ target_hash = '#' + anchor.data('tab-content').split('#')[1];
195
+ target = S(target_hash);
196
+ }
197
+
198
+ if (settings.deep_linking) {
199
+
200
+ if (settings.scroll_to_content) {
201
+
202
+ // retain current hash to scroll to content
203
+ go_to_hash(location_hash || target_hash);
204
+
205
+ if (location_hash == undefined || location_hash == target_hash) {
206
+ tab.parent()[0].scrollIntoView();
207
+ } else {
208
+ S(target_hash)[0].scrollIntoView();
209
+ }
210
+ } else {
211
+ // prefix the hashes so that the browser doesn't scroll down
212
+ if (location_hash != undefined) {
213
+ go_to_hash('fndtn-' + location_hash.replace('#', ''));
214
+ } else {
215
+ go_to_hash('fndtn-' + target_hash.replace('#', ''));
216
+ }
217
+ }
218
+ }
219
+
220
+ // WARNING: The activation and deactivation of the tab content must
221
+ // occur after the deep linking in order to properly refresh the browser
222
+ // window (notably in Chrome).
223
+ // Clean up multiple attr instances to done once
224
+ tab.addClass(settings.active_class).triggerHandler('opened');
225
+ tab_link.attr({'aria-selected' : 'true', tabindex : 0});
226
+ siblings.removeClass(settings.active_class)
227
+ siblings.find('a').attr({'aria-selected' : 'false', tabindex : -1});
228
+ target.siblings().removeClass(settings.active_class).attr({'aria-hidden' : 'true', tabindex : -1});
229
+ target.addClass(settings.active_class).attr('aria-hidden', 'false').removeAttr('tabindex');
230
+ settings.callback(tab);
231
+ target.triggerHandler('toggled', [target]);
232
+ tabs.triggerHandler('toggled', [tab]);
233
+
234
+ tab_link.off('keydown').on('keydown', interpret_keyup_action );
235
+ },
236
+
237
+ data_attr : function (str) {
238
+ if (this.namespace.length > 0) {
239
+ return this.namespace + '-' + str;
240
+ }
241
+
242
+ return str;
243
+ },
244
+
245
+ off : function () {},
246
+
247
+ reflow : function () {}
248
+ };
249
+ }(jQuery, window, window.document));
widgets/ink-tabb-widget/styles/tabs.css ADDED
@@ -0,0 +1,100 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .tabs {
2
+ margin-bottom: 0 !important;
3
+ margin-left: 0;
4
+ }
5
+
6
+ .tabs:before, .tabs:after {
7
+ content: " ";
8
+ display: table;
9
+ }
10
+
11
+ .tabs:after {
12
+ clear: both;
13
+ }
14
+
15
+ .tabs .tab-title {
16
+ float: left;
17
+ list-style: none;
18
+ margin-left: 0 !important;
19
+ margin-bottom: 0 !important;
20
+ margin-top: 0 !important;
21
+ margin-right: 2px;
22
+ position: relative;
23
+ }
24
+
25
+ .tabs .tab-title > a {
26
+ display: block;
27
+ font-family: inherit;
28
+ font-size: 1em;
29
+ padding: 1em 2em;
30
+ text-decoration: none;
31
+ outline: none;
32
+ text-align: center;
33
+ }
34
+
35
+ .tabs.vertical .tab-title {
36
+ position: inherit;
37
+ float: none;
38
+ display: block;
39
+ top: auto;
40
+ margin-bottom: 2px !important;
41
+ margin-right: 0 !important;
42
+ }
43
+
44
+ .tabs-content {
45
+ width: 100%;
46
+ }
47
+
48
+ .tabs-content:before,
49
+ .tabs-content:after {
50
+ content: " ";
51
+ display: table;
52
+ }
53
+
54
+ .tabs-content:after {
55
+ clear: both;
56
+ }
57
+
58
+ .tabs-content > .content {
59
+ display: none;
60
+ float: left;
61
+ width: 100%;
62
+ }
63
+
64
+ .tabs-content > .content.active {
65
+ display: block;
66
+ float: none;
67
+ }
68
+
69
+ .tabs-content > .content.contained {
70
+ padding: 0.9375rem;
71
+ }
72
+
73
+ .tabs-content.vertical {
74
+ display: block; }
75
+
76
+ @media only screen and (min-width: 720px) {
77
+
78
+ .tabs.vertical {
79
+ float: left;
80
+ margin: 0;
81
+ margin-bottom: 1.25rem !important;
82
+ max-width: 24%;
83
+ width: 24%;
84
+ }
85
+
86
+ .tabs-content.vertical {
87
+ float: right;
88
+ margin-left: -1px;
89
+ max-width: 73%;
90
+ width: 73%;
91
+ }
92
+ .tabs-content.vertical .content {
93
+ padding: 0 3.5%;
94
+ }
95
+ }
96
+
97
+ .no-js .tabs-content > .content {
98
+ display: block;
99
+ float: none;
100
+ }
widgets/ink-tabb-widget/styles/tabs.less ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+
3
+ @theme: classic;
4
+ @bg: #fff;
5
+ @bg-c: transparent;
6
+ @title: #222;
7
+ @highlight: #666;
8
+ @icon: left;
9
+
10
+ .tabs-content {
11
+ background: @bg-c;
12
+ }
13
+
14
+ .tabs .tab-title {
15
+
16
+ margin-right: 3px;
17
+
18
+ a {
19
+ color: @title;
20
+
21
+ .tab-theme() when (@theme = boxed) {
22
+ background: @bg;
23
+ border: 2px solid @bg;
24
+ }
25
+ .tab-theme() when (@theme = flat) {
26
+ background: @bg;
27
+ }
28
+ .tab-theme() when (@theme = underline) {
29
+ background: @bg;
30
+ }
31
+ .tab-theme() when (@theme = overline) {
32
+ background: @bg;
33
+ }
34
+ .tab-theme() when (@theme = minimal) {
35
+ background: transparent;
36
+ padding-left: 2px;
37
+ }
38
+ .tab-theme();
39
+
40
+ [class^="sow-icon-"] {
41
+ font-size: 1.5em;
42
+ height: 1em;
43
+ width: 1em;
44
+ .icon-loc() when (@icon = left) { float: left; margin: -0.1em 0.75em -0.2em 0em; }
45
+ .icon-loc() when (@icon = right) { float: right; margin: -0.1em 0em -0.2em 0.75em; }
46
+ .icon-loc() when (@icon = above) { margin: -0.1em auto 0.5em auto; }
47
+ .icon-loc();
48
+ display: block;
49
+ color: inherit;
50
+ }
51
+
52
+ &:hover,
53
+ &:focus {
54
+ color: @highlight;
55
+ }
56
+
57
+ }
58
+
59
+ &.active a {
60
+ .tab-active() when (@theme = boxed) {
61
+ background: @bg;
62
+ border-color: @highlight;
63
+ color: @highlight;
64
+ }
65
+ .tab-active() when (@theme = flat) {
66
+ background: @highlight;
67
+ color: @bg;
68
+ }
69
+ .tab-active() when (@theme = underline) {
70
+ color: @highlight;
71
+ .box-shadow( inset 0 -3px 0 @highlight);
72
+ }
73
+ .tab-active() when (@theme = overline) {
74
+ color: @highlight;
75
+ .box-shadow( inset 0 3px 0 @highlight);
76
+ }
77
+ .tab-active() when (@theme = minimal) {
78
+ color: @highlight;
79
+ }
80
+ .tab-active();
81
+ }
82
+ }
83
+
widgets/ink-tabb-widget/tpl/tabs.php ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if( !empty($instance['title']) ) echo $args['before_title'] . esc_html($instance['title']) . $args['after_title'];
3
+
4
+ $icon_styles = array();
5
+ if(!empty($instance['icon']['color'])) $icon_styles[] = 'color: '.$instance['icon']['color'];
6
+
7
+ $tab_no = 1;
8
+ $cnt_no = 1;
9
+ ?>
10
+
11
+ <ul class="tabs<?php echo ($instance['styling']['orientation'] == 'vertical' ? ' vertical' : ''); ?>" data-tab>
12
+
13
+ <?php foreach( $instance['tabs'] as $i => $tab ) { ?>
14
+ <li class="tab-title<?php echo ($tab['active'] == 1 ? ' active' : '' ); ?>"><a href="#<?php echo $instance['id'] . '-' . $tab_no; ?>" href="#">
15
+ <?php echo siteorigin_widget_get_icon( $tab['icon'], $icon_styles ); ?>
16
+ <?php echo $tab['title']; ?>
17
+ </a></li>
18
+ <?php $tab_no++; ?>
19
+ <?php } ?>
20
+
21
+ </ul>
22
+ <div class="tabs-content<?php echo ($instance['styling']['orientation'] == 'vertical' ? ' vertical' : ''); ?>">
23
+
24
+ <?php foreach( $instance['tabs'] as $i => $tab ) : ?>
25
+ <div class="content<?php echo ($tab['active'] == 1 ? ' active' : '' ); ?>" id="<?php echo $instance['id'] . '-' . $cnt_no; ?>">
26
+ <?php echo $tab['content']; ?>
27
+ </div>
28
+ <?php $cnt_no++; ?>
29
+ <?php endforeach; ?>
30
+
31
+ </div>
widgets/ink-tsml-widget/assets/banner.svg ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Testimonial" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(29.666667, 21.000000)" stroke="#F7EBE8" stroke-width="4" sketch:type="MSShapeGroup">
11
+ <path d="M90.3333333,156.632328 C100.079535,156.632328 107.980392,139.45619 107.980392,123.886787 C107.980392,108.317384 100.079535,106 90.3333333,106 C80.5871319,106 72.6862745,108.317384 72.6862745,123.886787 C72.6862745,139.45619 80.5871319,156.632328 90.3333333,156.632328 Z" id="Oval-6"></path>
12
+ <path d="M78.8137255,148.401961 C78.8137255,148.401961 63.837824,155.35082 60.0307515,160.88838 C56.6482815,165.808337 57.245098,179.77451 57.245098,179.77451" id="Line" stroke-linecap="square"></path>
13
+ <path d="M123.421569,148.401961 C123.421569,148.401961 108.445667,155.35082 104.638595,160.88838 C101.256125,165.808337 101.852941,179.77451 101.852941,179.77451" id="Line-Copy-3" stroke-linecap="square" transform="translate(112.616952, 164.088235) scale(-1, 1) translate(-112.616952, -164.088235) "></path>
14
+ <path d="M57.245098,180.509804 L123.176471,180.509804" id="Line" stroke-linecap="square"></path>
15
+ <path d="M108.968995,77.1629039 C149.732203,73.4437041 180.333333,57.7704287 180.333333,39 C180.333333,17.4608948 140.038961,0 90.3333333,0 C40.6277059,0 0.333333333,17.4608948 0.333333333,39 C0.333333333,57.7704287 30.9344633,73.4437041 71.6976718,77.1629039 L90.3333333,89 L108.968995,77.1629039 Z" id="Oval-8"></path>
16
+ <polygon id="Star-1" points="50.0882353 45.25 42.7409196 48.8036954 44.1441321 41.2768477 38.2000288 35.9463046 46.4145775 34.8481523 50.0882353 28 53.7618931 34.8481523 61.9764417 35.9463046 56.0323385 41.2768477 57.4355509 48.8036954 "></polygon>
17
+ <polygon id="Star-2" points="90.0882353 45.25 82.7409196 48.8036954 84.1441321 41.2768477 78.2000288 35.9463046 86.4145775 34.8481523 90.0882353 28 93.7618931 34.8481523 101.976442 35.9463046 96.0323385 41.2768477 97.4355509 48.8036954 "></polygon>
18
+ <polygon id="Star-3" points="130.088235 45.25 122.74092 48.8036954 124.144132 41.2768477 118.200029 35.9463046 126.414577 34.8481523 130.088235 28 133.761893 34.8481523 141.976442 35.9463046 136.032339 41.2768477 137.435551 48.8036954 "></polygon>
19
+ </g>
20
+ </g>
21
+ </g>
22
+ </svg>
widgets/ink-tsml-widget/ink-tsml-widget.php ADDED
@@ -0,0 +1,188 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Testimonial
5
+ Description: Highlight what your customers think of you.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Testimonial_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-testimonial',
17
+
18
+ __('Inked Testimonial', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Highlight what your customers think of you.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/testimonial-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+
30
+ 'name' => array(
31
+ 'type' => 'text',
32
+ 'label' => __('Name', 'wpinked-widgets'),
33
+ 'default' => '',
34
+ 'description' => __('Name of the testimonial author.', 'wpinked-widgets'),
35
+ ),
36
+
37
+ 'testimonial' => array(
38
+ 'type' => 'section',
39
+ 'label' => __( 'Testimonial' , 'wpinked-widgets' ),
40
+ 'hide' => true,
41
+ 'fields' => array(
42
+
43
+ 'image' => array(
44
+ 'type' => 'media',
45
+ 'label' => __( 'Image', 'wpinked-widgets' ),
46
+ 'choose' => __( 'Choose image', 'wpinked-widgets' ),
47
+ 'update' => __( 'Set image', 'wpinked-widgets' ),
48
+ 'library' => 'image',
49
+ 'fallback' => false
50
+ ),
51
+
52
+ 'company' => array(
53
+ 'type' => 'text',
54
+ 'label' => __('Company', 'wpinked-widgets'),
55
+ 'default' => ''
56
+ ),
57
+
58
+ 'link' => array(
59
+ 'type' => 'link',
60
+ 'label' => __('Company Link', 'wpinked-widgets'),
61
+ 'default' => ''
62
+ ),
63
+
64
+ 'target' => array(
65
+ 'type' => 'select',
66
+ 'label' => __( 'Open link in', 'wpinked-widgets' ),
67
+ 'default' => '_blank',
68
+ 'options' => array(
69
+ '_self' => __( 'Same Window', 'wpinked-widgets' ),
70
+ '_blank' => __( 'New Window', 'wpinked-widgets' )
71
+ )
72
+ ),
73
+
74
+ 'content' => array(
75
+ 'type' => 'tinymce',
76
+ 'label' => __( 'Content', 'wpinked-widgets' ),
77
+ 'default' => '',
78
+ 'rows' => 10,
79
+ 'default_editor' => 'tinymce',
80
+ 'button_filters' => array(
81
+ 'mce_buttons' => array( $this, 'filter_mce_buttons' ),
82
+ 'mce_buttons_2' => array( $this, 'filter_mce_buttons_2' ),
83
+ 'mce_buttons_3' => array( $this, 'filter_mce_buttons_3' ),
84
+ 'mce_buttons_4' => array( $this, 'filter_mce_buttons_5' ),
85
+ 'quicktags_settings' => array( $this, 'filter_quicktags_settings' ),
86
+ ),
87
+ 'description' => __('Change the color of the text in the editor.', 'wpinked-widgets'),
88
+ )
89
+
90
+ )
91
+ ),
92
+
93
+ 'styling' => array(
94
+ 'type' => 'section',
95
+ 'label' => __( 'Styling' , 'wpinked-widgets' ),
96
+ 'hide' => true,
97
+ 'fields' => array(
98
+
99
+ 'design' => array(
100
+ 'type' => 'select',
101
+ 'label' => __( 'Design', 'wpinked-widgets' ),
102
+ 'default' => 'above',
103
+ 'options' => array(
104
+ 'above' => __( 'Image Above', 'wpinked-widgets' ),
105
+ 'below' => __( 'Image Below', 'wpinked-widgets' ),
106
+ 'left' => __( 'Image Left', 'wpinked-widgets' ),
107
+ 'right' => __( 'Image Right', 'wpinked-widgets' )
108
+ )
109
+ ),
110
+
111
+ 'img-radius' => array(
112
+ 'type' => 'select',
113
+ 'label' => __( 'Image Shape', 'wpinked-widgets' ),
114
+ 'default' => '0',
115
+ 'options' => array(
116
+ '0' => __( 'Square', 'wpinked-widgets' ),
117
+ '5%' => __( 'Curved', 'wpinked-widgets' ),
118
+ '50%' => __( 'Round', 'wpinked-widgets' )
119
+ )
120
+ ),
121
+
122
+ 'text' => array(
123
+ 'type' => 'select',
124
+ 'label' => __( 'Text Alignment', 'wpinked-widgets' ),
125
+ 'default' => 'iw-text-left',
126
+ 'options' => array(
127
+ 'iw-text-left' => __( 'Left', 'wpinked-widgets' ),
128
+ 'iw-text-center' => __( 'Center', 'wpinked-widgets' ),
129
+ 'iw-text-right' => __( 'Right', 'wpinked-widgets' ),
130
+ )
131
+ ),
132
+
133
+ 'background' => array(
134
+ 'type' => 'color',
135
+ 'label' => __( 'Background Color', 'wpinked-widgets' ),
136
+ 'default' => ''
137
+ ),
138
+
139
+ 'name' => array(
140
+ 'type' => 'color',
141
+ 'label' => __( 'Name Color', 'wpinked-widgets' ),
142
+ 'default' => ''
143
+ ),
144
+
145
+ 'company' => array(
146
+ 'type' => 'color',
147
+ 'label' => __( 'Company Color', 'wpinked-widgets' ),
148
+ 'default' => ''
149
+ )
150
+
151
+ )
152
+ ),
153
+ ),
154
+
155
+ plugin_dir_path(__FILE__)
156
+ );
157
+ }
158
+
159
+ function get_template_name($instance) {
160
+ return 'testimonial';
161
+ }
162
+
163
+ function get_style_name($instance) {
164
+ return 'testimonial';
165
+ }
166
+
167
+ function enqueue_frontend_scripts( $instance ) {
168
+
169
+ wp_enqueue_style( 'iw-testimonial', siteorigin_widget_get_plugin_dir_url('ink-testimonial') . 'styles/testimonial.css', array(), INKED_SO_WIDGETS );
170
+
171
+ parent::enqueue_frontend_scripts( $instance );
172
+ }
173
+
174
+ function get_less_variables($instance) {
175
+ if( empty( $instance ) ) return array();
176
+
177
+ return array(
178
+ 'design' => $instance['styling']['design'],
179
+ 'bg' => $instance['styling']['background'],
180
+ 'img-r' => $instance['styling']['img-radius'],
181
+ 'name' => $instance['styling']['name'],
182
+ 'company' => $instance['styling']['company'],
183
+ );
184
+ }
185
+
186
+ }
187
+
188
+ siteorigin_widget_register('ink-testimonial', __FILE__, 'Inked_Testimonial_SO_Widget');
widgets/ink-tsml-widget/styles/testimonial.css ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .iw-row.iw-so-testimonial {
2
+ width: inherit;
3
+ }
4
+ .iw-so-testimonial {
5
+ padding: 25px;
6
+ }
7
+ .iw-so-testimonial-content {
8
+ padding: 0 10px;
9
+ }
10
+ .iw-so-testimonial-img img {
11
+ display: block;
12
+ vertical-align: top;
13
+ margin: 0 auto;
14
+ }
15
+ .iw-so-testimonial-company a {
16
+ text-decoration: none;
17
+ }
18
+
19
+ .iw-so-testimonial-company a:hover {
20
+ text-decoration: underline;
21
+ }
widgets/ink-tsml-widget/styles/testimonial.less ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../../../../so-widgets-bundle/base/less/mixins";
2
+
3
+ @bg: transparent;
4
+ @img-r: 0;
5
+ @name: '';
6
+ @company: '';
7
+ @design: 'above';
8
+
9
+ .iw-so-testimonial {
10
+ background: @bg;
11
+ }
12
+
13
+ .iw-so-testimonial-img img {
14
+ border-radius: @img-r;
15
+ .img-design() when (@design = above) { margin-bottom: 25px; }
16
+ .img-design() when (@design = below) { margin-top: 25px; }
17
+ .img-design();
18
+ }
19
+
20
+ .iw-so-testimonial-company {
21
+ color: @company;
22
+ a {
23
+ color: @company;
24
+ }
25
+ }
26
+
27
+ .iw-so-testimonial-message p {
28
+ font-size: 1.3em;
29
+ line-height: 1.75;
30
+ }
31
+
32
+ .iw-so-testimonial-name {
33
+ font-size: 1.1em;
34
+ font-weight: bold;
35
+ color: @name;
36
+ }
37
+
38
+ .iw-so-testimonial-company {
39
+ font-size: 0.9em;
40
+ font-weight: lighter;
41
+ letter-spacing: 2px;
42
+ }
widgets/ink-tsml-widget/tpl/testimonial.php ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if ( $instance['styling']['design'] == 'above' || $instance['styling']['design'] == 'below' ):
3
+ $img_class = ' iw-small-12';
4
+ $cnt_class = ' iw-small-12';
5
+ elseif ( $instance['styling']['design'] == 'left' ):
6
+ $img_class = ' iw-small-12 iw-medium-3 iw-left';
7
+ $cnt_class = ' iw-small-12 iw-medium-9 iw-right';
8
+ elseif ( $instance['styling']['design'] == 'right' ):
9
+ $img_class = ' iw-small-12 iw-medium-3 iw-right';
10
+ $cnt_class = ' iw-small-12 iw-medium-9 iw-left';
11
+ endif;
12
+ ?>
13
+
14
+ <div class="iw-row iw-so-testimonial">
15
+
16
+ <?php if ( $instance['testimonial']['image'] && ($instance['styling']['design'] != 'below') ) : ?>
17
+
18
+ <div class="iw-cols<?php echo $img_class; ?> iw-so-testimonial-img <?php echo $instance['styling']['design']; ?>">
19
+
20
+ <?php echo wp_get_attachment_image( $instance['testimonial']['image'], 'full' ); ?>
21
+
22
+ </div>
23
+
24
+ <?php endif; ?>
25
+
26
+ <div class="iw-so-cols<?php echo $cnt_class; ?> ">
27
+
28
+ <div class="iw-so-testimonial-content">
29
+
30
+ <?php if ( $instance['testimonial']['content'] ) : ?>
31
+
32
+ <p class="iw-so-testimonial-message <?php echo $instance['testimonial']['text']; ?>"><?php echo $instance['testimonial']['content']; ?></p>
33
+
34
+ <?php endif; ?>
35
+
36
+ <?php wpinked_so_testimonial_name ( $instance['name'], $instance['testimonial']['company'], $instance['testimonial']['link'], $instance['testimonial']['target'], $instance['styling']['text'] ); ?>
37
+
38
+ </div>
39
+
40
+ </div>
41
+
42
+ <?php if ( $instance['testimonial']['image'] && ($instance['styling']['design'] == 'below') ) : ?>
43
+
44
+ <div class="iw-cols<?php echo $img_class; ?> iw-so-testimonial-img <?php echo $instance['styling']['design']; ?>">
45
+
46
+ <?php echo wp_get_attachment_image( $instance['testimonial']['image'], 'full' ); ?>
47
+
48
+ </div>
49
+
50
+ <?php endif; ?>
51
+
52
+ </div>
widgets/ink-vids-widget/assets/banner.svg ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg width="240px" height="240px" viewBox="0 0 240 240" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
3
+ <!-- Generator: Sketch 3.3.2 (12043) - http://www.bohemiancoding.com/sketch -->
4
+ <title>so-banners</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <defs></defs>
7
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
8
+ <g id="Video" sketch:type="MSLayerGroup">
9
+ <rect id="BG" fill="#E74C3C" sketch:type="MSShapeGroup" x="0" y="0" width="240" height="240"></rect>
10
+ <g id="Group" transform="translate(58.000000, 58.000000)" stroke="#F7EBE8" stroke-width="4" sketch:type="MSShapeGroup">
11
+ <polygon id="Triangle-2" transform="translate(75.000000, 62.500000) scale(-1, 1) rotate(-90.000000) translate(-75.000000, -62.500000) " points="75 27 118 98 32 98 "></polygon>
12
+ <circle id="Oval-3" cx="62.5" cy="62.5" r="62.5"></circle>
13
+ </g>
14
+ </g>
15
+ </g>
16
+ </svg>
widgets/ink-vids-widget/ink-vids-widget.php ADDED
@@ -0,0 +1,171 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ Widget Name: Inked Video
5
+ Description: Play self or externally hosted videos.
6
+ Author: wpinked
7
+ Author URI: https://wpinked.com
8
+ */
9
+
10
+ class Inked_Video_SO_Widget extends SiteOrigin_Widget {
11
+
12
+ function __construct() {
13
+
14
+ parent::__construct(
15
+
16
+ 'ink-video',
17
+
18
+ __('Inked Video', 'wpinked-widgets'),
19
+
20
+ array(
21
+ 'description' => __('Play self or externally hosted videos.', 'wpinked-widgets'),
22
+ 'help' => 'http://docs.wpinked.com/widgets-for-siteorigin/video-widget'
23
+ ),
24
+
25
+ array(
26
+ ),
27
+
28
+ array(
29
+
30
+ 'admin' => array(
31
+ 'type' => 'text',
32
+ 'label' => __('Admin Label', 'wpinked-widgets'),
33
+ 'default' => ''
34
+ ),
35
+
36
+ 'video' => array(
37
+ 'type' => 'section',
38
+ 'label' => __( 'Video' , 'wpinked-widgets' ),
39
+ 'hide' => true,
40
+ 'fields' => array(
41
+ 'type' => array(
42
+ 'type' => 'select',
43
+ 'label' => __( 'Video Type', 'wpinked-widgets' ),
44
+ 'default' => 'oembed',
45
+ 'options' => array(
46
+ 'hosted' => __( 'Self Hosted', 'wpinked-widgets' ),
47
+ 'oembed' => __( 'oEmbed', 'wpinked-widgets' ),
48
+ ),
49
+ 'state_emitter' => array(
50
+ 'callback' => 'select',
51
+ 'args' => array('video_type')
52
+ )
53
+ ),
54
+ 'hosted' => array(
55
+ 'type' => 'media',
56
+ 'fallback' => true,
57
+ 'label' => __( 'Video File', 'wpinked-widgets' ),
58
+ 'default' => '',
59
+ 'library' => 'video',
60
+ 'state_handler' => array(
61
+ 'video_type[hosted]' => array('show'),
62
+ 'video_type[oembed]' => array('hide'),
63
+ )
64
+ ),
65
+
66
+ 'image' => array(
67
+ 'type' => 'media',
68
+ 'fallback' => true,
69
+ 'label' => __( 'Cover Image', 'wpinked-widgets' ),
70
+ 'default' => '',
71
+ 'library' => 'image',
72
+ 'state_handler' => array(
73
+ 'video_type[hosted]' => array('show'),
74
+ 'video_type[oembed]' => array('hide'),
75
+ )
76
+ ),
77
+
78
+ 'oembed' => array(
79
+ 'type' => 'text',
80
+ 'sanitize' => 'url',
81
+ 'label' => __( 'oEmbed Video URL', 'wpinked-widgets' ),
82
+ 'state_handler' => array(
83
+ 'video_type[hosted]' => array('hide'),
84
+ 'video_type[oembed]' => array('show'),
85
+ )
86
+ ),
87
+
88
+ 'controls' => array(
89
+ 'type' => 'select',
90
+ 'label' => __('Controls Theme', 'wpinked-widgets'),
91
+ 'default' => 'iw-text-center',
92
+ 'options' => array(
93
+ 'iw-so-player-light' => __('Light', 'wpinked-widgets'),
94
+ 'iw-so-player-dark' => __('Dark', 'wpinked-widgets')
95
+ ),
96
+ 'state_handler' => array(
97
+ 'video_type[hosted]' => array('show'),
98
+ 'video_type[oembed]' => array('hide'),
99
+ )
100
+ ),
101
+
102
+ 'background' => array(
103
+ 'type' => 'color',
104
+ 'label' => __( 'Controller Background Color', 'wpinked-widgets' ),
105
+ 'default' => '',
106
+ 'state_handler' => array(
107
+ 'video_type[hosted]' => array('show'),
108
+ 'video_type[oembed]' => array('hide'),
109
+ ),
110
+ 'description' => __('Leave blank for a transparent background.', 'wpinked-widgets'),
111
+ ),
112
+
113
+ 'bg-opacity' => array(
114
+ 'type' => 'slider',
115
+ 'label' => __( 'Controller Background Opacity', 'wpinked-widgets' ),
116
+ 'default' => 0,
117
+ 'min' => 0,
118
+ 'max' => 100,
119
+ 'integer' => true,
120
+ 'state_handler' => array(
121
+ 'video_type[hosted]' => array('show'),
122
+ 'video_type[oembed]' => array('hide'),
123
+ )
124
+ ),
125
+
126
+
127
+ ),
128
+ ),
129
+ ),
130
+
131
+ plugin_dir_path(__FILE__)
132
+ );
133
+ }
134
+
135
+ function get_template_name($instance) {
136
+ return 'video';
137
+ }
138
+
139
+ function get_style_name($instance) {
140
+ if ( $instance['video']['type'] == 'hosted' ):
141
+ return 'video';
142
+ endif;
143
+ }
144
+
145
+ function enqueue_frontend_scripts( $instance ) {
146
+
147
+ if ( $instance['video']['type'] == 'hosted' ):
148
+
149
+ wp_enqueue_style( 'iw-video', siteorigin_widget_get_plugin_dir_url('ink-video') . 'styles/video.css', array(), INKED_SO_WIDGETS );
150
+
151
+ elseif ( $instance['video']['type'] == 'oembed' ):
152
+
153
+ wp_enqueue_style( 'iw-video-oembed', siteorigin_widget_get_plugin_dir_url('ink-video') . 'styles/video-oembed.css', array(), INKED_SO_WIDGETS );
154
+
155
+ endif;
156
+
157
+ parent::enqueue_frontend_scripts( $instance );
158
+ }
159
+
160
+ function get_less_variables($instance) {
161
+ if( empty( $instance ) ) return array();
162
+
163
+ return array(
164
+ 'bg' => $instance['video']['background'],
165
+ 'bg-op' => $instance['video']['bg-opacity'],
166
+ );
167
+ }
168
+
169
+ }
170
+
171
+ siteorigin_widget_register('ink-video', __FILE__, 'Inked_Video_SO_Widget');
widgets/ink-vids-widget/styles/video-oembed.css ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .video-flex-frame {
2
+ height: 0;
3
+ margin-bottom: 1rem;
4
+ overflow: hidden;
5
+ padding-bottom: 67.5%;
6
+ padding-top: 1.5625rem;
7
+ position: relative;
8
+ padding-bottom: 56.34%;
9
+ padding-top: 0;
10
+ }
11
+ .video-flex-frame iframe,
12
+ .video-flex-frame object,
13
+ .video-flex-frame embed,
14
+ .video-flex-frame frame {
15
+ height: 100%;
16
+ position: absolute;
17
+ top: 0;
18
+ width: 100%;
19
+ left: 0;
20
+ }
widgets/ink-vids-widget/styles/video.css ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .iw-so-player-dark .mejs-controls .mejs-button button {
2
+ background-image: url( '../../../statics/controls-dark.svg' ) !important;
3
+ }
4
+ .iw-so-player-dark .mejs-overlay-button {
5
+ background: url('../../../statics/bigplay-dark.svg') no-repeat;
6
+ }
7
+
8
+ .iw-so-video-file .mejs-container {
9
+ background: transparent;
10
+ }
11
+ .iw-so-video-file .mejs-time-total {
12
+ margin:9px 5px !important;
13
+ }
14
+ .iw-so-video-file .mejs-controls .mejs-time-rail span,
15
+ .iw-so-video-file .mejs-controls .mejs-time-rail a,
16
+ .iw-so-video-file .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,
17
+ .iw-so-video-file .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
18
+ height: 2px !important;
19
+ }
20
+ .iw-so-video-file .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,
21
+ .iw-so-video-file .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
22
+ top: 13px;
23
+ }
24
+
25
+ .iw-so-video-file.iw-so-player-light .mejs-time-loaded {
26
+ background: #fff;
27
+ opacity: 0.5;
28
+ }
29
+ .iw-so-video-file.iw-so-player-light .mejs-time-current {
30
+ background: #fff !important;
31
+ }
32
+ .iw-so-video-file.iw-so-player-light .mejs-time-total {
33
+ border: none;
34
+ background: transparent;
35
+ }
36
+ .iw-so-video-file.iw-so-player-light .mejs-controls .mejs-time-rail .mejs-time-float {
37
+ background: transparent;
38
+ border: none;
39
+ color: #fff;
40
+ }
41
+
42
+ .iw-so-video-file.iw-so-player-dark .mejs-time-loaded {
43
+ background: #333 !important;
44
+ opacity: 0.4;
45
+ }
46
+ .iw-so-video-file.iw-so-player-dark .mejs-time-current,
47
+ .iw-so-video-file.iw-so-player-dark .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
48
+ background: #333 !important;
49
+ }
50
+ .iw-so-video-file.iw-so-player-dark .mejs-time-total {
51
+ border: none;
52
+ background: transparent;
53
+ }
54
+ .iw-so-video-file.iw-so-player-dark .mejs-controls .mejs-time-rail .mejs-time-float {
55
+ background: transparent;
56
+ border: none;
57
+ color: #333;
58
+ }
59
+ .iw-so-video-file.iw-so-player-dark .mejs-controls .mejs-time-rail .mejs-time-float-corner {
60
+ border-color: #333 transparent transparent;
61
+ }
62
+ .iw-so-video-file.iw-so-player-dark .mejs-controls .mejs-time {
63
+ color: #333;
64
+ }
65
+ .iw-so-video-file.iw-so-player-dark .mejs-controls .mejs-time-rail .mejs-time-total,
66
+ .iw-so-video-file.iw-so-player-dark .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total {
67
+ background: rgba(51, 51, 51, 0.2);
68
+ }
widgets/ink-vids-widget/styles/video.less ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ @bg: transparent;
2
+ @bg-op: 50;
3
+
4
+ .iw-so-video-file .mejs-container .mejs-controls {
5
+ background: fade(@bg, @bg-op);
6
+ }
widgets/ink-vids-widget/tpl/video.php ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $file = wp_get_attachment_url( $instance['video']['hosted'] );
4
+
5
+ $filetype = wp_check_filetype( $file );
6
+
7
+ if( !empty($instance['title']) ) echo $args['before_title'] . esc_html($instance['title']) . $args['after_title'];
8
+ ?>
9
+
10
+ <div class="iw-so-video">
11
+
12
+ <?php if ($instance['video']['type'] == 'oembed' ) : ?>
13
+
14
+ <div class="video-flex-frame">
15
+ <?php echo wp_oembed_get( $instance['video']['oembed'] ); ?>
16
+ </div>
17
+
18
+ <?php elseif ($instance['video']['type'] == 'hosted' ) : ?>
19
+
20
+ <div class="iw-so-video-file <?php echo $instance['video']['controls']; ?>">
21
+ <?php echo do_shortcode('[video src="' . wp_get_attachment_url( $instance['video']['hosted'] ) . '" poster="' . wp_get_attachment_url( $instance['video']['image'] ) . '"]'); ?>
22
+ </div>
23
+
24
+ <?php endif; ?>
25
+
26
+ </div>