PageRenderTime 56ms CodeModel.GetById 28ms RepoModel.GetById 0ms app.codeStats 0ms

/wp-content/plugins/live-composer-page-builder/modules/tp-excerpt/module.php

https://gitlab.com/mostafame/team_website
PHP | 471 lines | 429 code | 31 blank | 11 comment | 8 complexity | 9eb8f683268baa0f51ebfd003fd4ea20 MD5 | raw file
  1. <?php
  2. class DSLC_TP_Excerpt extends DSLC_Module {
  3. var $module_id;
  4. var $module_title;
  5. var $module_icon;
  6. var $module_category;
  7. function __construct() {
  8. $this->module_id = 'DSLC_TP_Excerpt';
  9. $this->module_title = __( 'The Excerpt', 'live-composer-page-builder' );
  10. $this->module_icon = 'font';
  11. $this->module_category = 'single';
  12. }
  13. function options() {
  14. $dslc_options = array(
  15. array(
  16. 'label' => __( 'Show On', 'live-composer-page-builder' ),
  17. 'id' => 'css_show_on',
  18. 'std' => 'desktop tablet phone',
  19. 'type' => 'checkbox',
  20. 'choices' => array(
  21. array(
  22. 'label' => __( 'Desktop', 'live-composer-page-builder' ),
  23. 'value' => 'desktop'
  24. ),
  25. array(
  26. 'label' => __( 'Tablet', 'live-composer-page-builder' ),
  27. 'value' => 'tablet'
  28. ),
  29. array(
  30. 'label' => __( 'Phone', 'live-composer-page-builder' ),
  31. 'value' => 'phone'
  32. ),
  33. ),
  34. ),
  35. array(
  36. 'label' => __( 'BG Color', 'live-composer-page-builder' ),
  37. 'id' => 'css_bg_color',
  38. 'std' => '',
  39. 'type' => 'color',
  40. 'refresh_on_change' => false,
  41. 'affect_on_change_el' => '.dslc-tp-excerpt',
  42. 'affect_on_change_rule' => 'background-color',
  43. 'section' => 'styling',
  44. ),
  45. array(
  46. 'label' => __( 'Border Color', 'live-composer-page-builder' ),
  47. 'id' => 'css_border_color',
  48. 'std' => '',
  49. 'type' => 'color',
  50. 'refresh_on_change' => false,
  51. 'affect_on_change_el' => '.dslc-tp-excerpt',
  52. 'affect_on_change_rule' => 'border-color',
  53. 'section' => 'styling',
  54. ),
  55. array(
  56. 'label' => __( 'Border Width', 'live-composer-page-builder' ),
  57. 'id' => 'css_border_width',
  58. 'std' => '0',
  59. 'type' => 'slider',
  60. 'refresh_on_change' => false,
  61. 'affect_on_change_el' => '.dslc-tp-excerpt',
  62. 'affect_on_change_rule' => 'border-width',
  63. 'section' => 'styling',
  64. 'ext' => 'px',
  65. ),
  66. array(
  67. 'label' => __( 'Borders', 'live-composer-page-builder' ),
  68. 'id' => 'css_border_trbl',
  69. 'std' => 'top right bottom left',
  70. 'type' => 'checkbox',
  71. 'choices' => array(
  72. array(
  73. 'label' => __( 'Top', 'live-composer-page-builder' ),
  74. 'value' => 'top'
  75. ),
  76. array(
  77. 'label' => __( 'Right', 'live-composer-page-builder' ),
  78. 'value' => 'right'
  79. ),
  80. array(
  81. 'label' => __( 'Bottom', 'live-composer-page-builder' ),
  82. 'value' => 'bottom'
  83. ),
  84. array(
  85. 'label' => __( 'Left', 'live-composer-page-builder' ),
  86. 'value' => 'left'
  87. ),
  88. ),
  89. 'refresh_on_change' => false,
  90. 'affect_on_change_el' => '.dslc-tp-excerpt',
  91. 'affect_on_change_rule' => 'border-style',
  92. 'section' => 'styling',
  93. ),
  94. array(
  95. 'label' => __( 'Border Radius - Top', 'live-composer-page-builder' ),
  96. 'id' => 'css_border_radius_top',
  97. 'std' => '0',
  98. 'type' => 'slider',
  99. 'refresh_on_change' => false,
  100. 'affect_on_change_el' => '.dslc-tp-excerpt',
  101. 'affect_on_change_rule' => 'border-top-left-radius,border-top-right-radius',
  102. 'section' => 'styling',
  103. 'ext' => 'px'
  104. ),
  105. array(
  106. 'label' => __( 'Border Radius - Bottom', 'live-composer-page-builder' ),
  107. 'id' => 'css_border_radius_bottom',
  108. 'std' => '0',
  109. 'type' => 'slider',
  110. 'refresh_on_change' => false,
  111. 'affect_on_change_el' => '.dslc-tp-excerpt',
  112. 'affect_on_change_rule' => 'border-bottom-left-radius,border-bottom-right-radius',
  113. 'section' => 'styling',
  114. 'ext' => 'px'
  115. ),
  116. array(
  117. 'label' => __( 'Margin Bottom', 'live-composer-page-builder' ),
  118. 'id' => 'css_margin_bottom',
  119. 'std' => '0',
  120. 'type' => 'slider',
  121. 'refresh_on_change' => false,
  122. 'affect_on_change_el' => '.dslc-tp-excerpt',
  123. 'affect_on_change_rule' => 'margin-bottom',
  124. 'section' => 'styling',
  125. 'ext' => 'px',
  126. ),
  127. array(
  128. 'label' => __( 'Minimum Height', 'live-composer-page-builder' ),
  129. 'id' => 'css_min_height',
  130. 'std' => '0',
  131. 'type' => 'slider',
  132. 'refresh_on_change' => false,
  133. 'affect_on_change_el' => '.dslc-tp-excerpt',
  134. 'affect_on_change_rule' => 'min-height',
  135. 'section' => 'styling',
  136. 'ext' => 'px',
  137. 'min' => 0,
  138. 'max' => 1000,
  139. 'increment' => 5
  140. ),
  141. array(
  142. 'label' => __( 'Padding Vertical', 'live-composer-page-builder' ),
  143. 'id' => 'css_padding_vertical',
  144. 'std' => '0',
  145. 'type' => 'slider',
  146. 'refresh_on_change' => false,
  147. 'affect_on_change_el' => '.dslc-tp-excerpt',
  148. 'affect_on_change_rule' => 'padding-top,padding-bottom',
  149. 'section' => 'styling',
  150. 'ext' => 'px',
  151. ),
  152. array(
  153. 'label' => __( 'Padding Horizontal', 'live-composer-page-builder' ),
  154. 'id' => 'css_padding_horizontal',
  155. 'std' => '0',
  156. 'type' => 'slider',
  157. 'refresh_on_change' => false,
  158. 'affect_on_change_el' => '.dslc-tp-excerpt',
  159. 'affect_on_change_rule' => 'padding-left,padding-right',
  160. 'section' => 'styling',
  161. 'ext' => 'px',
  162. ),
  163. /**
  164. * Typography
  165. */
  166. array(
  167. 'label' => __( 'Color', 'live-composer-page-builder' ),
  168. 'id' => 'css_color',
  169. 'std' => '',
  170. 'type' => 'color',
  171. 'refresh_on_change' => false,
  172. 'affect_on_change_el' => '.dslc-tp-excerpt',
  173. 'affect_on_change_rule' => 'color',
  174. 'section' => 'styling',
  175. 'tab' => __( 'Typography', 'live-composer-page-builder' ),
  176. ),
  177. array(
  178. 'label' => __( 'Font Size', 'live-composer-page-builder' ),
  179. 'id' => 'css_font_size',
  180. 'std' => '14',
  181. 'type' => 'slider',
  182. 'refresh_on_change' => false,
  183. 'affect_on_change_el' => '.dslc-tp-excerpt',
  184. 'affect_on_change_rule' => 'font-size',
  185. 'section' => 'styling',
  186. 'tab' => __( 'Typography', 'live-composer-page-builder' ),
  187. 'ext' => 'px'
  188. ),
  189. array(
  190. 'label' => __( 'Font Weight', 'live-composer-page-builder' ),
  191. 'id' => 'css_font_weight',
  192. 'std' => '400',
  193. 'type' => 'slider',
  194. 'refresh_on_change' => false,
  195. 'affect_on_change_el' => '.dslc-tp-excerpt',
  196. 'affect_on_change_rule' => 'font-weight',
  197. 'section' => 'styling',
  198. 'tab' => __( 'Typography', 'live-composer-page-builder' ),
  199. 'ext' => '',
  200. 'min' => 100,
  201. 'max' => 900,
  202. 'increment' => 100
  203. ),
  204. array(
  205. 'label' => __( 'Font Family', 'live-composer-page-builder' ),
  206. 'id' => 'css_font_family',
  207. 'std' => 'Open Sans',
  208. 'type' => 'font',
  209. 'refresh_on_change' => false,
  210. 'affect_on_change_el' => '.dslc-tp-excerpt',
  211. 'affect_on_change_rule' => 'font-family',
  212. 'section' => 'styling',
  213. 'tab' => __( 'Typography', 'live-composer-page-builder' ),
  214. ),
  215. array(
  216. 'label' => __( 'Line Height', 'live-composer-page-builder' ),
  217. 'id' => 'css_line_height',
  218. 'std' => '26',
  219. 'type' => 'slider',
  220. 'refresh_on_change' => false,
  221. 'affect_on_change_el' => '.dslc-tp-excerpt',
  222. 'affect_on_change_rule' => 'line-height',
  223. 'section' => 'styling',
  224. 'tab' => __( 'Typography', 'live-composer-page-builder' ),
  225. 'ext' => 'px'
  226. ),
  227. array(
  228. 'label' => __( 'Text Align', 'live-composer-page-builder' ),
  229. 'id' => 'css_text_align',
  230. 'std' => 'left',
  231. 'type' => 'text_align',
  232. 'refresh_on_change' => false,
  233. 'affect_on_change_el' => '.dslc-tp-excerpt',
  234. 'affect_on_change_rule' => 'text-align',
  235. 'section' => 'styling',
  236. 'tab' => __( 'Typography', 'live-composer-page-builder' ),
  237. ),
  238. array(
  239. 'label' => __( 'Text Shadow', 'live-composer-page-builder' ),
  240. 'id' => 'css_text_shadow',
  241. 'std' => '',
  242. 'type' => 'text_shadow',
  243. 'refresh_on_change' => false,
  244. 'affect_on_change_el' => '.dslc-tp-excerpt',
  245. 'affect_on_change_rule' => 'text-shadow',
  246. 'section' => 'styling',
  247. 'tab' => __( 'Typography', 'live-composer-page-builder' ),
  248. ),
  249. /**
  250. * Responsive Tablet
  251. */
  252. array(
  253. 'label' => __( 'Responsive Styling', 'live-composer-page-builder' ),
  254. 'id' => 'css_res_t',
  255. 'std' => 'disabled',
  256. 'type' => 'select',
  257. 'choices' => array(
  258. array(
  259. 'label' => __( 'Disabled', 'live-composer-page-builder' ),
  260. 'value' => 'disabled'
  261. ),
  262. array(
  263. 'label' => __( 'Enabled', 'live-composer-page-builder' ),
  264. 'value' => 'enabled'
  265. ),
  266. ),
  267. 'section' => 'responsive',
  268. 'tab' => __( 'tablet', 'live-composer-page-builder' ),
  269. ),
  270. array(
  271. 'label' => __( 'Margin Bottom', 'live-composer-page-builder' ),
  272. 'id' => 'css_res_t_margin_bottom',
  273. 'std' => '0',
  274. 'type' => 'slider',
  275. 'refresh_on_change' => false,
  276. 'affect_on_change_el' => '.dslc-tp-excerpt',
  277. 'affect_on_change_rule' => 'margin-bottom',
  278. 'section' => 'responsive',
  279. 'tab' => __( 'tablet', 'live-composer-page-builder' ),
  280. 'ext' => 'px',
  281. ),
  282. array(
  283. 'label' => __( 'Padding Vertical', 'live-composer-page-builder' ),
  284. 'id' => 'css_res_t_padding_vertical',
  285. 'std' => '0',
  286. 'type' => 'slider',
  287. 'refresh_on_change' => false,
  288. 'affect_on_change_el' => '.dslc-tp-excerpt',
  289. 'affect_on_change_rule' => 'padding-top,padding-bottom',
  290. 'section' => 'responsive',
  291. 'tab' => __( 'tablet', 'live-composer-page-builder' ),
  292. 'ext' => 'px',
  293. ),
  294. array(
  295. 'label' => __( 'Padding Horizontal', 'live-composer-page-builder' ),
  296. 'id' => 'css_res_t_padding_horizontal',
  297. 'std' => '0',
  298. 'type' => 'slider',
  299. 'refresh_on_change' => false,
  300. 'affect_on_change_el' => '.dslc-tp-excerpt',
  301. 'affect_on_change_rule' => 'padding-left,padding-right',
  302. 'section' => 'responsive',
  303. 'tab' => __( 'tablet', 'live-composer-page-builder' ),
  304. 'ext' => 'px',
  305. ),
  306. array(
  307. 'label' => __( 'Font Size', 'live-composer-page-builder' ),
  308. 'id' => 'css_res_t_font_size',
  309. 'std' => '14',
  310. 'type' => 'slider',
  311. 'refresh_on_change' => false,
  312. 'affect_on_change_el' => '.dslc-tp-excerpt',
  313. 'affect_on_change_rule' => 'font-size',
  314. 'section' => 'responsive',
  315. 'tab' => __( 'tablet', 'live-composer-page-builder' ),
  316. 'ext' => 'px'
  317. ),
  318. array(
  319. 'label' => __( 'Line Height', 'live-composer-page-builder' ),
  320. 'id' => 'css_res_t_line_height',
  321. 'std' => '26',
  322. 'type' => 'slider',
  323. 'refresh_on_change' => false,
  324. 'affect_on_change_el' => '.dslc-tp-excerpt',
  325. 'affect_on_change_rule' => 'line-height',
  326. 'section' => 'responsive',
  327. 'tab' => __( 'tablet', 'live-composer-page-builder' ),
  328. 'ext' => 'px'
  329. ),
  330. /**
  331. * Responsive Tablet
  332. */
  333. array(
  334. 'label' => __( 'Responsive Styling', 'live-composer-page-builder' ),
  335. 'id' => 'css_res_p',
  336. 'std' => 'disabled',
  337. 'type' => 'select',
  338. 'choices' => array(
  339. array(
  340. 'label' => __( 'Disabled', 'live-composer-page-builder' ),
  341. 'value' => 'disabled'
  342. ),
  343. array(
  344. 'label' => __( 'Enabled', 'live-composer-page-builder' ),
  345. 'value' => 'enabled'
  346. ),
  347. ),
  348. 'section' => 'responsive',
  349. 'tab' => __( 'phone', 'live-composer-page-builder' ),
  350. ),
  351. array(
  352. 'label' => __( 'Margin Bottom', 'live-composer-page-builder' ),
  353. 'id' => 'css_res_p_margin_bottom',
  354. 'std' => '0',
  355. 'type' => 'slider',
  356. 'refresh_on_change' => false,
  357. 'affect_on_change_el' => '.dslc-tp-excerpt',
  358. 'affect_on_change_rule' => 'margin-bottom',
  359. 'section' => 'responsive',
  360. 'tab' => __( 'phone', 'live-composer-page-builder' ),
  361. 'ext' => 'px',
  362. ),
  363. array(
  364. 'label' => __( 'Padding Vertical', 'live-composer-page-builder' ),
  365. 'id' => 'css_res_p_padding_vertical',
  366. 'std' => '0',
  367. 'type' => 'slider',
  368. 'refresh_on_change' => false,
  369. 'affect_on_change_el' => '.dslc-tp-excerpt',
  370. 'affect_on_change_rule' => 'padding-top,padding-bottom',
  371. 'section' => 'responsive',
  372. 'tab' => __( 'phone', 'live-composer-page-builder' ),
  373. 'ext' => 'px',
  374. ),
  375. array(
  376. 'label' => __( 'Padding Horizontal', 'live-composer-page-builder' ),
  377. 'id' => 'css_res_p_padding_horizontal',
  378. 'std' => '0',
  379. 'type' => 'slider',
  380. 'refresh_on_change' => false,
  381. 'affect_on_change_el' => '.dslc-tp-excerpt',
  382. 'affect_on_change_rule' => 'padding-left,padding-right',
  383. 'section' => 'responsive',
  384. 'tab' => __( 'phone', 'live-composer-page-builder' ),
  385. 'ext' => 'px',
  386. ),
  387. array(
  388. 'label' => __( 'Font Size', 'live-composer-page-builder' ),
  389. 'id' => 'css_res_p_font_size',
  390. 'std' => '14',
  391. 'type' => 'slider',
  392. 'refresh_on_change' => false,
  393. 'affect_on_change_el' => '.dslc-tp-excerpt',
  394. 'affect_on_change_rule' => 'font-size',
  395. 'section' => 'responsive',
  396. 'tab' => __( 'phone', 'live-composer-page-builder' ),
  397. 'ext' => 'px'
  398. ),
  399. array(
  400. 'label' => __( 'Line Height', 'live-composer-page-builder' ),
  401. 'id' => 'css_res_p_line_height',
  402. 'std' => '26',
  403. 'type' => 'slider',
  404. 'refresh_on_change' => false,
  405. 'affect_on_change_el' => '.dslc-tp-excerpt',
  406. 'affect_on_change_rule' => 'line-height',
  407. 'section' => 'responsive',
  408. 'tab' => __( 'phone', 'live-composer-page-builder' ),
  409. 'ext' => 'px'
  410. ),
  411. );
  412. $dslc_options = array_merge( $dslc_options, $this->shared_options( 'animation_options', array('hover_opts' => false) ) );
  413. $dslc_options = array_merge( $dslc_options, $this->presets_options() );
  414. return apply_filters( 'dslc_module_options', $dslc_options, $this->module_id );
  415. }
  416. function output( $options ) {
  417. global $dslc_active;
  418. $post_id = $options['post_id'];
  419. if ( $dslc_active && is_user_logged_in() && current_user_can( DS_LIVE_COMPOSER_CAPABILITY ) )
  420. $dslc_is_admin = true;
  421. else
  422. $dslc_is_admin = false;
  423. if ( $dslc_is_admin )
  424. $the_excerpt = __( 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.', 'live-composer-page-builder' );
  425. else
  426. $the_excerpt = false;
  427. if ( is_singular() && get_post_type() !== 'dslc_templates' && has_excerpt() ) {
  428. $post_id = get_the_ID();
  429. $post = get_post( $post_id );
  430. $the_excerpt = apply_filters( 'get_the_excerpt', $post->post_excerpt );
  431. }
  432. $this->module_start( $options );
  433. /* Module output starts here */
  434. if ( $the_excerpt ) :
  435. ?><div class="dslc-tp-excerpt"><?php echo $the_excerpt; ?></div><?php
  436. endif;
  437. /* Module output ends here */
  438. $this->module_end( $options );
  439. }
  440. }