MailPoet Newsletters (New) - Version 3.0.0-beta.36.0.1

Version Description

  • 2017-06-23 =
  • Improved: preheader will now be hidden in Gmail app;
  • Fixed: subscription forms now work without causing "missing file" errors. Thanks Sherrie!
  • Fixed: Premium keys status to not be invalidated after saving Settings;
  • Fixed: email shortcodes are correctly displayed in Newsletter Archive. Thanks Luk!
Download this release

Release Info

Developer wysija
Plugin Icon 128x128 MailPoet Newsletters (New)
Version 3.0.0-beta.36.0.1
Comparing to
See all releases

Code changes from version 3.0.0-beta.36.0.0 to 3.0.0-beta.36.0.1

Files changed (101) hide show
  1. assets/css/{admin.a72d0225.css → admin.c73ddfe6.css} +1 -1
  2. assets/css/manifest.json +1 -1
  3. assets/js/{admin.9af00351.js → admin.5cdc4c05.js} +1 -5
  4. assets/js/{admin_vendor.5379b481.js → admin_vendor.d75e484a.js} +0 -0
  5. assets/js/{form_editor.18138b84.js → form_editor.1f90e137.js} +413 -277
  6. assets/js/manifest.json +4 -4
  7. assets/js/{vendor.c136ccd7.js → vendor.6d57818a.js} +1 -1
  8. lang/mailpoet-de_DE.mo +0 -0
  9. lang/mailpoet-en_GB.mo +0 -0
  10. lang/mailpoet-es_ES.mo +0 -0
  11. lang/mailpoet-fa_IR.mo +0 -0
  12. lang/mailpoet-fr_FR.mo +0 -0
  13. lang/mailpoet-it_IT.mo +0 -0
  14. lang/mailpoet-ja.mo +0 -0
  15. lang/mailpoet-nl_NL.mo +0 -0
  16. lang/mailpoet-pl_PL.mo +0 -0
  17. lang/mailpoet-pt_BR.mo +0 -0
  18. lang/mailpoet-pt_PT.mo +0 -0
  19. lang/mailpoet-ru_RU.mo +0 -0
  20. lang/mailpoet.pot +2 -2
  21. lib/Analytics/Analytics.php +4 -2
  22. lib/Config/Renderer.php +12 -0
  23. lib/Config/Shortcodes.php +1 -2
  24. lib/Config/Widget.php +16 -9
  25. lib/Cron/Workers/SendingQueue/SendingQueue.php +0 -3
  26. lib/Cron/Workers/SendingQueue/Tasks/Newsletter.php +1 -0
  27. lib/Models/Newsletter.php +1 -0
  28. lib/Newsletter/Renderer/Template.html +17 -2
  29. lib/Services/Bridge.php +7 -3
  30. mailpoet.php +2 -2
  31. readme.txt +7 -1
  32. vendor/autoload.php +1 -1
  33. vendor/cerdic/css-tidy/Docs/__filesource/fsource_csstidy__class.csstidy.php.html +0 -1038
  34. vendor/cerdic/css-tidy/Docs/__filesource/fsource_csstidy__class.csstidy_optimise.php.html +0 -851
  35. vendor/cerdic/css-tidy/Docs/__filesource/fsource_csstidy__class.csstidy_print.php.html +0 -402
  36. vendor/cerdic/css-tidy/Docs/__filesource/fsource_csstidy__data.inc.php.html +0 -521
  37. vendor/cerdic/css-tidy/Docs/__filesource/index.php +0 -0
  38. vendor/cerdic/css-tidy/Docs/classtrees_csstidy.html +0 -62
  39. vendor/cerdic/css-tidy/Docs/csstidy/_class_csstidy_optimise_php.html +0 -97
  40. vendor/cerdic/css-tidy/Docs/csstidy/_class_csstidy_php.html +0 -130
  41. vendor/cerdic/css-tidy/Docs/csstidy/_class_csstidy_print_php.html +0 -97
  42. vendor/cerdic/css-tidy/Docs/csstidy/_data_inc_php.html +0 -483
  43. vendor/cerdic/css-tidy/Docs/csstidy/csstidy.html +0 -1550
  44. vendor/cerdic/css-tidy/Docs/csstidy/csstidy_optimise.html +0 -705
  45. vendor/cerdic/css-tidy/Docs/csstidy/csstidy_print.html +0 -617
  46. vendor/cerdic/css-tidy/Docs/csstidy/index.php +0 -0
  47. vendor/cerdic/css-tidy/Docs/elementindex.html +0 -386
  48. vendor/cerdic/css-tidy/Docs/elementindex_csstidy.html +0 -405
  49. vendor/cerdic/css-tidy/Docs/errors.html +0 -51
  50. vendor/cerdic/css-tidy/Docs/index.html +0 -68
  51. vendor/cerdic/css-tidy/Docs/index.php +0 -0
  52. vendor/cerdic/css-tidy/Docs/li_csstidy.html +0 -68
  53. vendor/cerdic/css-tidy/Docs/media/background.png +0 -0
  54. vendor/cerdic/css-tidy/Docs/media/empty.png +0 -0
  55. vendor/cerdic/css-tidy/Docs/media/index.php +0 -0
  56. vendor/cerdic/css-tidy/Docs/media/style.css +0 -197
  57. vendor/cerdic/css-tidy/Docs/todolist.html +0 -77
  58. vendor/cerdic/css-tidy/README +0 -49
  59. vendor/composer/ClassLoader.php +3 -7
  60. vendor/composer/LICENSE +0 -21
  61. vendor/composer/autoload_real.php +7 -7
  62. vendor/composer/autoload_static.php +5 -5
  63. vendor/j4mie/idiorm/CONTRIBUTING.md +0 -16
  64. vendor/j4mie/idiorm/README.markdown +0 -205
  65. vendor/j4mie/idiorm/docs/Makefile +0 -153
  66. vendor/j4mie/idiorm/docs/conf.py +0 -242
  67. vendor/j4mie/idiorm/docs/configuration.rst +0 -378
  68. vendor/j4mie/idiorm/docs/connections.rst +0 -80
  69. vendor/j4mie/idiorm/docs/index.php +0 -0
  70. vendor/j4mie/idiorm/docs/index.rst +0 -29
  71. vendor/j4mie/idiorm/docs/installation.rst +0 -19
  72. vendor/j4mie/idiorm/docs/make.bat +0 -190
  73. vendor/j4mie/idiorm/docs/models.rst +0 -161
  74. vendor/j4mie/idiorm/docs/philosophy.rst +0 -34
  75. vendor/j4mie/idiorm/docs/querying.rst +0 -806
  76. vendor/j4mie/idiorm/docs/transactions.rst +0 -21
  77. vendor/j4mie/paris/CONTRIBUTING.md +0 -16
  78. vendor/j4mie/paris/README.markdown +0 -154
  79. vendor/j4mie/paris/docs/Makefile +0 -153
  80. vendor/j4mie/paris/docs/associations.rst +0 -279
  81. vendor/j4mie/paris/docs/conf.py +0 -242
  82. vendor/j4mie/paris/docs/configuration.rst +0 -95
  83. vendor/j4mie/paris/docs/connections.rst +0 -40
  84. vendor/j4mie/paris/docs/filters.rst +0 -76
  85. vendor/j4mie/paris/docs/index.php +0 -0
  86. vendor/j4mie/paris/docs/index.rst +0 -34
  87. vendor/j4mie/paris/docs/installation.rst +0 -19
  88. vendor/j4mie/paris/docs/make.bat +0 -190
  89. vendor/j4mie/paris/docs/migrations.rst +0 -24
  90. vendor/j4mie/paris/docs/models.rst +0 -87
  91. vendor/j4mie/paris/docs/philosophy.rst +0 -6
  92. vendor/j4mie/paris/docs/querying.rst +0 -197
  93. vendor/j4mie/paris/docs/transactions.rst +0 -21
  94. vendor/j4mie/paris/docs/validation.rst +0 -27
  95. vendor/mtdowling/cron-expression/CHANGELOG.md +0 -36
  96. vendor/mtdowling/cron-expression/LICENSE +0 -19
  97. vendor/mtdowling/cron-expression/README.md +0 -71
  98. vendor/nesbot/carbon/LICENSE +0 -19
  99. vendor/nesbot/carbon/readme.md +0 -92
  100. vendor/sabberworm/php-css-parser/CHANGELOG.md +0 -205
  101. vendor/sabberworm/php-css-parser/README.md +0 -227
assets/css/{admin.a72d0225.css → admin.c73ddfe6.css} RENAMED
@@ -1672,7 +1672,7 @@ body.mailpoet_modal_opened {
1672
  .cm-s-default .cm-property,
1673
  .cm-s-default .cm-operator {}
1674
  .cm-s-default .cm-variable-2 {color: #05a;}
1675
- .cm-s-default .cm-variable-3 {color: #085;}
1676
  .cm-s-default .cm-comment {color: #a50;}
1677
  .cm-s-default .cm-string {color: #a11;}
1678
  .cm-s-default .cm-string-2 {color: #f50;}
1672
  .cm-s-default .cm-property,
1673
  .cm-s-default .cm-operator {}
1674
  .cm-s-default .cm-variable-2 {color: #05a;}
1675
+ .cm-s-default .cm-variable-3, .cm-s-default .cm-type {color: #085;}
1676
  .cm-s-default .cm-comment {color: #a50;}
1677
  .cm-s-default .cm-string {color: #a11;}
1678
  .cm-s-default .cm-string-2 {color: #f50;}
assets/css/manifest.json CHANGED
@@ -1,5 +1,5 @@
1
  {
2
- "admin.css": "admin.a72d0225.css",
3
  "importExport.css": "importExport.b3745466.css",
4
  "newsletter_editor.css": "newsletter_editor.8470e527.css",
5
  "public.css": "public.cae357df.css",
1
  {
2
+ "admin.css": "admin.c73ddfe6.css",
3
  "importExport.css": "importExport.b3745466.css",
4
  "newsletter_editor.css": "newsletter_editor.8470e527.css",
5
  "public.css": "public.cae357df.css",
assets/js/{admin.9af00351.js → admin.5cdc4c05.js} RENAMED
@@ -27593,10 +27593,6 @@ webpackJsonp([0],[
27593
 
27594
  var _classnames2 = _interopRequireDefault(_classnames);
27595
 
27596
- var _jquery = __webpack_require__(273);
27597
-
27598
- var _jquery2 = _interopRequireDefault(_jquery);
27599
-
27600
  var _mailpoet = __webpack_require__(274);
27601
 
27602
  var _mailpoet2 = _interopRequireDefault(_mailpoet);
@@ -27752,7 +27748,7 @@ webpackJsonp([0],[
27752
  className: 'row-title',
27753
  href: '?page=mailpoet-newsletter-editor&id=' + newsletter.id
27754
  },
27755
- newsletter.subject
27756
  )
27757
  ),
27758
  actions
27593
 
27594
  var _classnames2 = _interopRequireDefault(_classnames);
27595
 
 
 
 
 
27596
  var _mailpoet = __webpack_require__(274);
27597
 
27598
  var _mailpoet2 = _interopRequireDefault(_mailpoet);
27748
  className: 'row-title',
27749
  href: '?page=mailpoet-newsletter-editor&id=' + newsletter.id
27750
  },
27751
+ newsletter.queue.newsletter_rendered_subject || newsletter.subject
27752
  )
27753
  ),
27754
  actions
assets/js/{admin_vendor.5379b481.js → admin_vendor.d75e484a.js} RENAMED
File without changes
assets/js/{form_editor.18138b84.js → form_editor.1f90e137.js} RENAMED
@@ -2597,12 +2597,13 @@ webpackJsonp([2],{
2597
  // Fed to the mode parsers, provides helper functions to make
2598
  // parsers more succinct.
2599
 
2600
- var StringStream = function(string, tabSize) {
2601
  this.pos = this.start = 0;
2602
  this.string = string;
2603
  this.tabSize = tabSize || 8;
2604
  this.lastColumnPos = this.lastColumnValue = 0;
2605
  this.lineStart = 0;
 
2606
  };
2607
 
2608
  StringStream.prototype.eol = function () {return this.pos >= this.string.length};
@@ -2669,23 +2670,65 @@ webpackJsonp([2],{
2669
  try { return inner() }
2670
  finally { this.lineStart -= n; }
2671
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2672
 
2673
  // Compute a style array (an array starting with a mode generation
2674
  // -- for invalidation -- followed by pairs of end positions and
2675
  // style strings), which is used to highlight the tokens on the
2676
  // line.
2677
- function highlightLine(cm, line, state, forceToEnd) {
2678
  // A styles array always starts with a number identifying the
2679
  // mode/overlays that it is based on (for easy invalidation).
2680
  var st = [cm.state.modeGen], lineClasses = {};
2681
  // Compute the base array of styles
2682
- runMode(cm, line.text, cm.doc.mode, state, function (end, style) { return st.push(end, style); },
2683
- lineClasses, forceToEnd);
 
2684
 
2685
  // Run overlays, adjust style array.
2686
  var loop = function ( o ) {
2687
  var overlay = cm.state.overlays[o], i = 1, at = 0;
2688
- runMode(cm, line.text, overlay.mode, true, function (end, style) {
 
2689
  var start = i;
2690
  // Ensure there's a token end at the current position, and that i points at it
2691
  while (at < end) {
@@ -2709,49 +2752,54 @@ webpackJsonp([2],{
2709
  };
2710
 
2711
  for (var o = 0; o < cm.state.overlays.length; ++o) loop( o );
 
2712
 
2713
  return {styles: st, classes: lineClasses.bgClass || lineClasses.textClass ? lineClasses : null}
2714
  }
2715
 
2716
  function getLineStyles(cm, line, updateFrontier) {
2717
  if (!line.styles || line.styles[0] != cm.state.modeGen) {
2718
- var state = getStateBefore(cm, lineNo(line));
2719
- var result = highlightLine(cm, line, line.text.length > cm.options.maxHighlightLength ? copyState(cm.doc.mode, state) : state);
2720
- line.stateAfter = state;
 
 
2721
  line.styles = result.styles;
2722
  if (result.classes) { line.styleClasses = result.classes; }
2723
  else if (line.styleClasses) { line.styleClasses = null; }
2724
- if (updateFrontier === cm.doc.frontier) { cm.doc.frontier++; }
 
2725
  }
2726
  return line.styles
2727
  }
2728
 
2729
- function getStateBefore(cm, n, precise) {
2730
  var doc = cm.doc, display = cm.display;
2731
- if (!doc.mode.startState) { return true }
2732
- var pos = findStartLine(cm, n, precise), state = pos > doc.first && getLine(doc, pos-1).stateAfter;
2733
- if (!state) { state = startState(doc.mode); }
2734
- else { state = copyState(doc.mode, state); }
2735
- doc.iter(pos, n, function (line) {
2736
- processLine(cm, line.text, state);
2737
- var save = pos == n - 1 || pos % 5 == 0 || pos >= display.viewFrom && pos < display.viewTo;
2738
- line.stateAfter = save ? copyState(doc.mode, state) : null;
2739
- ++pos;
 
2740
  });
2741
- if (precise) { doc.frontier = pos; }
2742
- return state
2743
  }
2744
 
2745
  // Lightweight form of highlight -- proceed over this line and
2746
  // update state, but don't save a style array. Used for lines that
2747
  // aren't currently visible.
2748
- function processLine(cm, text, state, startAt) {
2749
  var mode = cm.doc.mode;
2750
- var stream = new StringStream(text, cm.options.tabSize);
2751
  stream.start = stream.pos = startAt || 0;
2752
- if (text == "") { callBlankLine(mode, state); }
2753
  while (!stream.eol()) {
2754
- readToken(mode, stream, state);
2755
  stream.start = stream.pos;
2756
  }
2757
  }
@@ -2772,26 +2820,26 @@ webpackJsonp([2],{
2772
  throw new Error("Mode " + mode.name + " failed to advance stream.")
2773
  }
2774
 
 
 
 
 
 
 
 
2775
  // Utility for getTokenAt and getLineTokens
2776
  function takeToken(cm, pos, precise, asArray) {
2777
- var getObj = function (copy) { return ({
2778
- start: stream.start, end: stream.pos,
2779
- string: stream.current(),
2780
- type: style || null,
2781
- state: copy ? copyState(doc.mode, state) : state
2782
- }); };
2783
-
2784
  var doc = cm.doc, mode = doc.mode, style;
2785
  pos = clipPos(doc, pos);
2786
- var line = getLine(doc, pos.line), state = getStateBefore(cm, pos.line, precise);
2787
- var stream = new StringStream(line.text, cm.options.tabSize), tokens;
2788
  if (asArray) { tokens = []; }
2789
  while ((asArray || stream.pos < pos.ch) && !stream.eol()) {
2790
  stream.start = stream.pos;
2791
- style = readToken(mode, stream, state);
2792
- if (asArray) { tokens.push(getObj(true)); }
2793
  }
2794
- return asArray ? tokens : getObj()
2795
  }
2796
 
2797
  function extractLineClasses(type, output) {
@@ -2809,21 +2857,21 @@ webpackJsonp([2],{
2809
  }
2810
 
2811
  // Run the given mode's parser over a line, calling f for each token.
2812
- function runMode(cm, text, mode, state, f, lineClasses, forceToEnd) {
2813
  var flattenSpans = mode.flattenSpans;
2814
  if (flattenSpans == null) { flattenSpans = cm.options.flattenSpans; }
2815
  var curStart = 0, curStyle = null;
2816
- var stream = new StringStream(text, cm.options.tabSize), style;
2817
  var inner = cm.options.addModeClass && [null];
2818
- if (text == "") { extractLineClasses(callBlankLine(mode, state), lineClasses); }
2819
  while (!stream.eol()) {
2820
  if (stream.pos > cm.options.maxHighlightLength) {
2821
  flattenSpans = false;
2822
- if (forceToEnd) { processLine(cm, text, state, stream.pos); }
2823
  stream.pos = text.length;
2824
  style = null;
2825
  } else {
2826
- style = extractLineClasses(readToken(mode, stream, state, inner), lineClasses);
2827
  }
2828
  if (inner) {
2829
  var mName = inner[0].name;
@@ -2858,8 +2906,9 @@ webpackJsonp([2],{
2858
  var lim = precise ? -1 : n - (cm.doc.mode.innerMode ? 1000 : 100);
2859
  for (var search = n; search > lim; --search) {
2860
  if (search <= doc.first) { return doc.first }
2861
- var line = getLine(doc, search - 1);
2862
- if (line.stateAfter && (!precise || search <= doc.frontier)) { return search }
 
2863
  var indented = countColumn(line.text, null, cm.options.tabSize);
2864
  if (minline == null || minindent > indented) {
2865
  minline = search - 1;
@@ -2869,6 +2918,23 @@ webpackJsonp([2],{
2869
  return minline
2870
  }
2871
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2872
  // LINE DATA STRUCTURE
2873
 
2874
  // Line objects. These hold state related to a line, including
@@ -3921,20 +3987,30 @@ webpackJsonp([2],{
3921
  var assign;
3922
  ((assign = wrappedLineExtent(cm, lineObj, preparedMeasure, y), begin = assign.begin, end = assign.end, assign));
3923
  }
3924
- pos = new Pos(lineNo$$1, begin);
3925
  var beginLeft = cursorCoords(cm, pos, "line", lineObj, preparedMeasure).left;
3926
  var dir = beginLeft < x ? 1 : -1;
3927
  var prevDiff, diff = beginLeft - x, prevPos;
3928
- do {
 
3929
  prevDiff = diff;
3930
  prevPos = pos;
3931
- pos = moveVisually(cm, lineObj, pos, dir);
3932
- if (pos == null || pos.ch < begin || end <= (pos.sticky == "before" ? pos.ch - 1 : pos.ch)) {
3933
- pos = prevPos;
3934
- break
 
 
 
 
3935
  }
3936
  diff = cursorCoords(cm, pos, "line", lineObj, preparedMeasure).left - x;
3937
- } while ((dir < 0) != (diff < 0) && (Math.abs(diff) <= Math.abs(prevDiff)))
 
 
 
 
 
3938
  if (Math.abs(diff) > Math.abs(prevDiff)) {
3939
  if ((diff < 0) == (prevDiff < 0)) { throw new Error("Broke out of infinite loop in coordsCharInner") }
3940
  pos = prevPos;
@@ -5045,22 +5121,23 @@ webpackJsonp([2],{
5045
  // HIGHLIGHT WORKER
5046
 
5047
  function startWorker(cm, time) {
5048
- if (cm.doc.mode.startState && cm.doc.frontier < cm.display.viewTo)
5049
  { cm.state.highlight.set(time, bind(highlightWorker, cm)); }
5050
  }
5051
 
5052
  function highlightWorker(cm) {
5053
  var doc = cm.doc;
5054
- if (doc.frontier < doc.first) { doc.frontier = doc.first; }
5055
- if (doc.frontier >= cm.display.viewTo) { return }
5056
  var end = +new Date + cm.options.workTime;
5057
- var state = copyState(doc.mode, getStateBefore(cm, doc.frontier));
5058
  var changedLines = [];
5059
 
5060
- doc.iter(doc.frontier, Math.min(doc.first + doc.size, cm.display.viewTo + 500), function (line) {
5061
- if (doc.frontier >= cm.display.viewFrom) { // Visible
5062
- var oldStyles = line.styles, tooLong = line.text.length > cm.options.maxHighlightLength;
5063
- var highlighted = highlightLine(cm, line, tooLong ? copyState(doc.mode, state) : state, true);
 
 
5064
  line.styles = highlighted.styles;
5065
  var oldCls = line.styleClasses, newCls = highlighted.classes;
5066
  if (newCls) { line.styleClasses = newCls; }
@@ -5068,19 +5145,22 @@ webpackJsonp([2],{
5068
  var ischange = !oldStyles || oldStyles.length != line.styles.length ||
5069
  oldCls != newCls && (!oldCls || !newCls || oldCls.bgClass != newCls.bgClass || oldCls.textClass != newCls.textClass);
5070
  for (var i = 0; !ischange && i < oldStyles.length; ++i) { ischange = oldStyles[i] != line.styles[i]; }
5071
- if (ischange) { changedLines.push(doc.frontier); }
5072
- line.stateAfter = tooLong ? state : copyState(doc.mode, state);
 
5073
  } else {
5074
  if (line.text.length <= cm.options.maxHighlightLength)
5075
- { processLine(cm, line.text, state); }
5076
- line.stateAfter = doc.frontier % 5 == 0 ? copyState(doc.mode, state) : null;
 
5077
  }
5078
- ++doc.frontier;
5079
  if (+new Date > end) {
5080
  startWorker(cm, cm.options.workDelay);
5081
  return true
5082
  }
5083
  });
 
 
5084
  if (changedLines.length) { runInOp(cm, function () {
5085
  for (var i = 0; i < changedLines.length; i++)
5086
  { regLineChange(cm, changedLines[i], "text"); }
@@ -5251,6 +5331,7 @@ webpackJsonp([2],{
5251
  updateSelection(cm);
5252
  updateScrollbars(cm, barMeasure);
5253
  setDocumentHeight(cm, barMeasure);
 
5254
  }
5255
 
5256
  update.signal(cm, "update", cm);
@@ -5624,7 +5705,7 @@ webpackJsonp([2],{
5624
  if (line.stateAfter) { line.stateAfter = null; }
5625
  if (line.styles) { line.styles = null; }
5626
  });
5627
- cm.doc.frontier = cm.doc.first;
5628
  startWorker(cm, 100);
5629
  cm.state.modeGen++;
5630
  if (cm.curOp) { regChange(cm); }
@@ -5958,8 +6039,8 @@ webpackJsonp([2],{
5958
  // include a given position (and optionally a second position).
5959
  // Otherwise, simply returns the range between the given positions.
5960
  // Used for cursor motion and such.
5961
- function extendRange(doc, range, head, other) {
5962
- if (doc.cm && doc.cm.display.shift || doc.extend) {
5963
  var anchor = range.anchor;
5964
  if (other) {
5965
  var posBefore = cmp(head, anchor) < 0;
@@ -5977,16 +6058,18 @@ webpackJsonp([2],{
5977
  }
5978
 
5979
  // Extend the primary selection range, discard the rest.
5980
- function extendSelection(doc, head, other, options) {
5981
- setSelection(doc, new Selection([extendRange(doc, doc.sel.primary(), head, other)], 0), options);
 
5982
  }
5983
 
5984
  // Extend all selections (pos is an array of selections with length
5985
  // equal the number of selections)
5986
  function extendSelections(doc, heads, options) {
5987
  var out = [];
 
5988
  for (var i = 0; i < doc.sel.ranges.length; i++)
5989
- { out[i] = extendRange(doc, doc.sel.ranges[i], heads[i], null); }
5990
  var newSel = normalizeSelection(out, doc.sel.primIndex);
5991
  setSelection(doc, newSel, options);
5992
  }
@@ -6370,8 +6453,7 @@ webpackJsonp([2],{
6370
  if (recomputeMaxLength) { cm.curOp.updateMaxLine = true; }
6371
  }
6372
 
6373
- // Adjust frontier, schedule worker
6374
- doc.frontier = Math.min(doc.frontier, from.line);
6375
  startWorker(cm, 400);
6376
 
6377
  var lendiff = change.text.length - (to.line - from.line) - 1;
@@ -6481,7 +6563,7 @@ webpackJsonp([2],{
6481
  //
6482
  // See also http://marijnhaverbeke.nl/blog/codemirror-line-tree.html
6483
 
6484
- var LeafChunk = function(lines) {
6485
  var this$1 = this;
6486
 
6487
  this.lines = lines;
@@ -6492,47 +6574,49 @@ webpackJsonp([2],{
6492
  height += lines[i].height;
6493
  }
6494
  this.height = height;
6495
- };
6496
 
6497
- LeafChunk.prototype.chunkSize = function () { return this.lines.length };
 
6498
 
6499
- // Remove the n lines at offset 'at'.
6500
- LeafChunk.prototype.removeInner = function (at, n) {
6501
  var this$1 = this;
6502
 
6503
- for (var i = at, e = at + n; i < e; ++i) {
6504
- var line = this$1.lines[i];
6505
- this$1.height -= line.height;
6506
- cleanUpLine(line);
6507
- signalLater(line, "delete");
6508
- }
6509
- this.lines.splice(at, n);
6510
- };
6511
 
6512
- // Helper used to collapse a small branch into a single leaf.
6513
- LeafChunk.prototype.collapse = function (lines) {
6514
- lines.push.apply(lines, this.lines);
6515
- };
6516
 
6517
- // Insert the given array of lines at offset 'at', count them as
6518
- // having the given height.
6519
- LeafChunk.prototype.insertInner = function (at, lines, height) {
6520
  var this$1 = this;
6521
 
6522
- this.height += height;
6523
- this.lines = this.lines.slice(0, at).concat(lines).concat(this.lines.slice(at));
6524
- for (var i = 0; i < lines.length; ++i) { lines[i].parent = this$1; }
6525
- };
6526
 
6527
- // Used to iterate over a part of the tree.
6528
- LeafChunk.prototype.iterN = function (at, n, op) {
6529
  var this$1 = this;
6530
 
6531
- for (var e = at + n; at < e; ++at)
6532
- { if (op(this$1.lines[at])) { return true } }
 
6533
  };
6534
 
6535
- var BranchChunk = function(children) {
6536
  var this$1 = this;
6537
 
6538
  this.children = children;
@@ -6545,104 +6629,106 @@ webpackJsonp([2],{
6545
  this.size = size;
6546
  this.height = height;
6547
  this.parent = null;
6548
- };
6549
 
6550
- BranchChunk.prototype.chunkSize = function () { return this.size };
 
6551
 
6552
- BranchChunk.prototype.removeInner = function (at, n) {
6553
  var this$1 = this;
6554
 
6555
- this.size -= n;
6556
- for (var i = 0; i < this.children.length; ++i) {
6557
- var child = this$1.children[i], sz = child.chunkSize();
6558
- if (at < sz) {
6559
- var rm = Math.min(n, sz - at), oldHeight = child.height;
6560
- child.removeInner(at, rm);
6561
- this$1.height -= oldHeight - child.height;
6562
- if (sz == rm) { this$1.children.splice(i--, 1); child.parent = null; }
6563
- if ((n -= rm) == 0) { break }
6564
- at = 0;
6565
- } else { at -= sz; }
6566
- }
6567
- // If the result is smaller than 25 lines, ensure that it is a
6568
- // single leaf node.
6569
- if (this.size - n < 25 &&
6570
- (this.children.length > 1 || !(this.children[0] instanceof LeafChunk))) {
6571
- var lines = [];
6572
- this.collapse(lines);
6573
- this.children = [new LeafChunk(lines)];
6574
- this.children[0].parent = this;
6575
- }
6576
- };
6577
 
6578
- BranchChunk.prototype.collapse = function (lines) {
6579
  var this$1 = this;
6580
 
6581
- for (var i = 0; i < this.children.length; ++i) { this$1.children[i].collapse(lines); }
6582
- };
6583
 
6584
- BranchChunk.prototype.insertInner = function (at, lines, height) {
6585
  var this$1 = this;
6586
 
6587
- this.size += lines.length;
6588
- this.height += height;
6589
- for (var i = 0; i < this.children.length; ++i) {
6590
- var child = this$1.children[i], sz = child.chunkSize();
6591
- if (at <= sz) {
6592
- child.insertInner(at, lines, height);
6593
- if (child.lines && child.lines.length > 50) {
6594
- // To avoid memory thrashing when child.lines is huge (e.g. first view of a large file), it's never spliced.
6595
- // Instead, small slices are taken. They're taken in order because sequential memory accesses are fastest.
6596
- var remaining = child.lines.length % 25 + 25;
6597
- for (var pos = remaining; pos < child.lines.length;) {
6598
- var leaf = new LeafChunk(child.lines.slice(pos, pos += 25));
6599
- child.height -= leaf.height;
6600
- this$1.children.splice(++i, 0, leaf);
6601
- leaf.parent = this$1;
 
 
 
6602
  }
6603
- child.lines = child.lines.slice(0, remaining);
6604
- this$1.maybeSpill();
6605
  }
6606
- break
6607
  }
6608
- at -= sz;
6609
- }
6610
- };
6611
 
6612
- // When a node has grown, check whether it should be split.
6613
- BranchChunk.prototype.maybeSpill = function () {
6614
- if (this.children.length <= 10) { return }
6615
- var me = this;
6616
- do {
6617
- var spilled = me.children.splice(me.children.length - 5, 5);
6618
- var sibling = new BranchChunk(spilled);
6619
- if (!me.parent) { // Become the parent node
6620
- var copy = new BranchChunk(me.children);
6621
- copy.parent = me;
6622
- me.children = [copy, sibling];
6623
- me = copy;
6624
- } else {
6625
- me.size -= sibling.size;
6626
- me.height -= sibling.height;
6627
- var myIndex = indexOf(me.parent.children, me);
6628
- me.parent.children.splice(myIndex + 1, 0, sibling);
6629
- }
6630
- sibling.parent = me.parent;
6631
- } while (me.children.length > 10)
6632
- me.parent.maybeSpill();
6633
- };
6634
 
6635
- BranchChunk.prototype.iterN = function (at, n, op) {
6636
  var this$1 = this;
6637
 
6638
- for (var i = 0; i < this.children.length; ++i) {
6639
- var child = this$1.children[i], sz = child.chunkSize();
6640
- if (at < sz) {
6641
- var used = Math.min(n, sz - at);
6642
- if (child.iterN(at, used, op)) { return true }
6643
- if ((n -= used) == 0) { break }
6644
- at = 0;
6645
- } else { at -= sz; }
 
6646
  }
6647
  };
6648
 
@@ -7012,7 +7098,7 @@ webpackJsonp([2],{
7012
  this.scrollTop = this.scrollLeft = 0;
7013
  this.cantEdit = false;
7014
  this.cleanGeneration = 1;
7015
- this.frontier = firstLine;
7016
  var start = Pos(firstLine, 0);
7017
  this.sel = simpleSelection(start);
7018
  this.history = new History(null);
@@ -7535,8 +7621,8 @@ webpackJsonp([2],{
7535
  // garbage collected.
7536
 
7537
  function forEachCodeMirror(f) {
7538
- if (!document.body.getElementsByClassName) { return }
7539
- var byClass = document.body.getElementsByClassName("CodeMirror");
7540
  for (var i = 0; i < byClass.length; i++) {
7541
  var cm = byClass[i].CodeMirror;
7542
  if (cm) { f(cm); }
@@ -7710,11 +7796,8 @@ webpackJsonp([2],{
7710
  return name == "Ctrl" || name == "Alt" || name == "Shift" || name == "Mod"
7711
  }
7712
 
7713
- // Look up the name of a key as indicated by an event object.
7714
- function keyName(event, noShift) {
7715
- if (presto && event.keyCode == 34 && event["char"]) { return false }
7716
- var base = keyNames[event.keyCode], name = base;
7717
- if (name == null || event.altGraphKey) { return false }
7718
  if (event.altKey && base != "Alt") { name = "Alt-" + name; }
7719
  if ((flipCtrlCmd ? event.metaKey : event.ctrlKey) && base != "Ctrl") { name = "Ctrl-" + name; }
7720
  if ((flipCtrlCmd ? event.ctrlKey : event.metaKey) && base != "Cmd") { name = "Cmd-" + name; }
@@ -7722,6 +7805,14 @@ webpackJsonp([2],{
7722
  return name
7723
  }
7724
 
 
 
 
 
 
 
 
 
7725
  function getKeyMap(val) {
7726
  return typeof val == "string" ? keyMap[val] : val
7727
  }
@@ -7948,6 +8039,9 @@ webpackJsonp([2],{
7948
  || lookupKey(name, cm.options.keyMap, handle, cm)
7949
  }
7950
 
 
 
 
7951
  var stopSeq = new Delayed;
7952
  function dispatchKey(cm, name, e, handle) {
7953
  var seq = cm.state.keySeq;
@@ -8059,6 +8153,37 @@ webpackJsonp([2],{
8059
  cm.display.input.onKeyPress(e);
8060
  }
8061
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8062
  // A mouse down can be a single click, double click, triple click,
8063
  // start of selection drag, start of text drag, new cursor
8064
  // (ctrl-click), rectangle drag (alt-drag), or xwin
@@ -8080,62 +8205,79 @@ webpackJsonp([2],{
8080
  return
8081
  }
8082
  if (clickInGutter(cm, e)) { return }
8083
- var start = posFromMouse(cm, e);
8084
  window.focus();
8085
 
8086
- switch (e_button(e)) {
8087
- case 1:
8088
- // #3261: make sure, that we're not starting a second selection
8089
- if (cm.state.selectingText)
8090
- { cm.state.selectingText(e); }
8091
- else if (start)
8092
- { leftButtonDown(cm, e, start); }
8093
- else if (e_target(e) == display.scroller)
8094
- { e_preventDefault(e); }
8095
- break
8096
- case 2:
8097
- if (webkit) { cm.state.lastMiddleDown = +new Date; }
8098
- if (start) { extendSelection(cm.doc, start); }
8099
  setTimeout(function () { return display.input.focus(); }, 20);
8100
- e_preventDefault(e);
8101
- break
8102
- case 3:
8103
  if (captureRightClick) { onContextMenu(cm, e); }
8104
  else { delayBlurEvent(cm); }
8105
- break
8106
  }
8107
  }
8108
 
8109
- var lastClick;
8110
- var lastDoubleClick;
8111
- function leftButtonDown(cm, e, start) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8112
  if (ie) { setTimeout(bind(ensureFocus, cm), 0); }
8113
  else { cm.curOp.focus = activeElt(); }
8114
 
8115
- var now = +new Date, type;
8116
- if (lastDoubleClick && lastDoubleClick.time > now - 400 && cmp(lastDoubleClick.pos, start) == 0) {
8117
- type = "triple";
8118
- } else if (lastClick && lastClick.time > now - 400 && cmp(lastClick.pos, start) == 0) {
8119
- type = "double";
8120
- lastDoubleClick = {time: now, pos: start};
8121
- } else {
8122
- type = "single";
8123
- lastClick = {time: now, pos: start};
8124
- }
8125
 
8126
- var sel = cm.doc.sel, modifier = mac ? e.metaKey : e.ctrlKey, contained;
8127
  if (cm.options.dragDrop && dragAndDrop && !cm.isReadOnly() &&
8128
- type == "single" && (contained = sel.contains(start)) > -1 &&
8129
- (cmp((contained = sel.ranges[contained]).from(), start) < 0 || start.xRel > 0) &&
8130
- (cmp(contained.to(), start) > 0 || start.xRel < 0))
8131
- { leftButtonStartDrag(cm, e, start, modifier); }
8132
  else
8133
- { leftButtonSelect(cm, e, start, type, modifier); }
8134
  }
8135
 
8136
  // Start a text drag. When it ends, see if any dragging actually
8137
  // happen, and treat as a click if it didn't.
8138
- function leftButtonStartDrag(cm, e, start, modifier) {
8139
  var display = cm.display, moved = false;
8140
  var dragEnd = operation(cm, function (e) {
8141
  if (webkit) { display.scroller.draggable = false; }
@@ -8146,8 +8288,8 @@ webpackJsonp([2],{
8146
  off(display.scroller, "drop", dragEnd);
8147
  if (!moved) {
8148
  e_preventDefault(e);
8149
- if (!modifier)
8150
- { extendSelection(cm.doc, start); }
8151
  // Work around unexplainable focus problem in IE9 (#2127) and Chrome (#3081)
8152
  if (webkit || ie && ie_version == 9)
8153
  { setTimeout(function () {document.body.focus(); display.input.focus();}, 20); }
@@ -8156,13 +8298,13 @@ webpackJsonp([2],{
8156
  }
8157
  });
8158
  var mouseMove = function(e2) {
8159
- moved = moved || Math.abs(e.clientX - e2.clientX) + Math.abs(e.clientY - e2.clientY) >= 10;
8160
  };
8161
  var dragStart = function () { return moved = true; };
8162
  // Let the drag handler handle this.
8163
  if (webkit) { display.scroller.draggable = true; }
8164
  cm.state.draggingText = dragEnd;
8165
- dragEnd.copy = mac ? e.altKey : e.ctrlKey;
8166
  // IE's approach to draggable
8167
  if (display.scroller.dragDrop) { display.scroller.dragDrop(); }
8168
  on(document, "mouseup", dragEnd);
@@ -8174,13 +8316,21 @@ webpackJsonp([2],{
8174
  setTimeout(function () { return display.input.focus(); }, 20);
8175
  }
8176
 
 
 
 
 
 
 
 
 
8177
  // Normal selection, as opposed to text dragging.
8178
- function leftButtonSelect(cm, e, start, type, addNew) {
8179
  var display = cm.display, doc = cm.doc;
8180
- e_preventDefault(e);
8181
 
8182
  var ourRange, ourIndex, startSel = doc.sel, ranges = startSel.ranges;
8183
- if (addNew && !e.shiftKey) {
8184
  ourIndex = doc.sel.contains(start);
8185
  if (ourIndex > -1)
8186
  { ourRange = ranges[ourIndex]; }
@@ -8191,28 +8341,19 @@ webpackJsonp([2],{
8191
  ourIndex = doc.sel.primIndex;
8192
  }
8193
 
8194
- if (chromeOS ? e.shiftKey && e.metaKey : e.altKey) {
8195
- type = "rect";
8196
- if (!addNew) { ourRange = new Range(start, start); }
8197
- start = posFromMouse(cm, e, true, true);
8198
  ourIndex = -1;
8199
- } else if (type == "double") {
8200
- var word = cm.findWordAt(start);
8201
- if (cm.display.shift || doc.extend)
8202
- { ourRange = extendRange(doc, ourRange, word.anchor, word.head); }
8203
- else
8204
- { ourRange = word; }
8205
- } else if (type == "triple") {
8206
- var line = new Range(Pos(start.line, 0), clipPos(doc, Pos(start.line + 1, 0)));
8207
- if (cm.display.shift || doc.extend)
8208
- { ourRange = extendRange(doc, ourRange, line.anchor, line.head); }
8209
- else
8210
- { ourRange = line; }
8211
  } else {
8212
- ourRange = extendRange(doc, ourRange, start);
 
 
 
 
8213
  }
8214
 
8215
- if (!addNew) {
8216
  ourIndex = 0;
8217
  setSelection(doc, new Selection([ourRange], 0), sel_mouse);
8218
  startSel = doc.sel;
@@ -8220,7 +8361,7 @@ webpackJsonp([2],{
8220
  ourIndex = ranges.length;
8221
  setSelection(doc, normalizeSelection(ranges.concat([ourRange]), ourIndex),
8222
  {scroll: false, origin: "*mouse"});
8223
- } else if (ranges.length > 1 && ranges[ourIndex].empty() && type == "single" && !e.shiftKey) {
8224
  setSelection(doc, normalizeSelection(ranges.slice(0, ourIndex).concat(ranges.slice(ourIndex + 1)), 0),
8225
  {scroll: false, origin: "*mouse"});
8226
  startSel = doc.sel;
@@ -8233,7 +8374,7 @@ webpackJsonp([2],{
8233
  if (cmp(lastPos, pos) == 0) { return }
8234
  lastPos = pos;
8235
 
8236
- if (type == "rect") {
8237
  var ranges = [], tabSize = cm.options.tabSize;
8238
  var startCol = countColumn(getLine(doc, start.line).text, start.ch, tabSize);
8239
  var posCol = countColumn(getLine(doc, pos.line).text, pos.ch, tabSize);
@@ -8252,20 +8393,14 @@ webpackJsonp([2],{
8252
  cm.scrollIntoView(pos);
8253
  } else {
8254
  var oldRange = ourRange;
8255
- var anchor = oldRange.anchor, head = pos;
8256
- if (type != "single") {
8257
- var range$$1;
8258
- if (type == "double")
8259
- { range$$1 = cm.findWordAt(pos); }
8260
- else
8261
- { range$$1 = new Range(Pos(pos.line, 0), clipPos(doc, Pos(pos.line + 1, 0))); }
8262
- if (cmp(range$$1.anchor, anchor) > 0) {
8263
- head = range$$1.head;
8264
- anchor = minPos(oldRange.from(), range$$1.anchor);
8265
- } else {
8266
- head = range$$1.anchor;
8267
- anchor = maxPos(oldRange.to(), range$$1.head);
8268
- }
8269
  }
8270
  var ranges$1 = startSel.ranges.slice(0);
8271
  ranges$1[ourIndex] = new Range(clipPos(doc, anchor), head);
@@ -8282,7 +8417,7 @@ webpackJsonp([2],{
8282
 
8283
  function extend(e) {
8284
  var curCount = ++counter;
8285
- var cur = posFromMouse(cm, e, true, type == "rect");
8286
  if (!cur) { return }
8287
  if (cmp(cur, lastPos) != 0) {
8288
  cm.curOp.focus = activeElt();
@@ -8448,6 +8583,7 @@ webpackJsonp([2],{
8448
  if (next.attach) { next.attach(cm, prev || null); }
8449
  });
8450
  option("extraKeys", null);
 
8451
 
8452
  option("lineWrapping", false, wrappingChanged, true);
8453
  option("gutters", [], function (cm) {
@@ -8475,14 +8611,12 @@ webpackJsonp([2],{
8475
 
8476
  option("resetSelectionOnContextMenu", true);
8477
  option("lineWiseCopyCut", true);
 
8478
 
8479
  option("readOnly", false, function (cm, val) {
8480
  if (val == "nocursor") {
8481
  onBlur(cm);
8482
  cm.display.input.blur();
8483
- cm.display.disabled = true;
8484
- } else {
8485
- cm.display.disabled = false;
8486
  }
8487
  cm.display.input.readOnlyChanged(val);
8488
  });
@@ -8747,7 +8881,7 @@ webpackJsonp([2],{
8747
  // Fall back to "prev" when the mode doesn't have an indentation
8748
  // method.
8749
  if (!doc.mode.indent) { how = "prev"; }
8750
- else { state = getStateBefore(cm, n); }
8751
  }
8752
 
8753
  var tabSize = cm.options.tabSize;
@@ -8823,7 +8957,7 @@ webpackJsonp([2],{
8823
  for (var i = 0; i < lastCopied.text.length; i++)
8824
  { multiPaste.push(doc.splitLines(lastCopied.text[i])); }
8825
  }
8826
- } else if (textLines.length == sel.ranges.length) {
8827
  multiPaste = map(textLines, function (l) { return [l]; });
8828
  }
8829
  }
@@ -9083,7 +9217,7 @@ webpackJsonp([2],{
9083
  getStateAfter: function(line, precise) {
9084
  var doc = this.doc;
9085
  line = clipLine(doc, line == null ? doc.first + doc.size - 1: line);
9086
- return getStateBefore(this, line + 1, precise)
9087
  },
9088
 
9089
  cursorCoords: function(start, mode) {
@@ -9164,6 +9298,7 @@ webpackJsonp([2],{
9164
  triggerOnKeyDown: methodOp(onKeyDown),
9165
  triggerOnKeyPress: methodOp(onKeyPress),
9166
  triggerOnKeyUp: onKeyUp,
 
9167
 
9168
  execCommand: function(cmd) {
9169
  if (commands.hasOwnProperty(cmd))
@@ -10303,6 +10438,7 @@ webpackJsonp([2],{
10303
 
10304
  TextareaInput.prototype.readOnlyChanged = function (val) {
10305
  if (!val) { this.reset(); }
 
10306
  };
10307
 
10308
  TextareaInput.prototype.setUneditable = function () {};
@@ -10458,7 +10594,7 @@ webpackJsonp([2],{
10458
 
10459
  addLegacyProps(CodeMirror$1);
10460
 
10461
- CodeMirror$1.version = "5.26.0";
10462
 
10463
  return CodeMirror$1;
10464
 
2597
  // Fed to the mode parsers, provides helper functions to make
2598
  // parsers more succinct.
2599
 
2600
+ var StringStream = function(string, tabSize, lineOracle) {
2601
  this.pos = this.start = 0;
2602
  this.string = string;
2603
  this.tabSize = tabSize || 8;
2604
  this.lastColumnPos = this.lastColumnValue = 0;
2605
  this.lineStart = 0;
2606
+ this.lineOracle = lineOracle;
2607
  };
2608
 
2609
  StringStream.prototype.eol = function () {return this.pos >= this.string.length};
2670
  try { return inner() }
2671
  finally { this.lineStart -= n; }
2672
  };
2673
+ StringStream.prototype.lookAhead = function (n) {
2674
+ var oracle = this.lineOracle;
2675
+ return oracle && oracle.lookAhead(n)
2676
+ };
2677
+
2678
+ var SavedContext = function(state, lookAhead) {
2679
+ this.state = state;
2680
+ this.lookAhead = lookAhead;
2681
+ };
2682
+
2683
+ var Context = function(doc, state, line, lookAhead) {
2684
+ this.state = state;
2685
+ this.doc = doc;
2686
+ this.line = line;
2687
+ this.maxLookAhead = lookAhead || 0;
2688
+ };
2689
+
2690
+ Context.prototype.lookAhead = function (n) {
2691
+ var line = this.doc.getLine(this.line + n);
2692
+ if (line != null && n > this.maxLookAhead) { this.maxLookAhead = n; }
2693
+ return line
2694
+ };
2695
+
2696
+ Context.prototype.nextLine = function () {
2697
+ this.line++;
2698
+ if (this.maxLookAhead > 0) { this.maxLookAhead--; }
2699
+ };
2700
+
2701
+ Context.fromSaved = function (doc, saved, line) {
2702
+ if (saved instanceof SavedContext)
2703
+ { return new Context(doc, copyState(doc.mode, saved.saved), line, saved.lookAhead) }
2704
+ else
2705
+ { return new Context(doc, copyState(doc.mode, saved), line) }
2706
+ };
2707
+
2708
+ Context.prototype.save = function (copy) {
2709
+ var state = copy !== false ? copyState(this.doc.mode, this.state) : this.state;
2710
+ return this.maxLookAhead > 0 ? new SavedContext(state, this.maxLookAhead) : state
2711
+ };
2712
+
2713
 
2714
  // Compute a style array (an array starting with a mode generation
2715
  // -- for invalidation -- followed by pairs of end positions and
2716
  // style strings), which is used to highlight the tokens on the
2717
  // line.
2718
+ function highlightLine(cm, line, context, forceToEnd) {
2719
  // A styles array always starts with a number identifying the
2720
  // mode/overlays that it is based on (for easy invalidation).
2721
  var st = [cm.state.modeGen], lineClasses = {};
2722
  // Compute the base array of styles
2723
+ runMode(cm, line.text, cm.doc.mode, context, function (end, style) { return st.push(end, style); },
2724
+ lineClasses, forceToEnd);
2725
+ var state = context.state;
2726
 
2727
  // Run overlays, adjust style array.
2728
  var loop = function ( o ) {
2729
  var overlay = cm.state.overlays[o], i = 1, at = 0;
2730
+ context.state = true;
2731
+ runMode(cm, line.text, overlay.mode, context, function (end, style) {
2732
  var start = i;
2733
  // Ensure there's a token end at the current position, and that i points at it
2734
  while (at < end) {
2752
  };
2753
 
2754
  for (var o = 0; o < cm.state.overlays.length; ++o) loop( o );
2755
+ context.state = state;
2756
 
2757
  return {styles: st, classes: lineClasses.bgClass || lineClasses.textClass ? lineClasses : null}
2758
  }
2759
 
2760
  function getLineStyles(cm, line, updateFrontier) {
2761
  if (!line.styles || line.styles[0] != cm.state.modeGen) {
2762
+ var context = getContextBefore(cm, lineNo(line));
2763
+ var resetState = line.text.length > cm.options.maxHighlightLength && copyState(cm.doc.mode, context.state);
2764
+ var result = highlightLine(cm, line, context);
2765
+ if (resetState) { context.state = resetState; }
2766
+ line.stateAfter = context.save(!resetState);
2767
  line.styles = result.styles;
2768
  if (result.classes) { line.styleClasses = result.classes; }
2769
  else if (line.styleClasses) { line.styleClasses = null; }
2770
+ if (updateFrontier === cm.doc.highlightFrontier)
2771
+ { cm.doc.modeFrontier = Math.max(cm.doc.modeFrontier, ++cm.doc.highlightFrontier); }
2772
  }
2773
  return line.styles
2774
  }
2775
 
2776
+ function getContextBefore(cm, n, precise) {
2777
  var doc = cm.doc, display = cm.display;
2778
+ if (!doc.mode.startState) { return new Context(doc, true, n) }
2779
+ var start = findStartLine(cm, n, precise);
2780
+ var saved = start > doc.first && getLine(doc, start - 1).stateAfter;
2781
+ var context = saved ? Context.fromSaved(doc, saved, start) : new Context(doc, startState(doc.mode), start);
2782
+
2783
+ doc.iter(start, n, function (line) {
2784
+ processLine(cm, line.text, context);
2785
+ var pos = context.line;
2786
+ line.stateAfter = pos == n - 1 || pos % 5 == 0 || pos >= display.viewFrom && pos < display.viewTo ? context.save() : null;
2787
+ context.nextLine();
2788
  });
2789
+ if (precise) { doc.modeFrontier = context.line; }
2790
+ return context
2791
  }
2792
 
2793
  // Lightweight form of highlight -- proceed over this line and
2794
  // update state, but don't save a style array. Used for lines that
2795
  // aren't currently visible.
2796
+ function processLine(cm, text, context, startAt) {
2797
  var mode = cm.doc.mode;
2798
+ var stream = new StringStream(text, cm.options.tabSize, context);
2799
  stream.start = stream.pos = startAt || 0;
2800
+ if (text == "") { callBlankLine(mode, context.state); }
2801
  while (!stream.eol()) {
2802
+ readToken(mode, stream, context.state);
2803
  stream.start = stream.pos;
2804
  }
2805
  }
2820
  throw new Error("Mode " + mode.name + " failed to advance stream.")
2821
  }
2822
 
2823
+ var Token = function(stream, type, state) {
2824
+ this.start = stream.start; this.end = stream.pos;
2825
+ this.string = stream.current();
2826
+ this.type = type || null;
2827
+ this.state = state;
2828
+ };
2829
+
2830
  // Utility for getTokenAt and getLineTokens
2831
  function takeToken(cm, pos, precise, asArray) {
 
 
 
 
 
 
 
2832
  var doc = cm.doc, mode = doc.mode, style;
2833
  pos = clipPos(doc, pos);
2834
+ var line = getLine(doc, pos.line), context = getContextBefore(cm, pos.line, precise);
2835
+ var stream = new StringStream(line.text, cm.options.tabSize, context), tokens;
2836
  if (asArray) { tokens = []; }
2837
  while ((asArray || stream.pos < pos.ch) && !stream.eol()) {
2838
  stream.start = stream.pos;
2839
+ style = readToken(mode, stream, context.state);
2840
+ if (asArray) { tokens.push(new Token(stream, style, copyState(doc.mode, context.state))); }
2841
  }
2842
+ return asArray ? tokens : new Token(stream, style, context.state)
2843
  }
2844
 
2845
  function extractLineClasses(type, output) {
2857
  }
2858
 
2859
  // Run the given mode's parser over a line, calling f for each token.
2860
+ function runMode(cm, text, mode, context, f, lineClasses, forceToEnd) {
2861
  var flattenSpans = mode.flattenSpans;
2862
  if (flattenSpans == null) { flattenSpans = cm.options.flattenSpans; }
2863
  var curStart = 0, curStyle = null;
2864
+ var stream = new StringStream(text, cm.options.tabSize, context), style;
2865
  var inner = cm.options.addModeClass && [null];
2866
+ if (text == "") { extractLineClasses(callBlankLine(mode, context.state), lineClasses); }
2867
  while (!stream.eol()) {
2868
  if (stream.pos > cm.options.maxHighlightLength) {
2869
  flattenSpans = false;
2870
+ if (forceToEnd) { processLine(cm, text, context, stream.pos); }
2871
  stream.pos = text.length;
2872
  style = null;
2873
  } else {
2874
+ style = extractLineClasses(readToken(mode, stream, context.state, inner), lineClasses);
2875
  }
2876
  if (inner) {
2877
  var mName = inner[0].name;
2906
  var lim = precise ? -1 : n - (cm.doc.mode.innerMode ? 1000 : 100);
2907
  for (var search = n; search > lim; --search) {
2908
  if (search <= doc.first) { return doc.first }
2909
+ var line = getLine(doc, search - 1), after = line.stateAfter;
2910
+ if (after && (!precise || search + (after instanceof SavedContext ? after.lookAhead : 0) <= doc.modeFrontier))
2911
+ { return search }
2912
  var indented = countColumn(line.text, null, cm.options.tabSize);
2913
  if (minline == null || minindent > indented) {
2914
  minline = search - 1;
2918
  return minline
2919
  }
2920
 
2921
+ function retreatFrontier(doc, n) {
2922
+ doc.modeFrontier = Math.min(doc.modeFrontier, n);
2923
+ if (doc.highlightFrontier < n - 10) { return }
2924
+ var start = doc.first;
2925
+ for (var line = n - 1; line > start; line--) {
2926
+ var saved = getLine(doc, line).stateAfter;
2927
+ // change is on 3
2928
+ // state on line 1 looked ahead 2 -- so saw 3
2929
+ // test 1 + 2 < 3 should cover this
2930
+ if (saved && (!(saved instanceof SavedContext) || line + saved.lookAhead < n)) {
2931
+ start = line + 1;
2932
+ break
2933
+ }
2934
+ }
2935
+ doc.highlightFrontier = Math.min(doc.highlightFrontier, start);
2936
+ }
2937
+
2938
  // LINE DATA STRUCTURE
2939
 
2940
  // Line objects. These hold state related to a line, including
3987
  var assign;
3988
  ((assign = wrappedLineExtent(cm, lineObj, preparedMeasure, y), begin = assign.begin, end = assign.end, assign));
3989
  }
3990
+ pos = new Pos(lineNo$$1, Math.floor(begin + (end - begin) / 2));
3991
  var beginLeft = cursorCoords(cm, pos, "line", lineObj, preparedMeasure).left;
3992
  var dir = beginLeft < x ? 1 : -1;
3993
  var prevDiff, diff = beginLeft - x, prevPos;
3994
+ var steps = Math.ceil((end - begin) / 4);
3995
+ outer: do {
3996
  prevDiff = diff;
3997
  prevPos = pos;
3998
+ var i = 0;
3999
+ for (; i < steps; ++i) {
4000
+ var prevPos$1 = pos;
4001
+ pos = moveVisually(cm, lineObj, pos, dir);
4002
+ if (pos == null || pos.ch < begin || end <= (pos.sticky == "before" ? pos.ch - 1 : pos.ch)) {
4003
+ pos = prevPos$1;
4004
+ break outer
4005
+ }
4006
  }
4007
  diff = cursorCoords(cm, pos, "line", lineObj, preparedMeasure).left - x;
4008
+ if (steps > 1) {
4009
+ var diff_change_per_step = Math.abs(diff - prevDiff) / steps;
4010
+ steps = Math.min(steps, Math.ceil(Math.abs(diff) / diff_change_per_step));
4011
+ dir = diff < 0 ? 1 : -1;
4012
+ }
4013
+ } while (diff != 0 && (steps > 1 || ((dir < 0) != (diff < 0) && (Math.abs(diff) <= Math.abs(prevDiff)))))
4014
  if (Math.abs(diff) > Math.abs(prevDiff)) {
4015
  if ((diff < 0) == (prevDiff < 0)) { throw new Error("Broke out of infinite loop in coordsCharInner") }
4016
  pos = prevPos;
5121
  // HIGHLIGHT WORKER
5122
 
5123
  function startWorker(cm, time) {
5124
+ if (cm.doc.highlightFrontier < cm.display.viewTo)
5125
  { cm.state.highlight.set(time, bind(highlightWorker, cm)); }
5126
  }
5127
 
5128
  function highlightWorker(cm) {
5129
  var doc = cm.doc;
5130
+ if (doc.highlightFrontier >= cm.display.viewTo) { return }
 
5131
  var end = +new Date + cm.options.workTime;
5132
+ var context = getContextBefore(cm, doc.highlightFrontier);
5133
  var changedLines = [];
5134
 
5135
+ doc.iter(context.line, Math.min(doc.first + doc.size, cm.display.viewTo + 500), function (line) {
5136
+ if (context.line >= cm.display.viewFrom) { // Visible
5137
+ var oldStyles = line.styles;
5138
+ var resetState = line.text.length > cm.options.maxHighlightLength ? copyState(doc.mode, context.state) : null;
5139
+ var highlighted = highlightLine(cm, line, context, true);
5140
+ if (resetState) { context.state = resetState; }
5141
  line.styles = highlighted.styles;
5142
  var oldCls = line.styleClasses, newCls = highlighted.classes;
5143
  if (newCls) { line.styleClasses = newCls; }
5145
  var ischange = !oldStyles || oldStyles.length != line.styles.length ||
5146
  oldCls != newCls && (!oldCls || !newCls || oldCls.bgClass != newCls.bgClass || oldCls.textClass != newCls.textClass);
5147
  for (var i = 0; !ischange && i < oldStyles.length; ++i) { ischange = oldStyles[i] != line.styles[i]; }
5148
+ if (ischange) { changedLines.push(context.line); }
5149
+ line.stateAfter = context.save();
5150
+ context.nextLine();
5151
  } else {
5152
  if (line.text.length <= cm.options.maxHighlightLength)
5153
+ { processLine(cm, line.text, context); }
5154
+ line.stateAfter = context.line % 5 == 0 ? context.save() : null;
5155
+ context.nextLine();
5156
  }
 
5157
  if (+new Date > end) {
5158
  startWorker(cm, cm.options.workDelay);
5159
  return true
5160
  }
5161
  });
5162
+ doc.highlightFrontier = context.line;
5163
+ doc.modeFrontier = Math.max(doc.modeFrontier, context.line);
5164
  if (changedLines.length) { runInOp(cm, function () {
5165
  for (var i = 0; i < changedLines.length; i++)
5166
  { regLineChange(cm, changedLines[i], "text"); }
5331
  updateSelection(cm);
5332
  updateScrollbars(cm, barMeasure);
5333
  setDocumentHeight(cm, barMeasure);
5334
+ update.force = false;
5335
  }
5336
 
5337
  update.signal(cm, "update", cm);
5705
  if (line.stateAfter) { line.stateAfter = null; }
5706
  if (line.styles) { line.styles = null; }
5707
  });
5708
+ cm.doc.modeFrontier = cm.doc.highlightFrontier = cm.doc.first;
5709
  startWorker(cm, 100);
5710
  cm.state.modeGen++;
5711
  if (cm.curOp) { regChange(cm); }
6039
  // include a given position (and optionally a second position).
6040
  // Otherwise, simply returns the range between the given positions.
6041
  // Used for cursor motion and such.
6042
+ function extendRange(range, head, other, extend) {
6043
+ if (extend) {
6044
  var anchor = range.anchor;
6045
  if (other) {
6046
  var posBefore = cmp(head, anchor) < 0;
6058
  }
6059
 
6060
  // Extend the primary selection range, discard the rest.
6061
+ function extendSelection(doc, head, other, options, extend) {
6062
+ if (extend == null) { extend = doc.cm && (doc.cm.display.shift || doc.extend); }
6063
+ setSelection(doc, new Selection([extendRange(doc.sel.primary(), head, other, extend)], 0), options);
6064
  }
6065
 
6066
  // Extend all selections (pos is an array of selections with length
6067
  // equal the number of selections)
6068
  function extendSelections(doc, heads, options) {
6069
  var out = [];
6070
+ var extend = doc.cm && (doc.cm.display.shift || doc.extend);
6071
  for (var i = 0; i < doc.sel.ranges.length; i++)
6072
+ { out[i] = extendRange(doc.sel.ranges[i], heads[i], null, extend); }
6073
  var newSel = normalizeSelection(out, doc.sel.primIndex);
6074
  setSelection(doc, newSel, options);
6075
  }
6453
  if (recomputeMaxLength) { cm.curOp.updateMaxLine = true; }
6454
  }
6455
 
6456
+ retreatFrontier(doc, from.line);
 
6457
  startWorker(cm, 400);
6458
 
6459
  var lendiff = change.text.length - (to.line - from.line) - 1;
6563
  //
6564
  // See also http://marijnhaverbeke.nl/blog/codemirror-line-tree.html
6565
 
6566
+ function LeafChunk(lines) {
6567
  var this$1 = this;
6568
 
6569
  this.lines = lines;
6574
  height += lines[i].height;
6575
  }
6576
  this.height = height;
6577
+ }
6578
 
6579
+ LeafChunk.prototype = {
6580
+ chunkSize: function chunkSize() { return this.lines.length },
6581
 
6582
+ // Remove the n lines at offset 'at'.
6583
+ removeInner: function removeInner(at, n) {
6584
  var this$1 = this;
6585
 
6586
+ for (var i = at, e = at + n; i < e; ++i) {
6587
+ var line = this$1.lines[i];
6588
+ this$1.height -= line.height;
6589
+ cleanUpLine(line);
6590
+ signalLater(line, "delete");
6591
+ }
6592
+ this.lines.splice(at, n);
6593
+ },
6594
 
6595
+ // Helper used to collapse a small branch into a single leaf.
6596
+ collapse: function collapse(lines) {
6597
+ lines.push.apply(lines, this.lines);
6598
+ },
6599
 
6600
+ // Insert the given array of lines at offset 'at', count them as
6601
+ // having the given height.
6602
+ insertInner: function insertInner(at, lines, height) {
6603
  var this$1 = this;
6604
 
6605
+ this.height += height;
6606
+ this.lines = this.lines.slice(0, at).concat(lines).concat(this.lines.slice(at));
6607
+ for (var i = 0; i < lines.length; ++i) { lines[i].parent = this$1; }
6608
+ },
6609
 
6610
+ // Used to iterate over a part of the tree.
6611
+ iterN: function iterN(at, n, op) {
6612
  var this$1 = this;
6613
 
6614
+ for (var e = at + n; at < e; ++at)
6615
+ { if (op(this$1.lines[at])) { return true } }
6616
+ }
6617
  };
6618
 
6619
+ function BranchChunk(children) {
6620
  var this$1 = this;
6621
 
6622
  this.children = children;
6629
  this.size = size;
6630
  this.height = height;
6631
  this.parent = null;
6632
+ }
6633
 
6634
+ BranchChunk.prototype = {
6635
+ chunkSize: function chunkSize() { return this.size },
6636
 
6637
+ removeInner: function removeInner(at, n) {
6638
  var this$1 = this;
6639
 
6640
+ this.size -= n;
6641
+ for (var i = 0; i < this.children.length; ++i) {
6642
+ var child = this$1.children[i], sz = child.chunkSize();
6643
+ if (at < sz) {
6644
+ var rm = Math.min(n, sz - at), oldHeight = child.height;
6645
+ child.removeInner(at, rm);
6646
+ this$1.height -= oldHeight - child.height;
6647
+ if (sz == rm) { this$1.children.splice(i--, 1); child.parent = null; }
6648
+ if ((n -= rm) == 0) { break }
6649
+ at = 0;
6650
+ } else { at -= sz; }
6651
+ }
6652
+ // If the result is smaller than 25 lines, ensure that it is a
6653
+ // single leaf node.
6654
+ if (this.size - n < 25 &&
6655
+ (this.children.length > 1 || !(this.children[0] instanceof LeafChunk))) {
6656
+ var lines = [];
6657
+ this.collapse(lines);
6658
+ this.children = [new LeafChunk(lines)];
6659
+ this.children[0].parent = this;
6660
+ }
6661
+ },
6662
 
6663
+ collapse: function collapse(lines) {
6664
  var this$1 = this;
6665
 
6666
+ for (var i = 0; i < this.children.length; ++i) { this$1.children[i].collapse(lines); }
6667
+ },
6668
 
6669
+ insertInner: function insertInner(at, lines, height) {
6670
  var this$1 = this;
6671
 
6672
+ this.size += lines.length;
6673
+ this.height += height;
6674
+ for (var i = 0; i < this.children.length; ++i) {
6675
+ var child = this$1.children[i], sz = child.chunkSize();
6676
+ if (at <= sz) {
6677
+ child.insertInner(at, lines, height);
6678
+ if (child.lines && child.lines.length > 50) {
6679
+ // To avoid memory thrashing when child.lines is huge (e.g. first view of a large file), it's never spliced.
6680
+ // Instead, small slices are taken. They're taken in order because sequential memory accesses are fastest.
6681
+ var remaining = child.lines.length % 25 + 25;
6682
+ for (var pos = remaining; pos < child.lines.length;) {
6683
+ var leaf = new LeafChunk(child.lines.slice(pos, pos += 25));
6684
+ child.height -= leaf.height;
6685
+ this$1.children.splice(++i, 0, leaf);
6686
+ leaf.parent = this$1;
6687
+ }
6688
+ child.lines = child.lines.slice(0, remaining);
6689
+ this$1.maybeSpill();
6690
  }
6691
+ break
 
6692
  }
6693
+ at -= sz;
6694
  }
6695
+ },
 
 
6696
 
6697
+ // When a node has grown, check whether it should be split.
6698
+ maybeSpill: function maybeSpill() {
6699
+ if (this.children.length <= 10) { return }
6700
+ var me = this;
6701
+ do {
6702
+ var spilled = me.children.splice(me.children.length - 5, 5);
6703
+ var sibling = new BranchChunk(spilled);
6704
+ if (!me.parent) { // Become the parent node
6705
+ var copy = new BranchChunk(me.children);
6706
+ copy.parent = me;
6707
+ me.children = [copy, sibling];
6708
+ me = copy;
6709
+ } else {
6710
+ me.size -= sibling.size;
6711
+ me.height -= sibling.height;
6712
+ var myIndex = indexOf(me.parent.children, me);
6713
+ me.parent.children.splice(myIndex + 1, 0, sibling);
6714
+ }
6715
+ sibling.parent = me.parent;
6716
+ } while (me.children.length > 10)
6717
+ me.parent.maybeSpill();
6718
+ },
6719
 
6720
+ iterN: function iterN(at, n, op) {
6721
  var this$1 = this;
6722
 
6723
+ for (var i = 0; i < this.children.length; ++i) {
6724
+ var child = this$1.children[i], sz = child.chunkSize();
6725
+ if (at < sz) {
6726
+ var used = Math.min(n, sz - at);
6727
+ if (child.iterN(at, used, op)) { return true }
6728
+ if ((n -= used) == 0) { break }
6729
+ at = 0;
6730
+ } else { at -= sz; }
6731
+ }
6732
  }
6733
  };
6734
 
7098
  this.scrollTop = this.scrollLeft = 0;
7099
  this.cantEdit = false;
7100
  this.cleanGeneration = 1;
7101
+ this.modeFrontier = this.highlightFrontier = firstLine;
7102
  var start = Pos(firstLine, 0);
7103
  this.sel = simpleSelection(start);
7104
  this.history = new History(null);
7621
  // garbage collected.
7622
 
7623
  function forEachCodeMirror(f) {
7624
+ if (!document.getElementsByClassName) { return }
7625
+ var byClass = document.getElementsByClassName("CodeMirror");
7626
  for (var i = 0; i < byClass.length; i++) {
7627
  var cm = byClass[i].CodeMirror;
7628
  if (cm) { f(cm); }
7796
  return name == "Ctrl" || name == "Alt" || name == "Shift" || name == "Mod"
7797
  }
7798
 
7799
+ function addModifierNames(name, event, noShift) {
7800
+ var base = name;
 
 
 
7801
  if (event.altKey && base != "Alt") { name = "Alt-" + name; }
7802
  if ((flipCtrlCmd ? event.metaKey : event.ctrlKey) && base != "Ctrl") { name = "Ctrl-" + name; }
7803
  if ((flipCtrlCmd ? event.ctrlKey : event.metaKey) && base != "Cmd") { name = "Cmd-" + name; }
7805
  return name
7806
  }
7807
 
7808
+ // Look up the name of a key as indicated by an event object.
7809
+ function keyName(event, noShift) {
7810
+ if (presto && event.keyCode == 34 && event["char"]) { return false }
7811
+ var name = keyNames[event.keyCode];
7812
+ if (name == null || event.altGraphKey) { return false }
7813
+ return addModifierNames(name, event, noShift)
7814
+ }
7815
+
7816
  function getKeyMap(val) {
7817
  return typeof val == "string" ? keyMap[val] : val
7818
  }
8039
  || lookupKey(name, cm.options.keyMap, handle, cm)
8040
  }
8041
 
8042
+ // Note that, despite the name, this function is also used to check
8043
+ // for bound mouse clicks.
8044
+
8045
  var stopSeq = new Delayed;
8046
  function dispatchKey(cm, name, e, handle) {
8047
  var seq = cm.state.keySeq;
8153
  cm.display.input.onKeyPress(e);
8154
  }
8155
 
8156
+ var DOUBLECLICK_DELAY = 400;
8157
+
8158
+ var PastClick = function(time, pos, button) {
8159
+ this.time = time;
8160
+ this.pos = pos;
8161
+ this.button = button;
8162
+ };
8163
+
8164
+ PastClick.prototype.compare = function (time, pos, button) {
8165
+ return this.time + DOUBLECLICK_DELAY > time &&
8166
+ cmp(pos, this.pos) == 0 && button == this.button
8167
+ };
8168
+
8169
+ var lastClick;
8170
+ var lastDoubleClick;
8171
+ function clickRepeat(pos, button) {
8172
+ var now = +new Date;
8173
+ if (lastDoubleClick && lastDoubleClick.compare(now, pos, button)) {
8174
+ lastClick = lastDoubleClick = null;
8175
+ return "triple"
8176
+ } else if (lastClick && lastClick.compare(now, pos, button)) {
8177
+ lastDoubleClick = new PastClick(now, pos, button);
8178
+ lastClick = null;
8179
+ return "double"
8180
+ } else {
8181
+ lastClick = new PastClick(now, pos, button);
8182
+ lastDoubleClick = null;
8183
+ return "single"
8184
+ }
8185
+ }
8186
+
8187
  // A mouse down can be a single click, double click, triple click,
8188
  // start of selection drag, start of text drag, new cursor
8189
  // (ctrl-click), rectangle drag (alt-drag), or xwin
8205
  return
8206
  }
8207
  if (clickInGutter(cm, e)) { return }
8208
+ var pos = posFromMouse(cm, e), button = e_button(e), repeat = pos ? clickRepeat(pos, button) : "single";
8209
  window.focus();
8210
 
8211
+ // #3261: make sure, that we're not starting a second selection
8212
+ if (button == 1 && cm.state.selectingText)
8213
+ { cm.state.selectingText(e); }
8214
+
8215
+ if (pos && handleMappedButton(cm, button, pos, repeat, e)) { return }
8216
+
8217
+ if (button == 1) {
8218
+ if (pos) { leftButtonDown(cm, pos, repeat, e); }
8219
+ else if (e_target(e) == display.scroller) { e_preventDefault(e); }
8220
+ } else if (button == 2) {
8221
+ if (pos) { extendSelection(cm.doc, pos); }
 
 
8222
  setTimeout(function () { return display.input.focus(); }, 20);
8223
+ } else if (button == 3) {
 
 
8224
  if (captureRightClick) { onContextMenu(cm, e); }
8225
  else { delayBlurEvent(cm); }
 
8226
  }
8227
  }
8228
 
8229
+ function handleMappedButton(cm, button, pos, repeat, event) {
8230
+ var name = "Click";
8231
+ if (repeat == "double") { name = "Double" + name; }
8232
+ else if (repeat == "triple") { name = "Triple" + name; }
8233
+ name = (button == 1 ? "Left" : button == 2 ? "Middle" : "Right") + name;
8234
+
8235
+ return dispatchKey(cm, addModifierNames(name, event), event, function (bound) {
8236
+ if (typeof bound == "string") { bound = commands[bound]; }
8237
+ if (!bound) { return false }
8238
+ var done = false;
8239
+ try {
8240
+ if (cm.isReadOnly()) { cm.state.suppressEdits = true; }
8241
+ done = bound(cm, pos) != Pass;
8242
+ } finally {
8243
+ cm.state.suppressEdits = false;
8244
+ }
8245
+ return done
8246
+ })
8247
+ }
8248
+
8249
+ function configureMouse(cm, repeat, event) {
8250
+ var option = cm.getOption("configureMouse");
8251
+ var value = option ? option(cm, repeat, event) : {};
8252
+ if (value.unit == null) {
8253
+ var rect = chromeOS ? event.shiftKey && event.metaKey : event.altKey;
8254
+ value.unit = rect ? "rectangle" : repeat == "single" ? "char" : repeat == "double" ? "word" : "line";
8255
+ }
8256
+ if (value.extend == null || cm.doc.extend) { value.extend = cm.doc.extend || event.shiftKey; }
8257
+ if (value.addNew == null) { value.addNew = mac ? event.metaKey : event.ctrlKey; }
8258
+ if (value.moveOnDrag == null) { value.moveOnDrag = !(mac ? event.altKey : event.ctrlKey); }
8259
+ return value
8260
+ }
8261
+
8262
+ function leftButtonDown(cm, pos, repeat, event) {
8263
  if (ie) { setTimeout(bind(ensureFocus, cm), 0); }
8264
  else { cm.curOp.focus = activeElt(); }
8265
 
8266
+ var behavior = configureMouse(cm, repeat, event);
 
 
 
 
 
 
 
 
 
8267
 
8268
+ var sel = cm.doc.sel, contained;
8269
  if (cm.options.dragDrop && dragAndDrop && !cm.isReadOnly() &&
8270
+ repeat == "single" && (contained = sel.contains(pos)) > -1 &&
8271
+ (cmp((contained = sel.ranges[contained]).from(), pos) < 0 || pos.xRel > 0) &&
8272
+ (cmp(contained.to(), pos) > 0 || pos.xRel < 0))
8273
+ { leftButtonStartDrag(cm, event, pos, behavior); }
8274
  else
8275
+ { leftButtonSelect(cm, event, pos, behavior); }
8276
  }
8277
 
8278
  // Start a text drag. When it ends, see if any dragging actually
8279
  // happen, and treat as a click if it didn't.
8280
+ function leftButtonStartDrag(cm, event, pos, behavior) {
8281
  var display = cm.display, moved = false;
8282
  var dragEnd = operation(cm, function (e) {
8283
  if (webkit) { display.scroller.draggable = false; }
8288
  off(display.scroller, "drop", dragEnd);
8289
  if (!moved) {
8290
  e_preventDefault(e);
8291
+ if (!behavior.addNew)
8292
+ { extendSelection(cm.doc, pos, null, null, behavior.extend); }
8293
  // Work around unexplainable focus problem in IE9 (#2127) and Chrome (#3081)
8294
  if (webkit || ie && ie_version == 9)
8295
  { setTimeout(function () {document.body.focus(); display.input.focus();}, 20); }
8298
  }
8299
  });
8300
  var mouseMove = function(e2) {
8301
+ moved = moved || Math.abs(event.clientX - e2.clientX) + Math.abs(event.clientY - e2.clientY) >= 10;
8302
  };
8303
  var dragStart = function () { return moved = true; };
8304
  // Let the drag handler handle this.
8305
  if (webkit) { display.scroller.draggable = true; }
8306
  cm.state.draggingText = dragEnd;
8307
+ dragEnd.copy = !behavior.moveOnDrag;
8308
  // IE's approach to draggable
8309
  if (display.scroller.dragDrop) { display.scroller.dragDrop(); }
8310
  on(document, "mouseup", dragEnd);
8316
  setTimeout(function () { return display.input.focus(); }, 20);
8317
  }
8318
 
8319
+ function rangeForUnit(cm, pos, unit) {
8320
+ if (unit == "char") { return new Range(pos, pos) }
8321
+ if (unit == "word") { return cm.findWordAt(pos) }
8322
+ if (unit == "line") { return new Range(Pos(pos.line, 0), clipPos(cm.doc, Pos(pos.line + 1, 0))) }
8323
+ var result = unit(cm, pos);
8324
+ return new Range(result.from, result.to)
8325
+ }
8326
+
8327
  // Normal selection, as opposed to text dragging.
8328
+ function leftButtonSelect(cm, event, start, behavior) {
8329
  var display = cm.display, doc = cm.doc;
8330
+ e_preventDefault(event);
8331
 
8332
  var ourRange, ourIndex, startSel = doc.sel, ranges = startSel.ranges;
8333
+ if (behavior.addNew && !behavior.extend) {
8334
  ourIndex = doc.sel.contains(start);
8335
  if (ourIndex > -1)
8336
  { ourRange = ranges[ourIndex]; }
8341
  ourIndex = doc.sel.primIndex;
8342
  }
8343
 
8344
+ if (behavior.unit == "rectangle") {
8345
+ if (!behavior.addNew) { ourRange = new Range(start, start); }
8346
+ start = posFromMouse(cm, event, true, true);
 
8347
  ourIndex = -1;
 
 
 
 
 
 
 
 
 
 
 
 
8348
  } else {
8349
+ var range$$1 = rangeForUnit(cm, start, behavior.unit);
8350
+ if (behavior.extend)
8351
+ { ourRange = extendRange(ourRange, range$$1.anchor, range$$1.head, behavior.extend); }
8352
+ else
8353
+ { ourRange = range$$1; }
8354
  }
8355
 
8356
+ if (!behavior.addNew) {
8357
  ourIndex = 0;
8358
  setSelection(doc, new Selection([ourRange], 0), sel_mouse);
8359
  startSel = doc.sel;
8361
  ourIndex = ranges.length;
8362
  setSelection(doc, normalizeSelection(ranges.concat([ourRange]), ourIndex),
8363
  {scroll: false, origin: "*mouse"});
8364
+ } else if (ranges.length > 1 && ranges[ourIndex].empty() && behavior.unit == "char" && !behavior.extend) {
8365
  setSelection(doc, normalizeSelection(ranges.slice(0, ourIndex).concat(ranges.slice(ourIndex + 1)), 0),
8366
  {scroll: false, origin: "*mouse"});
8367
  startSel = doc.sel;
8374
  if (cmp(lastPos, pos) == 0) { return }
8375
  lastPos = pos;
8376
 
8377
+ if (behavior.unit == "rectangle") {
8378
  var ranges = [], tabSize = cm.options.tabSize;
8379
  var startCol = countColumn(getLine(doc, start.line).text, start.ch, tabSize);
8380
  var posCol = countColumn(getLine(doc, pos.line).text, pos.ch, tabSize);
8393
  cm.scrollIntoView(pos);
8394
  } else {
8395
  var oldRange = ourRange;
8396
+ var range$$1 = rangeForUnit(cm, pos, behavior.unit);
8397
+ var anchor = oldRange.anchor, head;
8398
+ if (cmp(range$$1.anchor, anchor) > 0) {
8399
+ head = range$$1.head;
8400
+ anchor = minPos(oldRange.from(), range$$1.anchor);
8401
+ } else {
8402
+ head = range$$1.anchor;
8403
+ anchor = maxPos(oldRange.to(), range$$1.head);
 
 
 
 
 
 
8404
  }
8405
  var ranges$1 = startSel.ranges.slice(0);
8406
  ranges$1[ourIndex] = new Range(clipPos(doc, anchor), head);
8417
 
8418
  function extend(e) {
8419
  var curCount = ++counter;
8420
+ var cur = posFromMouse(cm, e, true, behavior.unit == "rectangle");
8421
  if (!cur) { return }
8422
  if (cmp(cur, lastPos) != 0) {
8423
  cm.curOp.focus = activeElt();
8583
  if (next.attach) { next.attach(cm, prev || null); }
8584
  });
8585
  option("extraKeys", null);
8586
+ option("configureMouse", null);
8587
 
8588
  option("lineWrapping", false, wrappingChanged, true);
8589
  option("gutters", [], function (cm) {
8611
 
8612
  option("resetSelectionOnContextMenu", true);
8613
  option("lineWiseCopyCut", true);
8614
+ option("pasteLinesPerSelection", true);
8615
 
8616
  option("readOnly", false, function (cm, val) {
8617
  if (val == "nocursor") {
8618
  onBlur(cm);
8619
  cm.display.input.blur();
 
 
 
8620
  }
8621
  cm.display.input.readOnlyChanged(val);
8622
  });
8881
  // Fall back to "prev" when the mode doesn't have an indentation
8882
  // method.
8883
  if (!doc.mode.indent) { how = "prev"; }
8884
+ else { state = getContextBefore(cm, n).state; }
8885
  }
8886
 
8887
  var tabSize = cm.options.tabSize;
8957
  for (var i = 0; i < lastCopied.text.length; i++)
8958
  { multiPaste.push(doc.splitLines(lastCopied.text[i])); }
8959
  }
8960
+ } else if (textLines.length == sel.ranges.length && cm.options.pasteLinesPerSelection) {
8961
  multiPaste = map(textLines, function (l) { return [l]; });
8962
  }
8963
  }
9217
  getStateAfter: function(line, precise) {
9218
  var doc = this.doc;
9219
  line = clipLine(doc, line == null ? doc.first + doc.size - 1: line);
9220
+ return getContextBefore(this, line + 1, precise).state
9221
  },
9222
 
9223
  cursorCoords: function(start, mode) {
9298
  triggerOnKeyDown: methodOp(onKeyDown),
9299
  triggerOnKeyPress: methodOp(onKeyPress),
9300
  triggerOnKeyUp: onKeyUp,
9301
+ triggerOnMouseDown: methodOp(onMouseDown),
9302
 
9303
  execCommand: function(cmd) {
9304
  if (commands.hasOwnProperty(cmd))
10438
 
10439
  TextareaInput.prototype.readOnlyChanged = function (val) {
10440
  if (!val) { this.reset(); }
10441
+ this.textarea.disabled = val == "nocursor";
10442
  };
10443
 
10444
  TextareaInput.prototype.setUneditable = function () {};
10594
 
10595
  addLegacyProps(CodeMirror$1);
10596
 
10597
+ CodeMirror$1.version = "5.27.2";
10598
 
10599
  return CodeMirror$1;
10600
 
assets/js/manifest.json CHANGED
@@ -1,10 +1,10 @@
1
  {
2
  "mp2migrator.js": "mp2migrator.f2f36174.js",
3
  "public.js": "public.84aece05.js",
4
- "admin.js": "admin.9af00351.js",
5
- "admin_vendor.js": "admin_vendor.5379b481.js",
6
- "form_editor.js": "form_editor.18138b84.js",
7
  "mailpoet.js": "mailpoet.8f856096.js",
8
  "newsletter_editor.js": "newsletter_editor.ae63e604.js",
9
- "vendor.js": "vendor.c136ccd7.js"
10
  }
1
  {
2
  "mp2migrator.js": "mp2migrator.f2f36174.js",
3
  "public.js": "public.84aece05.js",
4
+ "admin.js": "admin.5cdc4c05.js",
5
+ "admin_vendor.js": "admin_vendor.d75e484a.js",
6
+ "form_editor.js": "form_editor.1f90e137.js",
7
  "mailpoet.js": "mailpoet.8f856096.js",
8
  "newsletter_editor.js": "newsletter_editor.ae63e604.js",
9
+ "vendor.js": "vendor.6d57818a.js"
10
  }
assets/js/{vendor.c136ccd7.js → vendor.6d57818a.js} RENAMED
@@ -76,7 +76,7 @@
76
  /******/ script.charset = 'utf-8';
77
  /******/ script.async = true;
78
 
79
- /******/ script.src = __webpack_require__.p + "" + ({"0":"admin","1":"admin_vendor","2":"form_editor","3":"mailpoet","4":"newsletter_editor"}[chunkId]||chunkId) + "." + {"0":"9af00351","1":"5379b481","2":"18138b84","3":"8f856096","4":"ae63e604"}[chunkId] + ".chunk.js";
80
  /******/ head.appendChild(script);
81
  /******/ }
82
  /******/ };
76
  /******/ script.charset = 'utf-8';
77
  /******/ script.async = true;
78
 
79
+ /******/ script.src = __webpack_require__.p + "" + ({"0":"admin","1":"admin_vendor","2":"form_editor","3":"mailpoet","4":"newsletter_editor"}[chunkId]||chunkId) + "." + {"0":"5cdc4c05","1":"d75e484a","2":"1f90e137","3":"8f856096","4":"ae63e604"}[chunkId] + ".chunk.js";
80
  /******/ head.appendChild(script);
81
  /******/ }
82
  /******/ };
lang/mailpoet-de_DE.mo CHANGED
Binary file
lang/mailpoet-en_GB.mo CHANGED
Binary file
lang/mailpoet-es_ES.mo CHANGED
Binary file
lang/mailpoet-fa_IR.mo CHANGED
Binary file
lang/mailpoet-fr_FR.mo CHANGED
Binary file
lang/mailpoet-it_IT.mo CHANGED
Binary file
lang/mailpoet-ja.mo CHANGED
Binary file
lang/mailpoet-nl_NL.mo CHANGED
Binary file
lang/mailpoet-pl_PL.mo CHANGED
Binary file
lang/mailpoet-pt_BR.mo CHANGED
Binary file
lang/mailpoet-pt_PT.mo CHANGED
Binary file
lang/mailpoet-ru_RU.mo CHANGED
Binary file
lang/mailpoet.pot CHANGED
@@ -4,7 +4,7 @@ msgid ""
4
  msgstr ""
5
  "Project-Id-Version: \n"
6
  "Report-Msgid-Bugs-To: http://support.mailpoet.com/\n"
7
- "POT-Creation-Date: 2017-06-20 17:30:27+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -1154,7 +1154,7 @@ msgstr ""
1154
  msgid "Oops! There are no newsletters to display."
1155
  msgstr ""
1156
 
1157
- #: lib/Config/Shortcodes.php:125
1158
  msgid "Preview in a new tab"
1159
  msgstr ""
1160
 
4
  msgstr ""
5
  "Project-Id-Version: \n"
6
  "Report-Msgid-Bugs-To: http://support.mailpoet.com/\n"
7
+ "POT-Creation-Date: 2017-06-23 12:43:54+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
1154
  msgid "Oops! There are no newsletters to display."
1155
  msgstr ""
1156
 
1157
+ #: lib/Config/Shortcodes.php:124
1158
  msgid "Preview in a new tab"
1159
  msgstr ""
1160
 
lib/Analytics/Analytics.php CHANGED
@@ -1,5 +1,7 @@
1
  <?php
 
2
  namespace MailPoet\Analytics;
 
3
  use Carbon\Carbon;
4
  use MailPoet\Models\Setting;
5
 
@@ -7,7 +9,7 @@ if(!defined('ABSPATH')) exit;
7
 
8
  class Analytics {
9
 
10
- const SETTINGS_LAST_SENT_KEY = "analytics_last_sent";
11
  const SEND_AFTER_DAYS = 7;
12
 
13
  /** @var Reporter */
@@ -29,7 +31,7 @@ class Analytics {
29
  /** @return boolean */
30
  function isEnabled() {
31
  $analytics_settings = Setting::getValue('analytics', array());
32
- return ($analytics_settings["enabled"] === "1") || ($analytics_settings["enabled"] === "true");
33
  }
34
 
35
  private function shouldSend() {
1
  <?php
2
+
3
  namespace MailPoet\Analytics;
4
+
5
  use Carbon\Carbon;
6
  use MailPoet\Models\Setting;
7
 
9
 
10
  class Analytics {
11
 
12
+ const SETTINGS_LAST_SENT_KEY = 'analytics_last_sent';
13
  const SEND_AFTER_DAYS = 7;
14
 
15
  /** @var Reporter */
31
  /** @return boolean */
32
  function isEnabled() {
33
  $analytics_settings = Setting::getValue('analytics', array());
34
+ return !empty($analytics_settings['enabled']) === true;
35
  }
36
 
37
  private function shouldSend() {
lib/Config/Renderer.php CHANGED
@@ -121,4 +121,16 @@ class Renderer {
121
  json_decode(file_get_contents($manifest_file), true) :
122
  false;
123
  }
 
 
 
 
 
 
 
 
 
 
 
 
124
  }
121
  json_decode(file_get_contents($manifest_file), true) :
122
  false;
123
  }
124
+
125
+ function getJsAsset($asset) {
126
+ return (!empty($this->assets_manifest_js[$asset])) ?
127
+ $this->assets_manifest_js[$asset] :
128
+ $asset;
129
+ }
130
+
131
+ function getCssAsset($asset) {
132
+ return (!empty($this->assets_manifest_css[$asset])) ?
133
+ $this->assets_manifest_css[$asset] :
134
+ $asset;
135
+ }
136
  }
lib/Config/Shortcodes.php CHANGED
@@ -89,7 +89,6 @@ class Shortcodes {
89
  if(!empty($title)) {
90
  $html .= '<h3 class="mailpoet_archive_title">'.$title.'</h3>';
91
  }
92
-
93
  $html .= '<ul class="mailpoet_archive">';
94
  foreach($newsletters as $newsletter) {
95
  $queue = $newsletter->queue()->findOne();
@@ -123,7 +122,7 @@ class Shortcodes {
123
  );
124
  return '<a href="'.esc_attr($preview_url).'" target="_blank" title="'
125
  .esc_attr(__('Preview in a new tab', 'mailpoet')).'">'
126
- .esc_attr($newsletter->subject).
127
  '</a>';
128
  }
129
  }
89
  if(!empty($title)) {
90
  $html .= '<h3 class="mailpoet_archive_title">'.$title.'</h3>';
91
  }
 
92
  $html .= '<ul class="mailpoet_archive">';
93
  foreach($newsletters as $newsletter) {
94
  $queue = $newsletter->queue()->findOne();
122
  );
123
  return '<a href="'.esc_attr($preview_url).'" target="_blank" title="'
124
  .esc_attr(__('Preview in a new tab', 'mailpoet')).'">'
125
+ .esc_attr($newsletter->newsletter_rendered_subject).
126
  '</a>';
127
  }
128
  }
lib/Config/Widget.php CHANGED
@@ -87,17 +87,22 @@ class Widget {
87
  }
88
 
89
  function setupDependencies() {
90
- wp_enqueue_style('mailpoet_public', Env::$assets_url.'/css/public.css');
 
 
 
91
 
92
- wp_enqueue_script('mailpoet_vendor',
93
- Env::$assets_url.'/js/vendor.js',
 
94
  array(),
95
  Env::$version,
96
  true
97
  );
98
 
99
- wp_enqueue_script('mailpoet_public',
100
- Env::$assets_url.'/js/public.js',
 
101
  array(),
102
  Env::$version,
103
  true
@@ -110,15 +115,17 @@ class Widget {
110
  }
111
 
112
  function setupAdminWidgetPageDependencies() {
113
- wp_enqueue_script('mailpoet_vendor',
114
- Env::$assets_url.'/js/vendor.js',
 
115
  array(),
116
  Env::$version,
117
  true
118
  );
119
 
120
- wp_enqueue_script('mailpoet_admin',
121
- Env::$assets_url.'/js/mailpoet.js',
 
122
  array(),
123
  Env::$version,
124
  true
87
  }
88
 
89
  function setupDependencies() {
90
+ wp_enqueue_style(
91
+ 'mailpoet_public',
92
+ Env::$assets_url . '/css/' . $this->renderer->getCssAsset('public.css')
93
+ );
94
 
95
+ wp_enqueue_script(
96
+ 'mailpoet_vendor',
97
+ Env::$assets_url . '/js/' . $this->renderer->getJsAsset('vendor.js'),
98
  array(),
99
  Env::$version,
100
  true
101
  );
102
 
103
+ wp_enqueue_script(
104
+ 'mailpoet_public',
105
+ Env::$assets_url . '/js/' . $this->renderer->getJsAsset('public.js'),
106
  array(),
107
  Env::$version,
108
  true
115
  }
116
 
117
  function setupAdminWidgetPageDependencies() {
118
+ wp_enqueue_script(
119
+ 'mailpoet_vendor',
120
+ Env::$assets_url . '/js/' . $this->renderer->getJsAsset('vendor.js'),
121
  array(),
122
  Env::$version,
123
  true
124
  );
125
 
126
+ wp_enqueue_script(
127
+ 'mailpoet_admin',
128
+ Env::$assets_url . '/js/' . $this->renderer->getJsAsset('mailpoet.js'),
129
  array(),
130
  Env::$version,
131
  true
lib/Cron/Workers/SendingQueue/SendingQueue.php CHANGED
@@ -103,9 +103,6 @@ class SendingQueue {
103
  $subscriber,
104
  $queue
105
  );
106
- if(!$queue->newsletter_rendered_subject) {
107
- $queue->newsletter_rendered_subject = $prepared_newsletters[0]['subject'];
108
- }
109
  // format subscriber name/address according to mailer settings
110
  $prepared_subscribers[] = $this->mailer_task->prepareSubscriberForSending(
111
  $subscriber
103
  $subscriber,
104
  $queue
105
  );
 
 
 
106
  // format subscriber name/address according to mailer settings
107
  $prepared_subscribers[] = $this->mailer_task->prepareSubscriberForSending(
108
  $subscriber
lib/Cron/Workers/SendingQueue/Tasks/Newsletter.php CHANGED
@@ -85,6 +85,7 @@ class Newsletter {
85
  // extract and save newsletter posts
86
  PostsTask::extractAndSave($rendered_newsletter, $newsletter);
87
  // update queue with the rendered and pre-processed newsletter
 
88
  $queue->newsletter_rendered_body = $rendered_newsletter;
89
  $queue->save();
90
  return $newsletter;
85
  // extract and save newsletter posts
86
  PostsTask::extractAndSave($rendered_newsletter, $newsletter);
87
  // update queue with the rendered and pre-processed newsletter
88
+ $queue->newsletter_rendered_subject = Shortcodes::process($newsletter->subject, $newsletter, null, $queue);
89
  $queue->newsletter_rendered_body = $rendered_newsletter;
90
  $queue->save();
91
  return $newsletter;
lib/Models/Newsletter.php CHANGED
@@ -860,6 +860,7 @@ class Newsletter extends Model {
860
  static function getArchives($segment_ids = array()) {
861
  $orm = self::table_alias('newsletters')
862
  ->distinct()->select('newsletters.*')
 
863
  ->whereIn('newsletters.type', array(
864
  self::TYPE_STANDARD,
865
  self::TYPE_NOTIFICATION_HISTORY
860
  static function getArchives($segment_ids = array()) {
861
  $orm = self::table_alias('newsletters')
862
  ->distinct()->select('newsletters.*')
863
+ ->select('newsletter_rendered_subject')
864
  ->whereIn('newsletters.type', array(
865
  self::TYPE_STANDARD,
866
  self::TYPE_NOTIFICATION_HISTORY
lib/Newsletter/Renderer/Template.html CHANGED
@@ -45,10 +45,25 @@
45
  .mailpoet_header_footer_padded {
46
  padding: 10px 20px;
47
  }
48
- @media screen and (max-width: 480px) and (-webkit-min-device-pixel-ratio: 1) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
  .mailpoet_button {width:100% !important;}
50
  }
51
- @media screen and (max-width: 599px) and (-webkit-min-device-pixel-ratio: 1) {
52
  .mailpoet_header {
53
  padding: 10px 20px;
54
  }
45
  .mailpoet_header_footer_padded {
46
  padding: 10px 20px;
47
  }
48
+
49
+ /* https://www.emailonacid.com/blog/article/email-development/tips-for-coding-email-preheaders */
50
+ .mailpoet_preheader, .mailpoet_preheader * {
51
+ display: none;
52
+ visibility: hidden;
53
+ mso-hide: all;
54
+ font-size: 1px;
55
+ color: #ffffff;
56
+ line-height: 1px;
57
+ max-height: 0px;
58
+ max-width: 0px;
59
+ opacity: 0;
60
+ overflow: hidden;
61
+ }
62
+
63
+ @media screen and (max-width: 480px) {
64
  .mailpoet_button {width:100% !important;}
65
  }
66
+ @media screen and (max-width: 599px) {
67
  .mailpoet_header {
68
  padding: 10px 20px;
69
  }
lib/Services/Bridge.php CHANGED
@@ -187,13 +187,17 @@ class Bridge {
187
  $api_key_set = !empty($settings[Mailer::MAILER_CONFIG_SETTING_NAME]['mailpoet_api_key']);
188
  $premium_key_set = !empty($settings['premium']['premium_key']);
189
  if($api_key_set) {
190
- $result = $this->checkMSSKey($settings[Mailer::MAILER_CONFIG_SETTING_NAME]['mailpoet_api_key']);
 
 
191
  if(self::isMPSendingServiceEnabled()) {
192
- $this->updateSubscriberCount($result);
193
  }
194
  }
195
  if($premium_key_set) {
196
- $this->checkPremiumKey($settings['premium']['premium_key']);
 
 
197
  }
198
  }
199
  }
187
  $api_key_set = !empty($settings[Mailer::MAILER_CONFIG_SETTING_NAME]['mailpoet_api_key']);
188
  $premium_key_set = !empty($settings['premium']['premium_key']);
189
  if($api_key_set) {
190
+ $api_key = $settings[Mailer::MAILER_CONFIG_SETTING_NAME]['mailpoet_api_key'];
191
+ $state = $this->checkMSSKey($api_key);
192
+ $this->storeMSSKeyAndState($api_key, $state);
193
  if(self::isMPSendingServiceEnabled()) {
194
+ $this->updateSubscriberCount($state);
195
  }
196
  }
197
  if($premium_key_set) {
198
+ $premium_key = $settings['premium']['premium_key'];
199
+ $state = $this->checkPremiumKey($premium_key);
200
+ $this->storePremiumKeyAndState($premium_key, $state);
201
  }
202
  }
203
  }
mailpoet.php CHANGED
@@ -4,7 +4,7 @@ if(!defined('ABSPATH')) exit;
4
 
5
  /*
6
  * Plugin Name: MailPoet
7
- * Version: 3.0.0-beta.36.0.0
8
  * Plugin URI: http://www.mailpoet.com
9
  * Description: Create and send beautiful email newsletters, autoresponders, and post notifications without leaving WordPress. This is a beta version of our brand new plugin!
10
  * Author: MailPoet
@@ -21,7 +21,7 @@ if(!defined('ABSPATH')) exit;
21
  */
22
 
23
  $mailpoet_plugin = array(
24
- 'version' => '3.0.0-beta.36.0.0',
25
  'filename' => __FILE__,
26
  'path' => dirname(__FILE__),
27
  'autoloader' => dirname(__FILE__) . '/vendor/autoload.php',
4
 
5
  /*
6
  * Plugin Name: MailPoet
7
+ * Version: 3.0.0-beta.36.0.1
8
  * Plugin URI: http://www.mailpoet.com
9
  * Description: Create and send beautiful email newsletters, autoresponders, and post notifications without leaving WordPress. This is a beta version of our brand new plugin!
10
  * Author: MailPoet
21
  */
22
 
23
  $mailpoet_plugin = array(
24
+ 'version' => '3.0.0-beta.36.0.1',
25
  'filename' => __FILE__,
26
  'path' => dirname(__FILE__),
27
  'autoloader' => dirname(__FILE__) . '/vendor/autoload.php',
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: mailpoet, wysija
3
  Tags: newsletter, email, welcome email, post notification, autoresponder, signup, subscription, SMTP
4
  Requires at least: 4.6
5
  Tested up to: 4.8
6
- Stable tag: 3.0.0-beta.36.0.0
7
  Create and send beautiful emails and newsletters from WordPress.
8
 
9
  == Description ==
@@ -91,6 +91,12 @@ Our [support site](https://beta.docs.mailpoet.com) has plenty of articles. You c
91
 
92
  == Changelog ==
93
 
 
 
 
 
 
 
94
  = 3.0.0-beta.36.0.0 - 2017-06-20 =
95
  * Improved: "view in browser" link is disabled in preview emails. Thanks Riccardo;
96
  * Improved: show a warning when activating on Multisite environments;
3
  Tags: newsletter, email, welcome email, post notification, autoresponder, signup, subscription, SMTP
4
  Requires at least: 4.6
5
  Tested up to: 4.8
6
+ Stable tag: 3.0.0-beta.36.0.1
7
  Create and send beautiful emails and newsletters from WordPress.
8
 
9
  == Description ==
91
 
92
  == Changelog ==
93
 
94
+ = 3.0.0-beta.36.0.1 - 2017-06-23 =
95
+ * Improved: preheader will now be hidden in Gmail app;
96
+ * Fixed: subscription forms now work without causing "missing file" errors. Thanks Sherrie!
97
+ * Fixed: Premium keys status to not be invalidated after saving Settings;
98
+ * Fixed: email shortcodes are correctly displayed in Newsletter Archive. Thanks Lukáš!
99
+
100
  = 3.0.0-beta.36.0.0 - 2017-06-20 =
101
  * Improved: "view in browser" link is disabled in preview emails. Thanks Riccardo;
102
  * Improved: show a warning when activating on Multisite environments;
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInitd916a28d50ec598e94c77621f9ba06e2::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit140f378aef1efbd5960ba3ca5adb17f6::getLoader();
vendor/cerdic/css-tidy/Docs/__filesource/fsource_csstidy__class.csstidy.php.html DELETED
@@ -1,1038 +0,0 @@
1
- <html>
2
- <head>
3
- <title>File Source for class.csstidy.php</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
-
33
- </td>
34
- <td>
35
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
36
-
37
- <h1 align="center">Source for file class.csstidy.php</h1>
38
- <p>Documentation is available at <a href="../csstidy/_class_csstidy_php.html">class.csstidy.php</a></p>
39
- <div class="php">
40
- <div class="listing"><pre><ol><li><a name="a1"></a><span class="src-php">&lt;?php</span></li>
41
- <li><a name="a2"></a><span class="src-doc">/**</span></li>
42
- <li><a name="a3"></a><span class="src-doc"> * CSSTidy - CSS Parser and Optimiser</span></li>
43
- <li><a name="a4"></a><span class="src-doc"> *</span></li>
44
- <li><a name="a5"></a><span class="src-doc"> * CSS Parser class</span></li>
45
- <li><a name="a6"></a><span class="src-doc"> *</span></li>
46
- <li><a name="a7"></a><span class="src-doc"> * This file is part of CSSTidy.</span></li>
47
- <li><a name="a8"></a><span class="src-doc"> *</span></li>
48
- <li><a name="a9"></a><span class="src-doc"> * CSSTidy is free software; you can redistribute it and/or modify</span></li>
49
- <li><a name="a10"></a><span class="src-doc"> * it under the terms of the GNU General Public License as published by</span></li>
50
- <li><a name="a11"></a><span class="src-doc"> * the Free Software Foundation; either version 2 of the License, or</span></li>
51
- <li><a name="a12"></a><span class="src-doc"> * (at your option) any later version.</span></li>
52
- <li><a name="a13"></a><span class="src-doc"> *</span></li>
53
- <li><a name="a14"></a><span class="src-doc"> * CSSTidy is distributed in the hope that it will be useful,</span></li>
54
- <li><a name="a15"></a><span class="src-doc"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></li>
55
- <li><a name="a16"></a><span class="src-doc"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></li>
56
- <li><a name="a17"></a><span class="src-doc"> * GNU General Public License for more details.</span></li>
57
- <li><a name="a18"></a><span class="src-doc"> *</span></li>
58
- <li><a name="a19"></a><span class="src-doc"> * You should have received a copy of the GNU General Public License</span></li>
59
- <li><a name="a20"></a><span class="src-doc"> * along with CSSTidy; if not, write to the Free Software</span></li>
60
- <li><a name="a21"></a><span class="src-doc"> * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</span></li>
61
- <li><a name="a22"></a><span class="src-doc"> *</span></li>
62
- <li><a name="a23"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@license</span><span class="src-doc"> http://opensource.org/licenses/gpl-license.php GNU Public License</span></li>
63
- <li><a name="a24"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> csstidy</span></li>
64
- <li><a name="a25"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@author</span><span class="src-doc"> Florian Schmitz (floele at gmail dot com) 2005-2006</span></li>
65
- <li><a name="a26"></a><span class="src-doc"> */</span></li>
66
- <li><a name="a27"></a>&nbsp;</li>
67
- <li><a name="a28"></a><span class="src-doc">/**</span></li>
68
- <li><a name="a29"></a><span class="src-doc"> * Various CSS data needed for correct optimisations etc.</span></li>
69
- <li><a name="a30"></a><span class="src-doc"> *</span></li>
70
- <li><a name="a31"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
71
- <li><a name="a32"></a><span class="src-doc"> */</span></li>
72
- <li><a name="a33"></a>require<span class="src-sym">(</span><span class="src-str">'data.inc.php'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
73
- <li><a name="a34"></a>&nbsp;</li>
74
- <li><a name="a35"></a><span class="src-doc">/**</span></li>
75
- <li><a name="a36"></a><span class="src-doc"> * Contains a class for printing CSS code</span></li>
76
- <li><a name="a37"></a><span class="src-doc"> *</span></li>
77
- <li><a name="a38"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
78
- <li><a name="a39"></a><span class="src-doc"> */</span></li>
79
- <li><a name="a40"></a>require<span class="src-sym">(</span><span class="src-str">'class.csstidy_print.php'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
80
- <li><a name="a41"></a>&nbsp;</li>
81
- <li><a name="a42"></a><span class="src-doc">/**</span></li>
82
- <li><a name="a43"></a><span class="src-doc"> * Contains a class for optimising CSS code</span></li>
83
- <li><a name="a44"></a><span class="src-doc"> *</span></li>
84
- <li><a name="a45"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
85
- <li><a name="a46"></a><span class="src-doc"> */</span></li>
86
- <li><a name="a47"></a>require<span class="src-sym">(</span><span class="src-str">'class.csstidy_optimise.php'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
87
- <li><a name="a48"></a>&nbsp;</li>
88
- <li><a name="a49"></a><span class="src-doc">/**</span></li>
89
- <li><a name="a50"></a><span class="src-doc"> * CSS Parser class</span></li>
90
- <li><a name="a51"></a><span class="src-doc"> *</span></li>
91
- <li><a name="a52"></a><span class="src-doc"> * This class represents a CSS parser which reads CSS code and saves it in an array.</span></li>
92
- <li><a name="a53"></a><span class="src-doc"> * In opposite to most other CSS parsers, it does not use regular expressions and</span></li>
93
- <li><a name="a54"></a><span class="src-doc"> * thus has full CSS2 support and a higher reliability.</span></li>
94
- <li><a name="a55"></a><span class="src-doc"> * Additional to that it applies some optimisations and fixes to the CSS code.</span></li>
95
- <li><a name="a56"></a><span class="src-doc"> * An online version should be available here: http://cdburnerxp.se/cssparse/css_optimiser.php</span></li>
96
- <li><a name="a57"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> csstidy</span></li>
97
- <li><a name="a58"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@author</span><span class="src-doc"> Florian Schmitz (floele at gmail dot com) 2005-2006</span></li>
98
- <li><a name="a59"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
99
- <li><a name="a60"></a><span class="src-doc"> */</span></li>
100
- <li><a name="a61"></a><span class="src-key">class </span><a href="../csstidy/csstidy.html">csstidy</a> <span class="src-sym">{</span></li>
101
- <li><a name="a62"></a>&nbsp;</li>
102
- <li><a name="a63"></a><span class="src-doc">/**</span></li>
103
- <li><a name="a64"></a><span class="src-doc"> * Saves the parsed CSS</span></li>
104
- <li><a name="a65"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
105
- <li><a name="a66"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
106
- <li><a name="a67"></a><span class="src-doc"> */</span></li>
107
- <li><a name="a68"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$css">$css</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
108
- <li><a name="a69"></a>&nbsp;</li>
109
- <li><a name="a70"></a><span class="src-doc">/**</span></li>
110
- <li><a name="a71"></a><span class="src-doc"> * Saves the parsed CSS (raw)</span></li>
111
- <li><a name="a72"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
112
- <li><a name="a73"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
113
- <li><a name="a74"></a><span class="src-doc"> */</span></li>
114
- <li><a name="a75"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$tokens">$tokens</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
115
- <li><a name="a76"></a>&nbsp;</li>
116
- <li><a name="a77"></a><span class="src-doc">/**</span></li>
117
- <li><a name="a78"></a><span class="src-doc"> * Printer class</span></li>
118
- <li><a name="a79"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> csstidy_print</span></li>
119
- <li><a name="a80"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">object </span></li>
120
- <li><a name="a81"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
121
- <li><a name="a82"></a><span class="src-doc"> */</span></li>
122
- <li><a name="a83"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$print">$print</a><span class="src-sym">;</span></li>
123
- <li><a name="a84"></a>&nbsp;</li>
124
- <li><a name="a85"></a><span class="src-doc">/**</span></li>
125
- <li><a name="a86"></a><span class="src-doc"> * Optimiser class</span></li>
126
- <li><a name="a87"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> csstidy_optimise</span></li>
127
- <li><a name="a88"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">object </span></li>
128
- <li><a name="a89"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
129
- <li><a name="a90"></a><span class="src-doc"> */</span></li>
130
- <li><a name="a91"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$optimise">$optimise</a><span class="src-sym">;</span></li>
131
- <li><a name="a92"></a>&nbsp;</li>
132
- <li><a name="a93"></a><span class="src-doc">/**</span></li>
133
- <li><a name="a94"></a><span class="src-doc"> * Saves the CSS charset (@charset)</span></li>
134
- <li><a name="a95"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
135
- <li><a name="a96"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
136
- <li><a name="a97"></a><span class="src-doc"> */</span></li>
137
- <li><a name="a98"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$charset">$charset</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
138
- <li><a name="a99"></a>&nbsp;</li>
139
- <li><a name="a100"></a><span class="src-doc">/**</span></li>
140
- <li><a name="a101"></a><span class="src-doc"> * Saves all @import URLs</span></li>
141
- <li><a name="a102"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
142
- <li><a name="a103"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
143
- <li><a name="a104"></a><span class="src-doc"> */</span></li>
144
- <li><a name="a105"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$import">$import</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
145
- <li><a name="a106"></a>&nbsp;</li>
146
- <li><a name="a107"></a><span class="src-doc">/**</span></li>
147
- <li><a name="a108"></a><span class="src-doc"> * Saves the namespace</span></li>
148
- <li><a name="a109"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
149
- <li><a name="a110"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
150
- <li><a name="a111"></a><span class="src-doc"> */</span></li>
151
- <li><a name="a112"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$namespace">$namespace</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
152
- <li><a name="a113"></a>&nbsp;</li>
153
- <li><a name="a114"></a><span class="src-doc">/**</span></li>
154
- <li><a name="a115"></a><span class="src-doc"> * Contains the version of csstidy</span></li>
155
- <li><a name="a116"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
156
- <li><a name="a117"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
157
- <li><a name="a118"></a><span class="src-doc"> */</span></li>
158
- <li><a name="a119"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$version">$version</a> = <span class="src-str">'1.2'</span><span class="src-sym">;</span></li>
159
- <li><a name="a120"></a>&nbsp;</li>
160
- <li><a name="a121"></a><span class="src-doc">/**</span></li>
161
- <li><a name="a122"></a><span class="src-doc"> * Stores the settings</span></li>
162
- <li><a name="a123"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
163
- <li><a name="a124"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
164
- <li><a name="a125"></a><span class="src-doc"> */</span></li>
165
- <li><a name="a126"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$settings">$settings</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
166
- <li><a name="a127"></a>&nbsp;</li>
167
- <li><a name="a128"></a><span class="src-doc">/**</span></li>
168
- <li><a name="a129"></a><span class="src-doc"> * Saves the parser-status.</span></li>
169
- <li><a name="a130"></a><span class="src-doc"> *</span></li>
170
- <li><a name="a131"></a><span class="src-doc"> * Possible values:</span></li>
171
- <li><a name="a132"></a><span class="src-doc"> * - is = in selector</span></li>
172
- <li><a name="a133"></a><span class="src-doc"> * - ip = in property</span></li>
173
- <li><a name="a134"></a><span class="src-doc"> * - iv = in value</span></li>
174
- <li><a name="a135"></a><span class="src-doc"> * - instr = in string (started at &quot; or ' or ( )</span></li>
175
- <li><a name="a136"></a><span class="src-doc"> * - ic = in comment (ignore everything)</span></li>
176
- <li><a name="a137"></a><span class="src-doc"> * - at = in @-block</span></li>
177
- <li><a name="a138"></a><span class="src-doc"> * </span></li>
178
- <li><a name="a139"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
179
- <li><a name="a140"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
180
- <li><a name="a141"></a><span class="src-doc"> */</span></li>
181
- <li><a name="a142"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$status">$status</a> = <span class="src-str">'is'</span><span class="src-sym">;</span></li>
182
- <li><a name="a143"></a>&nbsp;</li>
183
- <li><a name="a144"></a>&nbsp;</li>
184
- <li><a name="a145"></a><span class="src-doc">/**</span></li>
185
- <li><a name="a146"></a><span class="src-doc"> * Saves the current at rule (@media)</span></li>
186
- <li><a name="a147"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
187
- <li><a name="a148"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
188
- <li><a name="a149"></a><span class="src-doc"> */</span></li>
189
- <li><a name="a150"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$at">$at</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
190
- <li><a name="a151"></a>&nbsp;</li>
191
- <li><a name="a152"></a><span class="src-doc">/**</span></li>
192
- <li><a name="a153"></a><span class="src-doc"> * Saves the current selector</span></li>
193
- <li><a name="a154"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
194
- <li><a name="a155"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
195
- <li><a name="a156"></a><span class="src-doc"> */</span></li>
196
- <li><a name="a157"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$selector">$selector</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
197
- <li><a name="a158"></a>&nbsp;</li>
198
- <li><a name="a159"></a><span class="src-doc">/**</span></li>
199
- <li><a name="a160"></a><span class="src-doc"> * Saves the current property</span></li>
200
- <li><a name="a161"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
201
- <li><a name="a162"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
202
- <li><a name="a163"></a><span class="src-doc"> */</span></li>
203
- <li><a name="a164"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$property">$property</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
204
- <li><a name="a165"></a>&nbsp;</li>
205
- <li><a name="a166"></a><span class="src-doc">/**</span></li>
206
- <li><a name="a167"></a><span class="src-doc"> * Saves the position of , in selectors</span></li>
207
- <li><a name="a168"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
208
- <li><a name="a169"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
209
- <li><a name="a170"></a><span class="src-doc"> */</span></li>
210
- <li><a name="a171"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$sel_separate">$sel_separate</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
211
- <li><a name="a172"></a>&nbsp;</li>
212
- <li><a name="a173"></a><span class="src-doc">/**</span></li>
213
- <li><a name="a174"></a><span class="src-doc"> * Saves the current value</span></li>
214
- <li><a name="a175"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
215
- <li><a name="a176"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
216
- <li><a name="a177"></a><span class="src-doc"> */</span></li>
217
- <li><a name="a178"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$value">$value</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
218
- <li><a name="a179"></a>&nbsp;</li>
219
- <li><a name="a180"></a><span class="src-doc">/**</span></li>
220
- <li><a name="a181"></a><span class="src-doc"> * Saves the current sub-value</span></li>
221
- <li><a name="a182"></a><span class="src-doc"> *</span></li>
222
- <li><a name="a183"></a><span class="src-doc"> * Example for a subvalue:</span></li>
223
- <li><a name="a184"></a><span class="src-doc"> * background:url(foo.png) red no-repeat;</span></li>
224
- <li><a name="a185"></a><span class="src-doc"> * &quot;url(foo.png)&quot;, &quot;red&quot;, and &quot;no-repeat&quot; are subvalues,</span></li>
225
- <li><a name="a186"></a><span class="src-doc"> * seperated by whitespace</span></li>
226
- <li><a name="a187"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
227
- <li><a name="a188"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
228
- <li><a name="a189"></a><span class="src-doc"> */</span></li>
229
- <li><a name="a190"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$sub_value">$sub_value</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
230
- <li><a name="a191"></a>&nbsp;</li>
231
- <li><a name="a192"></a><span class="src-doc">/**</span></li>
232
- <li><a name="a193"></a><span class="src-doc"> * Array which saves all subvalues for a property.</span></li>
233
- <li><a name="a194"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
234
- <li><a name="a195"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> sub_value</span></li>
235
- <li><a name="a196"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
236
- <li><a name="a197"></a><span class="src-doc"> */</span></li>
237
- <li><a name="a198"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$sub_value_arr">$sub_value_arr</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
238
- <li><a name="a199"></a>&nbsp;</li>
239
- <li><a name="a200"></a><span class="src-doc">/**</span></li>
240
- <li><a name="a201"></a><span class="src-doc"> * Saves the char which opened the last string</span></li>
241
- <li><a name="a202"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
242
- <li><a name="a203"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
243
- <li><a name="a204"></a><span class="src-doc"> */</span></li>
244
- <li><a name="a205"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$str_char">$str_char</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
245
- <li><a name="a206"></a>&nbsp;</li>
246
- <li><a name="a207"></a><span class="src-doc">/**</span></li>
247
- <li><a name="a208"></a><span class="src-doc"> * Status from which the parser switched to ic or instr</span></li>
248
- <li><a name="a209"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
249
- <li><a name="a210"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
250
- <li><a name="a211"></a><span class="src-doc"> */</span></li>
251
- <li><a name="a212"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$from">$from</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
252
- <li><a name="a213"></a>&nbsp;</li>
253
- <li><a name="a214"></a><span class="src-doc">/**</span></li>
254
- <li><a name="a215"></a><span class="src-doc"> * Variable needed to manage string-in-strings, for example url(&quot;foo.png&quot;)</span></li>
255
- <li><a name="a216"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
256
- <li><a name="a217"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
257
- <li><a name="a218"></a><span class="src-doc"> */</span></li>
258
- <li><a name="a219"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$str_in_str">$str_in_str</a> = <span class="src-id">false</span><span class="src-sym">;</span></li>
259
- <li><a name="a220"></a>&nbsp;</li>
260
- <li><a name="a221"></a><span class="src-doc">/**</span></li>
261
- <li><a name="a222"></a><span class="src-doc"> * =true if in invalid at-rule</span></li>
262
- <li><a name="a223"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">bool </span></li>
263
- <li><a name="a224"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
264
- <li><a name="a225"></a><span class="src-doc"> */</span></li>
265
- <li><a name="a226"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$invalid_at">$invalid_at</a> = <span class="src-id">false</span><span class="src-sym">;</span></li>
266
- <li><a name="a227"></a>&nbsp;</li>
267
- <li><a name="a228"></a><span class="src-doc">/**</span></li>
268
- <li><a name="a229"></a><span class="src-doc"> * =true if something has been added to the current selector</span></li>
269
- <li><a name="a230"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">bool </span></li>
270
- <li><a name="a231"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
271
- <li><a name="a232"></a><span class="src-doc"> */</span></li>
272
- <li><a name="a233"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$added">$added</a> = <span class="src-id">false</span><span class="src-sym">;</span></li>
273
- <li><a name="a234"></a>&nbsp;</li>
274
- <li><a name="a235"></a><span class="src-doc">/**</span></li>
275
- <li><a name="a236"></a><span class="src-doc"> * Array which saves the message log</span></li>
276
- <li><a name="a237"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
277
- <li><a name="a238"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
278
- <li><a name="a239"></a><span class="src-doc"> */</span></li>
279
- <li><a name="a240"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$log">$log</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
280
- <li><a name="a241"></a>&nbsp;</li>
281
- <li><a name="a242"></a><span class="src-doc">/**</span></li>
282
- <li><a name="a243"></a><span class="src-doc"> * Saves the line number</span></li>
283
- <li><a name="a244"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
284
- <li><a name="a245"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
285
- <li><a name="a246"></a><span class="src-doc"> */</span></li>
286
- <li><a name="a247"></a><span class="src-key">var </span><a href="../csstidy/csstidy.html#var$line">$line</a> = <span class="src-num">1</span><span class="src-sym">;</span></li>
287
- <li><a name="a248"></a>&nbsp;</li>
288
- <li><a name="a249"></a><span class="src-doc">/**</span></li>
289
- <li><a name="a250"></a><span class="src-doc"> * Loads standard template and sets default settings</span></li>
290
- <li><a name="a251"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
291
- <li><a name="a252"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
292
- <li><a name="a253"></a><span class="src-doc"> */</span></li>
293
- <li><a name="a254"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
294
- <li><a name="a255"></a><span class="src-sym">{ </span></li>
295
- <li><a name="a256"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'remove_bslash'</span><span class="src-sym">] </span>= <span class="src-id">true</span><span class="src-sym">;</span></li>
296
- <li><a name="a257"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'compress_colors'</span><span class="src-sym">] </span>= <span class="src-id">true</span><span class="src-sym">;</span></li>
297
- <li><a name="a258"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'compress_font-weight'</span><span class="src-sym">] </span>= <span class="src-id">true</span><span class="src-sym">;</span></li>
298
- <li><a name="a259"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'lowercase_s'</span><span class="src-sym">] </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
299
- <li><a name="a260"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'optimise_shorthands'</span><span class="src-sym">] </span>= <span class="src-num">1</span><span class="src-sym">;</span></li>
300
- <li><a name="a261"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'remove_last_;'</span><span class="src-sym">] </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
301
- <li><a name="a262"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'case_properties'</span><span class="src-sym">] </span>= <span class="src-num">1</span><span class="src-sym">;</span></li>
302
- <li><a name="a263"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'sort_properties'</span><span class="src-sym">] </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
303
- <li><a name="a264"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'sort_selectors'</span><span class="src-sym">] </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
304
- <li><a name="a265"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'merge_selectors'</span><span class="src-sym">] </span>= <span class="src-num">2</span><span class="src-sym">;</span></li>
305
- <li><a name="a266"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'discard_invalid_properties'</span><span class="src-sym">] </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
306
- <li><a name="a267"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'css_level'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.1'</span><span class="src-sym">;</span></li>
307
- <li><a name="a268"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'preserve_css'</span><span class="src-sym">] </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
308
- <li><a name="a269"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-str">'timestamp'</span><span class="src-sym">] </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
309
- <li><a name="a270"></a>&nbsp;</li>
310
- <li><a name="a271"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodload_template">load_template</a><span class="src-sym">(</span><span class="src-str">'default'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
311
- <li><a name="a272"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$print">print</a> = <span class="src-key">new </span><span class="src-id"><a href="../csstidy/csstidy_print.html">csstidy_print</a></span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
312
- <li><a name="a273"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$optimise">optimise</a> = <span class="src-key">new </span><span class="src-id"><a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a></span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
313
- <li><a name="a274"></a><span class="src-sym">}</span></li>
314
- <li><a name="a275"></a>&nbsp;</li>
315
- <li><a name="a276"></a><span class="src-doc">/**</span></li>
316
- <li><a name="a277"></a><span class="src-doc"> * Get the value of a setting.</span></li>
317
- <li><a name="a278"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$setting </span></li>
318
- <li><a name="a279"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
319
- <li><a name="a280"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">mixed </span></li>
320
- <li><a name="a281"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
321
- <li><a name="a282"></a><span class="src-doc"> */</span></li>
322
- <li><a name="a283"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-var">$setting</span><span class="src-sym">)</span></li>
323
- <li><a name="a284"></a><span class="src-sym">{</span></li>
324
- <li><a name="a285"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-var">$setting</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
325
- <li><a name="a286"></a> <span class="src-sym">{</span></li>
326
- <li><a name="a287"></a> <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-var">$setting</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
327
- <li><a name="a288"></a> <span class="src-sym">}</span></li>
328
- <li><a name="a289"></a> <span class="src-key">return </span><span class="src-id">false</span><span class="src-sym">;</span></li>
329
- <li><a name="a290"></a><span class="src-sym">}</span></li>
330
- <li><a name="a291"></a>&nbsp;</li>
331
- <li><a name="a292"></a><span class="src-doc">/**</span></li>
332
- <li><a name="a293"></a><span class="src-doc"> * Set the value of a setting.</span></li>
333
- <li><a name="a294"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$setting </span></li>
334
- <li><a name="a295"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">mixed </span><span class="src-doc-var">$value </span></li>
335
- <li><a name="a296"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
336
- <li><a name="a297"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">bool </span></li>
337
- <li><a name="a298"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
338
- <li><a name="a299"></a><span class="src-doc"> */</span></li>
339
- <li><a name="a300"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodset_cfg">set_cfg</a><span class="src-sym">(</span><span class="src-var">$setting</span><span class="src-sym">,</span><span class="src-var">$value</span><span class="src-sym">)</span></li>
340
- <li><a name="a301"></a><span class="src-sym">{</span></li>
341
- <li><a name="a302"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-var">$setting</span><span class="src-sym">]</span><span class="src-sym">) </span>&amp;&amp; <span class="src-var">$value </span>!== <span class="src-str">''</span><span class="src-sym">)</span></li>
342
- <li><a name="a303"></a> <span class="src-sym">{</span></li>
343
- <li><a name="a304"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$settings">settings</a><span class="src-sym">[</span><span class="src-var">$setting</span><span class="src-sym">] </span>= <span class="src-var">$value</span><span class="src-sym">;</span></li>
344
- <li><a name="a305"></a> <span class="src-key">return </span><span class="src-id">true</span><span class="src-sym">;</span></li>
345
- <li><a name="a306"></a> <span class="src-sym">}</span></li>
346
- <li><a name="a307"></a> <span class="src-key">return </span><span class="src-id">false</span><span class="src-sym">;</span></li>
347
- <li><a name="a308"></a><span class="src-sym">}</span></li>
348
- <li><a name="a309"></a>&nbsp;</li>
349
- <li><a name="a310"></a><span class="src-doc">/**</span></li>
350
- <li><a name="a311"></a><span class="src-doc"> * Adds a token to $this-&gt;tokens</span></li>
351
- <li><a name="a312"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">mixed </span><span class="src-doc-var">$type </span></li>
352
- <li><a name="a313"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$data </span></li>
353
- <li><a name="a314"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">bool </span><span class="src-doc-var">$do </span><span class="src-doc">add a token even if preserve_css is off</span></li>
354
- <li><a name="a315"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
355
- <li><a name="a316"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
356
- <li><a name="a317"></a><span class="src-doc"> */</span></li>
357
- <li><a name="a318"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#method_add_token">_add_token</a><span class="src-sym">(</span><span class="src-var">$type</span><span class="src-sym">, </span><span class="src-var">$data</span><span class="src-sym">, </span><span class="src-var">$do </span>= <span class="src-id">false</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
358
- <li><a name="a319"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'preserve_css'</span><span class="src-sym">) </span>|| <span class="src-var">$do</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
359
- <li><a name="a320"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$tokens">tokens</a><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$type</span><span class="src-sym">, </span><span class="src-sym">(</span><span class="src-var">$type </span>== <span class="src-id"><a href="../csstidy/_data_inc_php.html#defineCOMMENT">COMMENT</a></span><span class="src-sym">) </span>? <span class="src-var">$data </span>: <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$data</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
360
- <li><a name="a321"></a> <span class="src-sym">}</span></li>
361
- <li><a name="a322"></a><span class="src-sym">}</span></li>
362
- <li><a name="a323"></a> </li>
363
- <li><a name="a324"></a><span class="src-doc">/**</span></li>
364
- <li><a name="a325"></a><span class="src-doc"> * Add a message to the message log</span></li>
365
- <li><a name="a326"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$message </span></li>
366
- <li><a name="a327"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$type </span></li>
367
- <li><a name="a328"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">integer </span><span class="src-doc-var">$line </span></li>
368
- <li><a name="a329"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
369
- <li><a name="a330"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
370
- <li><a name="a331"></a><span class="src-doc"> */</span></li>
371
- <li><a name="a332"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodlog">log</a><span class="src-sym">(</span><span class="src-var">$message</span><span class="src-sym">,</span><span class="src-var">$type</span><span class="src-sym">,</span><span class="src-var">$line </span>= -<span class="src-num">1</span><span class="src-sym">)</span></li>
372
- <li><a name="a333"></a><span class="src-sym">{</span></li>
373
- <li><a name="a334"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$line </span>=== -<span class="src-num">1</span><span class="src-sym">)</span></li>
374
- <li><a name="a335"></a> <span class="src-sym">{</span></li>
375
- <li><a name="a336"></a> <span class="src-var">$line </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$line">line</a><span class="src-sym">;</span></li>
376
- <li><a name="a337"></a> <span class="src-sym">}</span></li>
377
- <li><a name="a338"></a> <span class="src-var">$line </span>= <a href="http://www.php.net/intval">intval</a><span class="src-sym">(</span><span class="src-var">$line</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
378
- <li><a name="a339"></a> <span class="src-var">$add </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'m' </span>=&gt; <span class="src-var">$message</span><span class="src-sym">, </span><span class="src-str">'t' </span>=&gt; <span class="src-var">$type</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
379
- <li><a name="a340"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$log">log</a><span class="src-sym">[</span><span class="src-var">$line</span><span class="src-sym">]</span><span class="src-sym">) </span>|| <span class="src-sym">!</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$log">log</a><span class="src-sym">[</span><span class="src-var">$line</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
380
- <li><a name="a341"></a> <span class="src-sym">{</span></li>
381
- <li><a name="a342"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$log">log</a><span class="src-sym">[</span><span class="src-var">$line</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-var">$add</span><span class="src-sym">;</span></li>
382
- <li><a name="a343"></a> <span class="src-sym">}</span></li>
383
- <li><a name="a344"></a><span class="src-sym">}</span></li>
384
- <li><a name="a345"></a>&nbsp;</li>
385
- <li><a name="a346"></a><span class="src-doc">/**</span></li>
386
- <li><a name="a347"></a><span class="src-doc"> * Parse unicode notations and find a replacement character</span></li>
387
- <li><a name="a348"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$string </span></li>
388
- <li><a name="a349"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">integer </span><span class="src-doc-var">$i </span></li>
389
- <li><a name="a350"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
390
- <li><a name="a351"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
391
- <li><a name="a352"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
392
- <li><a name="a353"></a><span class="src-doc"> */</span></li>
393
- <li><a name="a354"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#method_unicode">_unicode</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$string</span><span class="src-sym">, </span><span class="src-sym">&amp;</span><span class="src-var">$i</span><span class="src-sym">)</span></li>
394
- <li><a name="a355"></a><span class="src-sym">{</span></li>
395
- <li><a name="a356"></a> ++<span class="src-var">$i</span><span class="src-sym">;</span></li>
396
- <li><a name="a357"></a> <span class="src-var">$add </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
397
- <li><a name="a358"></a> <span class="src-var">$tokens </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'tokens'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
398
- <li><a name="a359"></a> <span class="src-var">$replaced </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
399
- <li><a name="a360"></a> </li>
400
- <li><a name="a361"></a> <span class="src-key">while</span><span class="src-sym">(</span><span class="src-var">$i </span>&lt; <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">) </span>&amp;&amp; <span class="src-sym">(</span><a href="http://www.php.net/ctype_xdigit">ctype_xdigit</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">) </span>|| <a href="http://www.php.net/ctype_space">ctype_space</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">)) </span>&amp;&amp; <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">) </span>&lt; <span class="src-num">6</span><span class="src-sym">)</span></li>
401
- <li><a name="a362"></a> <span class="src-sym">{</span></li>
402
- <li><a name="a363"></a> <span class="src-var">$add </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
403
- <li><a name="a364"></a>&nbsp;</li>
404
- <li><a name="a365"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/ctype_space">ctype_space</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
405
- <li><a name="a366"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
406
- <li><a name="a367"></a> <span class="src-sym">}</span></li>
407
- <li><a name="a368"></a> <span class="src-var">$i</span>++<span class="src-sym">;</span></li>
408
- <li><a name="a369"></a> <span class="src-sym">}</span></li>
409
- <li><a name="a370"></a>&nbsp;</li>
410
- <li><a name="a371"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/hexdec">hexdec</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">) </span>&gt; <span class="src-num">47 </span>&amp;&amp; <a href="http://www.php.net/hexdec">hexdec</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">) </span>&lt; <span class="src-num">58 </span>|| <a href="http://www.php.net/hexdec">hexdec</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">) </span>&gt; <span class="src-num">64 </span>&amp;&amp; <a href="http://www.php.net/hexdec">hexdec</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">) </span>&lt; <span class="src-num">91 </span>|| <a href="http://www.php.net/hexdec">hexdec</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">) </span>&gt; <span class="src-num">96 </span>&amp;&amp; <a href="http://www.php.net/hexdec">hexdec</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">) </span>&lt; <span class="src-num">123</span><span class="src-sym">)</span></li>
411
- <li><a name="a372"></a> <span class="src-sym">{</span></li>
412
- <li><a name="a373"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodlog">log</a><span class="src-sym">(</span><span class="src-str">'Replaced unicode notation: Changed \\'</span>. <span class="src-var">$add </span>.<span class="src-str">' to ' </span>. <a href="http://www.php.net/chr">chr</a><span class="src-sym">(</span><a href="http://www.php.net/hexdec">hexdec</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">))</span><span class="src-sym">,</span><span class="src-str">'Information'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
413
- <li><a name="a374"></a> <span class="src-var">$add </span>= <a href="http://www.php.net/chr">chr</a><span class="src-sym">(</span><a href="http://www.php.net/hexdec">hexdec</a><span class="src-sym">(</span><span class="src-var">$add</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
414
- <li><a name="a375"></a> <span class="src-var">$replaced </span>= <span class="src-id">true</span><span class="src-sym">;</span></li>
415
- <li><a name="a376"></a> <span class="src-sym">}</span></li>
416
- <li><a name="a377"></a> <span class="src-key">else </span><span class="src-sym">{</span></li>
417
- <li><a name="a378"></a> <span class="src-var">$add </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-str">'\\'</span>.<span class="src-var">$add</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
418
- <li><a name="a379"></a> <span class="src-sym">}</span></li>
419
- <li><a name="a380"></a>&nbsp;</li>
420
- <li><a name="a381"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/ctype_xdigit">ctype_xdigit</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">}</span><span class="src-sym">) </span>&amp;&amp; <a href="http://www.php.net/ctype_space">ctype_space</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">)</span></li>
421
- <li><a name="a382"></a> &amp;&amp; <span class="src-sym">!</span><span class="src-var">$replaced </span>|| <span class="src-sym">!</span><a href="http://www.php.net/ctype_space">ctype_space</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
422
- <li><a name="a383"></a> <span class="src-var">$i</span>--<span class="src-sym">;</span></li>
423
- <li><a name="a384"></a> <span class="src-sym">}</span></li>
424
- <li><a name="a385"></a> </li>
425
- <li><a name="a386"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$add </span>!= <span class="src-str">'\\' </span>|| <span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'remove_bslash'</span><span class="src-sym">) </span>|| <a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$tokens</span><span class="src-sym">, </span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">}</span><span class="src-sym">) </span>!== <span class="src-id">false</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
426
- <li><a name="a387"></a> <span class="src-key">return </span><span class="src-var">$add</span><span class="src-sym">;</span></li>
427
- <li><a name="a388"></a> <span class="src-sym">}</span></li>
428
- <li><a name="a389"></a> </li>
429
- <li><a name="a390"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$add </span>== <span class="src-str">'\\'</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
430
- <li><a name="a391"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodlog">log</a><span class="src-sym">(</span><span class="src-str">'Removed unnecessary backslash'</span><span class="src-sym">,</span><span class="src-str">'Information'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
431
- <li><a name="a392"></a> <span class="src-sym">}</span></li>
432
- <li><a name="a393"></a> <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
433
- <li><a name="a394"></a><span class="src-sym">}</span></li>
434
- <li><a name="a395"></a>&nbsp;</li>
435
- <li><a name="a396"></a><span class="src-doc">/**</span></li>
436
- <li><a name="a397"></a><span class="src-doc"> * Loads a new template</span></li>
437
- <li><a name="a398"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$content </span><span class="src-doc">either filename (if $from_file == true), content of a template file, &quot;high_compression&quot;, &quot;highest_compression&quot;, &quot;low_compression&quot;, or &quot;default&quot;</span></li>
438
- <li><a name="a399"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">bool </span><span class="src-doc-var">$from_file </span><span class="src-doc">uses $content as filename if true</span></li>
439
- <li><a name="a400"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
440
- <li><a name="a401"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.1</span></li>
441
- <li><a name="a402"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> http://csstidy.sourceforge.net/templates.php</span></li>
442
- <li><a name="a403"></a><span class="src-doc"> */</span></li>
443
- <li><a name="a404"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodload_template">load_template</a><span class="src-sym">(</span><span class="src-var">$content</span><span class="src-sym">, </span><span class="src-var">$from_file</span>=<span class="src-id">true</span><span class="src-sym">)</span></li>
444
- <li><a name="a405"></a><span class="src-sym">{</span></li>
445
- <li><a name="a406"></a> <span class="src-var">$predefined_templates </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
446
- <li><a name="a407"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$content </span>== <span class="src-str">'high_compression' </span>|| <span class="src-var">$content </span>== <span class="src-str">'default' </span>|| <span class="src-var">$content </span>== <span class="src-str">'highest_compression' </span>|| <span class="src-var">$content </span>== <span class="src-str">'low_compression'</span><span class="src-sym">)</span></li>
447
- <li><a name="a408"></a> <span class="src-sym">{</span></li>
448
- <li><a name="a409"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">template </span>= <span class="src-var">$predefined_templates</span><span class="src-sym">[</span><span class="src-var">$content</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
449
- <li><a name="a410"></a> <span class="src-key">return</span><span class="src-sym">;</span></li>
450
- <li><a name="a411"></a> <span class="src-sym">}</span></li>
451
- <li><a name="a412"></a> </li>
452
- <li><a name="a413"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$from_file</span><span class="src-sym">)</span></li>
453
- <li><a name="a414"></a> <span class="src-sym">{</span></li>
454
- <li><a name="a415"></a> <span class="src-var">$content </span>= <a href="http://www.php.net/strip_tags">strip_tags</a><span class="src-sym">(</span><a href="http://www.php.net/file_get_contents">file_get_contents</a><span class="src-sym">(</span><span class="src-var">$content</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-str">'&lt;span&gt;'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
455
- <li><a name="a416"></a> <span class="src-sym">}</span></li>
456
- <li><a name="a417"></a> <span class="src-var">$content </span>= <a href="http://www.php.net/str_replace">str_replace</a><span class="src-sym">(</span><span class="src-str">&quot;\r\n&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;\n&quot;</span><span class="src-sym">,</span><span class="src-var">$content</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-comm">// Unify newlines (because the output also only uses \n)</span></li>
457
- <li><a name="a418"></a> <span class="src-var">$template </span>= <a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'|'</span><span class="src-sym">,</span><span class="src-var">$content</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
458
- <li><a name="a419"></a>&nbsp;</li>
459
- <li><a name="a420"></a> <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$template</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$i</span>++ <span class="src-sym">)</span></li>
460
- <li><a name="a421"></a> <span class="src-sym">{</span></li>
461
- <li><a name="a422"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">template</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">] </span>= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
462
- <li><a name="a423"></a> <span class="src-sym">}</span></li>
463
- <li><a name="a424"></a><span class="src-sym">}</span></li>
464
- <li><a name="a425"></a>&nbsp;</li>
465
- <li><a name="a426"></a><span class="src-doc">/**</span></li>
466
- <li><a name="a427"></a><span class="src-doc"> * Starts parsing from URL</span></li>
467
- <li><a name="a428"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$url </span></li>
468
- <li><a name="a429"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
469
- <li><a name="a430"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
470
- <li><a name="a431"></a><span class="src-doc"> */</span></li>
471
- <li><a name="a432"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodparse_from_url">parse_from_url</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">)</span></li>
472
- <li><a name="a433"></a><span class="src-sym">{</span></li>
473
- <li><a name="a434"></a> <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodparse">parse</a><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/file_get_contents">file_get_contents</a><span class="src-sym">(</span><span class="src-var">$url</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
474
- <li><a name="a435"></a><span class="src-sym">}</span></li>
475
- <li><a name="a436"></a>&nbsp;</li>
476
- <li><a name="a437"></a><span class="src-doc">/**</span></li>
477
- <li><a name="a438"></a><span class="src-doc"> * Checks if there is a token at the current position</span></li>
478
- <li><a name="a439"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$string </span></li>
479
- <li><a name="a440"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">integer </span><span class="src-doc-var">$i </span></li>
480
- <li><a name="a441"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
481
- <li><a name="a442"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.11</span></li>
482
- <li><a name="a443"></a><span class="src-doc"> */</span></li>
483
- <li><a name="a444"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodis_token">is_token</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$string</span><span class="src-sym">, </span><span class="src-var">$i</span><span class="src-sym">)</span></li>
484
- <li><a name="a445"></a><span class="src-sym">{</span></li>
485
- <li><a name="a446"></a> <span class="src-var">$tokens </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'tokens'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
486
- <li><a name="a447"></a> <span class="src-key">return </span><span class="src-sym">(</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$tokens</span><span class="src-sym">, </span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">) </span>!== <span class="src-id">false </span>&amp;&amp; <span class="src-sym">!</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
487
- <li><a name="a448"></a><span class="src-sym">}</span></li>
488
- <li><a name="a449"></a>&nbsp;</li>
489
- <li><a name="a450"></a>&nbsp;</li>
490
- <li><a name="a451"></a><span class="src-doc">/**</span></li>
491
- <li><a name="a452"></a><span class="src-doc"> * Parses CSS in $string. The code is saved as array in $this-&gt;css</span></li>
492
- <li><a name="a453"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$string </span><span class="src-doc">the CSS code</span></li>
493
- <li><a name="a454"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
494
- <li><a name="a455"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">bool </span></li>
495
- <li><a name="a456"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.1</span></li>
496
- <li><a name="a457"></a><span class="src-doc"> */</span></li>
497
- <li><a name="a458"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodparse">parse</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
498
- <li><a name="a459"></a> <span class="src-comm">// PHP bug? Settings need to be refreshed in PHP4</span></li>
499
- <li><a name="a460"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$print">print</a> = <span class="src-key">new </span><span class="src-id"><a href="../csstidy/csstidy_print.html">csstidy_print</a></span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
500
- <li><a name="a461"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$optimise">optimise</a> = <span class="src-key">new </span><span class="src-id"><a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a></span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
501
- <li><a name="a462"></a> </li>
502
- <li><a name="a463"></a> <span class="src-var">$all_properties </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
503
- <li><a name="a464"></a> <span class="src-var">$at_rules </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'at_rules'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
504
- <li><a name="a465"></a>&nbsp;</li>
505
- <li><a name="a466"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$css">css</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
506
- <li><a name="a467"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$print">print</a><span class="src-sym">-&gt;</span><span class="src-id">input_css </span>= <span class="src-var">$string</span><span class="src-sym">;</span></li>
507
- <li><a name="a468"></a> <span class="src-var">$string </span>= <a href="http://www.php.net/str_replace">str_replace</a><span class="src-sym">(</span><span class="src-str">&quot;\r\n&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;\n&quot;</span><span class="src-sym">,</span><span class="src-var">$string</span><span class="src-sym">) </span>. <span class="src-str">' '</span><span class="src-sym">;</span></li>
508
- <li><a name="a469"></a> <span class="src-var">$cur_comment </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
509
- <li><a name="a470"></a> </li>
510
- <li><a name="a471"></a> <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">, </span><span class="src-var">$size </span>= <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <span class="src-var">$size</span><span class="src-sym">; </span><span class="src-var">$i</span>++ <span class="src-sym">)</span></li>
511
- <li><a name="a472"></a> <span class="src-sym">{</span></li>
512
- <li><a name="a473"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">&quot;\n&quot; </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">&quot;\r&quot;</span><span class="src-sym">)</span></li>
513
- <li><a name="a474"></a> <span class="src-sym">{</span></li>
514
- <li><a name="a475"></a> ++<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$line">line</a><span class="src-sym">;</span></li>
515
- <li><a name="a476"></a> <span class="src-sym">}</span></li>
516
- <li><a name="a477"></a> </li>
517
- <li><a name="a478"></a> <span class="src-key">switch</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$status">status</a><span class="src-sym">)</span></li>
518
- <li><a name="a479"></a> <span class="src-sym">{</span></li>
519
- <li><a name="a480"></a> <span class="src-comm">/* Case in at-block */</span></li>
520
- <li><a name="a481"></a> <span class="src-key">case </span><span class="src-str">'at'</span>:</li>
521
- <li><a name="a482"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_token">is_token</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">))</span></li>
522
- <li><a name="a483"></a> <span class="src-sym">{</span></li>
523
- <li><a name="a484"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'/' </span>&amp;&amp; <span class="src-sym">@</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">} </span>== <span class="src-str">'*'</span><span class="src-sym">)</span></li>
524
- <li><a name="a485"></a> <span class="src-sym">{</span></li>
525
- <li><a name="a486"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$status">status</a> = <span class="src-str">'ic'</span><span class="src-sym">; </span>++<span class="src-var">$i</span><span class="src-sym">;</span></li>
526
- <li><a name="a487"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$from">from</a> = <span class="src-str">'at'</span><span class="src-sym">;</span></li>
527
- <li><a name="a488"></a> <span class="src-sym">}</span></li>
528
- <li><a name="a489"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'{'</span><span class="src-sym">)</span></li>
529
- <li><a name="a490"></a> <span class="src-sym">{</span></li>
530
- <li><a name="a491"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$status">status</a> = <span class="src-str">'is'</span><span class="src-sym">;</span></li>
531
- <li><a name="a492"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_add_token">_add_token</a><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineAT_START">AT_START</a></span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
532
- <li><a name="a493"></a> <span class="src-sym">}</span></li>
533
- <li><a name="a494"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">','</span><span class="src-sym">)</span></li>
534
- <li><a name="a495"></a> <span class="src-sym">{</span></li>
535
- <li><a name="a496"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a> = <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a><span class="src-sym">)</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
536
- <li><a name="a497"></a> <span class="src-sym">}</span></li>
537
- <li><a name="a498"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'\\'</span><span class="src-sym">)</span></li>
538
- <li><a name="a499"></a> <span class="src-sym">{</span></li>
539
- <li><a name="a500"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a> .= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_unicode">_unicode</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
540
- <li><a name="a501"></a> <span class="src-sym">}</span></li>
541
- <li><a name="a502"></a> <span class="src-sym">}</span></li>
542
- <li><a name="a503"></a> <span class="src-key">else</span></li>
543
- <li><a name="a504"></a> <span class="src-sym">{</span></li>
544
- <li><a name="a505"></a> <span class="src-var">$lastpos </span>= <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">;</span></li>
545
- <li><a name="a506"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-sym">( (</span><a href="http://www.php.net/ctype_space">ctype_space</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a><span class="src-sym">{</span><span class="src-var">$lastpos</span><span class="src-sym">}</span><span class="src-sym">) </span>|| <a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_token">is_token</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a><span class="src-sym">,</span><span class="src-var">$lastpos</span><span class="src-sym">) </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a><span class="src-sym">{</span><span class="src-var">$lastpos</span><span class="src-sym">} </span>== <span class="src-str">','</span><span class="src-sym">) </span>&amp;&amp; <a href="http://www.php.net/ctype_space">ctype_space</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">)))</span></li>
546
- <li><a name="a507"></a> <span class="src-sym">{</span></li>
547
- <li><a name="a508"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a> .= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
548
- <li><a name="a509"></a> <span class="src-sym">}</span></li>
549
- <li><a name="a510"></a> <span class="src-sym">}</span></li>
550
- <li><a name="a511"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
551
- <li><a name="a512"></a> </li>
552
- <li><a name="a513"></a> <span class="src-comm">/* Case in-selector */</span></li>
553
- <li><a name="a514"></a> <span class="src-key">case </span><span class="src-str">'is'</span>:</li>
554
- <li><a name="a515"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_token">is_token</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">))</span></li>
555
- <li><a name="a516"></a> <span class="src-sym">{</span></li>
556
- <li><a name="a517"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'/' </span>&amp;&amp; <span class="src-sym">@</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">} </span>== <span class="src-str">'*' </span>&amp;&amp; <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a><span class="src-sym">) </span>== <span class="src-str">''</span><span class="src-sym">)</span></li>
557
- <li><a name="a518"></a> <span class="src-sym">{</span></li>
558
- <li><a name="a519"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$status">status</a> = <span class="src-str">'ic'</span><span class="src-sym">; </span>++<span class="src-var">$i</span><span class="src-sym">;</span></li>
559
- <li><a name="a520"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$from">from</a> = <span class="src-str">'is'</span><span class="src-sym">;</span></li>
560
- <li><a name="a521"></a> <span class="src-sym">}</span></li>
561
- <li><a name="a522"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'@' </span>&amp;&amp; <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a><span class="src-sym">) </span>== <span class="src-str">''</span><span class="src-sym">)</span></li>
562
- <li><a name="a523"></a> <span class="src-sym">{</span></li>
563
- <li><a name="a524"></a> <span class="src-comm">// Check for at-rule</span></li>
564
- <li><a name="a525"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$invalid_at">invalid_at</a> = <span class="src-id">true</span><span class="src-sym">;</span></li>
565
- <li><a name="a526"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$at_rules </span><span class="src-key">as </span><span class="src-var">$name </span>=&gt; <span class="src-var">$type</span><span class="src-sym">)</span></li>
566
- <li><a name="a527"></a> <span class="src-sym">{</span></li>
567
- <li><a name="a528"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/strcasecmp">strcasecmp</a><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">,</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$name</span><span class="src-sym">))</span><span class="src-sym">,</span><span class="src-var">$name</span><span class="src-sym">))</span></li>
568
- <li><a name="a529"></a> <span class="src-sym">{</span></li>
569
- <li><a name="a530"></a> <span class="src-sym">(</span><span class="src-var">$type </span>== <span class="src-str">'at'</span><span class="src-sym">) </span>? <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a> = <span class="src-str">'@'</span>.<span class="src-var">$name </span>: <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a> = <span class="src-str">'@'</span>.<span class="src-var">$name</span><span class="src-sym">;</span></li>
570
- <li><a name="a531"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$status">status</a> = <span class="src-var">$type</span><span class="src-sym">;</span></li>
571
- <li><a name="a532"></a> <span class="src-var">$i </span>+= <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$name</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
572
- <li><a name="a533"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$invalid_at">invalid_at</a> = <span class="src-id">false</span><span class="src-sym">;</span></li>
573
- <li><a name="a534"></a> <span class="src-sym">}</span></li>
574
- <li><a name="a535"></a> <span class="src-sym">}</span></li>
575
- <li><a name="a536"></a> </li>
576
- <li><a name="a537"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$invalid_at">invalid_at</a><span class="src-sym">)</span></li>
577
- <li><a name="a538"></a> <span class="src-sym">{</span></li>
578
- <li><a name="a539"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a> = <span class="src-str">'@'</span><span class="src-sym">;</span></li>
579
- <li><a name="a540"></a> <span class="src-var">$invalid_at_name </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
580
- <li><a name="a541"></a> <span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$j </span>= <span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">; </span><span class="src-var">$j </span>&lt; <span class="src-var">$size</span><span class="src-sym">; </span>++<span class="src-var">$j</span><span class="src-sym">)</span></li>
581
- <li><a name="a542"></a> <span class="src-sym">{</span></li>
582
- <li><a name="a543"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/ctype_alpha">ctype_alpha</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$j</span><span class="src-sym">}</span><span class="src-sym">))</span></li>
583
- <li><a name="a544"></a> <span class="src-sym">{</span></li>
584
- <li><a name="a545"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
585
- <li><a name="a546"></a> <span class="src-sym">}</span></li>
586
- <li><a name="a547"></a> <span class="src-var">$invalid_at_name </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$j</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
587
- <li><a name="a548"></a> <span class="src-sym">}</span></li>
588
- <li><a name="a549"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodlog">log</a><span class="src-sym">(</span><span class="src-str">'Invalid @-rule: '</span>.<span class="src-var">$invalid_at_name</span>.<span class="src-str">' (removed)'</span><span class="src-sym">,</span><span class="src-str">'Warning'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
589
- <li><a name="a550"></a> <span class="src-sym">}</span></li>
590
- <li><a name="a551"></a> <span class="src-sym">}</span></li>
591
- <li><a name="a552"></a> <span class="src-key">elseif</span><span class="src-sym">((</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'&quot;' </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">&quot;'&quot;</span><span class="src-sym">))</span></li>
592
- <li><a name="a553"></a> <span class="src-sym">{</span></li>
593
- <li><a name="a554"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a> .= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
594
- <li><a name="a555"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$status">status</a> = <span class="src-str">'instr'</span><span class="src-sym">;</span></li>
595
- <li><a name="a556"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$str_char">str_char</a> = <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
596
- <li><a name="a557"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$from">from</a> = <span class="src-str">'is'</span><span class="src-sym">;</span></li>
597
- <li><a name="a558"></a> <span class="src-sym">}</span></li>
598
- <li><a name="a559"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$invalid_at">invalid_at</a> &amp;&amp; <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">';'</span><span class="src-sym">)</span></li>
599
- <li><a name="a560"></a> <span class="src-sym">{</span></li>
600
- <li><a name="a561"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$invalid_at">invalid_at</a> = <span class="src-id">false</span><span class="src-sym">;</span></li>
601
- <li><a name="a562"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$status">status</a> = <span class="src-str">'is'</span><span class="src-sym">;</span></li>
602
- <li><a name="a563"></a> <span class="src-sym">}</span></li>
603
- <li><a name="a564"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'{'</span><span class="src-sym">)</span></li>
604
- <li><a name="a565"></a> <span class="src-sym">{</span></li>
605
- <li><a name="a566"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$status">status</a> = <span class="src-str">'ip'</span><span class="src-sym">;</span></li>
606
- <li><a name="a567"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_add_token">_add_token</a><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineSEL_START">SEL_START</a></span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
607
- <li><a name="a568"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$added">added</a> = <span class="src-id">false</span><span class="src-sym">;</span></li>
608
- <li><a name="a569"></a> <span class="src-sym">}</span></li>
609
- <li><a name="a570"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'}'</span><span class="src-sym">)</span></li>
610
- <li><a name="a571"></a> <span class="src-sym">{</span></li>
611
- <li><a name="a572"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_add_token">_add_token</a><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineAT_END">AT_END</a></span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
612
- <li><a name="a573"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$at">at</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
613
- <li><a name="a574"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
614
- <li><a name="a575"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$sel_separate">sel_separate</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
615
- <li><a name="a576"></a> <span class="src-sym">}</span></li>
616
- <li><a name="a577"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">','</span><span class="src-sym">) </span></li>
617
- <li><a name="a578"></a> <span class="src-sym">{</span></li>
618
- <li><a name="a579"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a> = <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a><span class="src-sym">)</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
619
- <li><a name="a580"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$sel_separate">sel_separate</a><span class="src-sym">[</span><span class="src-sym">] </span>= <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
620
- <li><a name="a581"></a> <span class="src-sym">}</span></li>
621
- <li><a name="a582"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'\\'</span><span class="src-sym">)</span></li>
622
- <li><a name="a583"></a> <span class="src-sym">{</span></li>
623
- <li><a name="a584"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a> .= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_unicode">_unicode</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
624
- <li><a name="a585"></a> <span class="src-sym">}</span></li>
625
- <li><a name="a586"></a> <span class="src-key">else </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a> .= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
626
- <li><a name="a587"></a> <span class="src-sym">}</span></li>
627
- <li><a name="a588"></a> <span class="src-key">else</span></li>
628
- <li><a name="a589"></a> <span class="src-sym">{</span></li>
629
- <li><a name="a590"></a> <span class="src-var">$lastpos </span>= <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">;</span></li>
630
- <li><a name="a591"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$lastpos </span>== -<span class="src-num">1 </span>|| <span class="src-sym">!</span><span class="src-sym">( (</span><a href="http://www.php.net/ctype_space">ctype_space</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a><span class="src-sym">{</span><span class="src-var">$lastpos</span><span class="src-sym">}</span><span class="src-sym">) </span>|| <a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_token">is_token</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a><span class="src-sym">,</span><span class="src-var">$lastpos</span><span class="src-sym">) </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#var$selector">selector</a><span class="src-sym">{</span><span class="src-var">$lastpos</span><span class="src-sym">} </span>== <span class="src-str">','</span><span class="src-sym">) </span>&amp;&amp; <span class="src-id">ctype_space</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">)))</span></li>
631
- <li><a name="a592"></a> <span class="src-sym">{</span></li>
632
- <li><a name="a593"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a> </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
633
- <li><a name="a594"></a> <span class="src-sym">}</span></li>
634
- <li><a name="a595"></a> <span class="src-sym">}</span></li>
635
- <li><a name="a596"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
636
- <li><a name="a597"></a> </li>
637
- <li><a name="a598"></a> <span class="src-comm">/* Case in-property */</span></li>
638
- <li><a name="a599"></a> <span class="src-key">case </span><span class="src-str">'ip'</span>:</li>
639
- <li><a name="a600"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_token">is_token</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">))</span></li>
640
- <li><a name="a601"></a> <span class="src-sym">{</span></li>
641
- <li><a name="a602"></a> <span class="src-key">if</span><span class="src-sym">((</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">':' </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'='</span><span class="src-sym">) </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a> </span>!= <span class="src-str">''</span><span class="src-sym">)</span></li>
642
- <li><a name="a603"></a> <span class="src-sym">{</span></li>
643
- <li><a name="a604"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-str">'iv'</span><span class="src-sym">;</span></li>
644
- <li><a name="a605"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodproperty_is_valid">property_is_valid</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a></span><span class="src-sym">) </span>|| <span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'discard_invalid_properties'</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
645
- <li><a name="a606"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_add_token">_add_token</a><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#definePROPERTY">PROPERTY</a></span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
646
- <li><a name="a607"></a> <span class="src-sym">}</span></li>
647
- <li><a name="a608"></a> <span class="src-sym">}</span></li>
648
- <li><a name="a609"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'/' </span>&amp;&amp; <span class="src-sym">@</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">} </span>== <span class="src-str">'*' </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a> </span>== <span class="src-str">''</span><span class="src-sym">)</span></li>
649
- <li><a name="a610"></a> <span class="src-sym">{</span></li>
650
- <li><a name="a611"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-str">'ic'</span><span class="src-sym">; </span>++<span class="src-var">$i</span><span class="src-sym">;</span></li>
651
- <li><a name="a612"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$from">from</a> </span>= <span class="src-str">'ip'</span><span class="src-sym">;</span></li>
652
- <li><a name="a613"></a> <span class="src-sym">}</span></li>
653
- <li><a name="a614"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'}'</span><span class="src-sym">)</span></li>
654
- <li><a name="a615"></a> <span class="src-sym">{</span></li>
655
- <li><a name="a616"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodexplode_selectors">explode_selectors</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
656
- <li><a name="a617"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-str">'is'</span><span class="src-sym">;</span></li>
657
- <li><a name="a618"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$invalid_at">invalid_at</a> </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
658
- <li><a name="a619"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_add_token">_add_token</a><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineSEL_END">SEL_END</a></span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
659
- <li><a name="a620"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
660
- <li><a name="a621"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
661
- <li><a name="a622"></a> <span class="src-sym">}</span></li>
662
- <li><a name="a623"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">';'</span><span class="src-sym">)</span></li>
663
- <li><a name="a624"></a> <span class="src-sym">{</span></li>
664
- <li><a name="a625"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
665
- <li><a name="a626"></a> <span class="src-sym">}</span></li>
666
- <li><a name="a627"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'\\'</span><span class="src-sym">)</span></li>
667
- <li><a name="a628"></a> <span class="src-sym">{</span></li>
668
- <li><a name="a629"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a> </span>.= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_unicode">_unicode</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
669
- <li><a name="a630"></a> <span class="src-sym">}</span></li>
670
- <li><a name="a631"></a> <span class="src-sym">}</span></li>
671
- <li><a name="a632"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/ctype_space">ctype_space</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">))</span></li>
672
- <li><a name="a633"></a> <span class="src-sym">{</span></li>
673
- <li><a name="a634"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a> </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
674
- <li><a name="a635"></a> <span class="src-sym">}</span></li>
675
- <li><a name="a636"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
676
- <li><a name="a637"></a> </li>
677
- <li><a name="a638"></a> <span class="src-comm">/* Case in-value */</span></li>
678
- <li><a name="a639"></a> <span class="src-key">case </span><span class="src-str">'iv'</span>:</li>
679
- <li><a name="a640"></a> <span class="src-var">$pn </span>= <span class="src-sym">((</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">&quot;\n&quot; </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">&quot;\r&quot;</span><span class="src-sym">) </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodproperty_is_next">property_is_next</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">) </span>|| <span class="src-var">$i </span>== <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
680
- <li><a name="a641"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_token">is_token</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">) </span>|| <span class="src-var">$pn</span><span class="src-sym">)</span></li>
681
- <li><a name="a642"></a> <span class="src-sym">{</span></li>
682
- <li><a name="a643"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'/' </span>&amp;&amp; <span class="src-sym">@</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">} </span>== <span class="src-str">'*'</span><span class="src-sym">)</span></li>
683
- <li><a name="a644"></a> <span class="src-sym">{</span></li>
684
- <li><a name="a645"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-str">'ic'</span><span class="src-sym">; </span>++<span class="src-var">$i</span><span class="src-sym">;</span></li>
685
- <li><a name="a646"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$from">from</a> </span>= <span class="src-str">'iv'</span><span class="src-sym">;</span></li>
686
- <li><a name="a647"></a> <span class="src-sym">}</span></li>
687
- <li><a name="a648"></a> <span class="src-key">elseif</span><span class="src-sym">((</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'&quot;' </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">&quot;'&quot; </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'('</span><span class="src-sym">))</span></li>
688
- <li><a name="a649"></a> <span class="src-sym">{</span></li>
689
- <li><a name="a650"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
690
- <li><a name="a651"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$str_char">str_char</a> </span>= <span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'('</span><span class="src-sym">) </span>? <span class="src-str">')' </span>: <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
691
- <li><a name="a652"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-str">'instr'</span><span class="src-sym">;</span></li>
692
- <li><a name="a653"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$from">from</a> </span>= <span class="src-str">'iv'</span><span class="src-sym">;</span></li>
693
- <li><a name="a654"></a> <span class="src-sym">}</span></li>
694
- <li><a name="a655"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">','</span><span class="src-sym">)</span></li>
695
- <li><a name="a656"></a> <span class="src-sym">{</span></li>
696
- <li><a name="a657"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a></span><span class="src-sym">)</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
697
- <li><a name="a658"></a> <span class="src-sym">}</span></li>
698
- <li><a name="a659"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'\\'</span><span class="src-sym">)</span></li>
699
- <li><a name="a660"></a> <span class="src-sym">{</span></li>
700
- <li><a name="a661"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>.= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_unicode">_unicode</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
701
- <li><a name="a662"></a> <span class="src-sym">}</span></li>
702
- <li><a name="a663"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">';' </span>|| <span class="src-var">$pn</span><span class="src-sym">)</span></li>
703
- <li><a name="a664"></a> <span class="src-sym">{</span></li>
704
- <li><a name="a665"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">{</span><span class="src-num">0</span><span class="src-sym">} </span>== <span class="src-str">'@' </span>&amp;&amp; isset<span class="src-sym">(</span><span class="src-var">$at_rules</span><span class="src-sym">[</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">]</span><span class="src-sym">) </span>&amp;&amp; <span class="src-var">$at_rules</span><span class="src-sym">[</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">] </span>== <span class="src-str">'iv'</span><span class="src-sym">)</span></li>
705
- <li><a name="a666"></a> <span class="src-sym">{</span></li>
706
- <li><a name="a667"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value_arr">sub_value_arr</a></span><span class="src-sym">[</span><span class="src-sym">] </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
707
- <li><a name="a668"></a> </li>
708
- <li><a name="a669"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-str">'is'</span><span class="src-sym">;</span></li>
709
- <li><a name="a670"></a> </li>
710
- <li><a name="a671"></a> <span class="src-key">switch</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">)</span></li>
711
- <li><a name="a672"></a> <span class="src-sym">{</span></li>
712
- <li><a name="a673"></a> <span class="src-key">case </span><span class="src-str">'@charset'</span>: <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$charset">charset</a> </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value_arr">sub_value_arr</a></span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">; </span><span class="src-key">break</span><span class="src-sym">;</span></li>
713
- <li><a name="a674"></a> <span class="src-key">case </span><span class="src-str">'@namespace'</span>: <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$namespace">namespace</a> </span>= <a href="http://www.php.net/implode">implode</a><span class="src-sym">(</span><span class="src-str">' '</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value_arr">sub_value_arr</a></span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-key">break</span><span class="src-sym">;</span></li>
714
- <li><a name="a675"></a> <span class="src-key">case </span><span class="src-str">'@import'</span>: <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$import">import</a></span><span class="src-sym">[</span><span class="src-sym">] </span>= <a href="http://www.php.net/implode">implode</a><span class="src-sym">(</span><span class="src-str">' '</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value_arr">sub_value_arr</a></span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-key">break</span><span class="src-sym">;</span></li>
715
- <li><a name="a676"></a> <span class="src-sym">}</span></li>
716
- <li><a name="a677"></a> </li>
717
- <li><a name="a678"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value_arr">sub_value_arr</a> </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
718
- <li><a name="a679"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
719
- <li><a name="a680"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
720
- <li><a name="a681"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sel_separate">sel_separate</a> </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
721
- <li><a name="a682"></a> <span class="src-sym">}</span></li>
722
- <li><a name="a683"></a> <span class="src-key">else</span></li>
723
- <li><a name="a684"></a> <span class="src-sym">{</span></li>
724
- <li><a name="a685"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-str">'ip'</span><span class="src-sym">;</span></li>
725
- <li><a name="a686"></a> <span class="src-sym">}</span></li>
726
- <li><a name="a687"></a> <span class="src-sym">}</span></li>
727
- <li><a name="a688"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>!= <span class="src-str">'}'</span><span class="src-sym">)</span></li>
728
- <li><a name="a689"></a> <span class="src-sym">{</span></li>
729
- <li><a name="a690"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
730
- <li><a name="a691"></a> <span class="src-sym">}</span></li>
731
- <li><a name="a692"></a> <span class="src-key">if</span><span class="src-sym">((</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'}' </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">';' </span>|| <span class="src-var">$pn</span><span class="src-sym">) </span>&amp;&amp; <span class="src-sym">!</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">))</span></li>
732
- <li><a name="a693"></a> <span class="src-sym">{</span></li>
733
- <li><a name="a694"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$at">at</a> </span>== <span class="src-str">''</span><span class="src-sym">)</span></li>
734
- <li><a name="a695"></a> <span class="src-sym">{</span></li>
735
- <li><a name="a696"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$at">at</a> </span>= <span class="src-id"><a href="../csstidy/_data_inc_php.html#defineDEFAULT_AT">DEFAULT_AT</a></span><span class="src-sym">;</span></li>
736
- <li><a name="a697"></a> <span class="src-sym">}</span></li>
737
- <li><a name="a698"></a> </li>
738
- <li><a name="a699"></a> <span class="src-comm">// case settings</span></li>
739
- <li><a name="a700"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'lowercase_s'</span><span class="src-sym">))</span></li>
740
- <li><a name="a701"></a> <span class="src-sym">{</span></li>
741
- <li><a name="a702"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a> </span>= <a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
742
- <li><a name="a703"></a> <span class="src-sym">}</span></li>
743
- <li><a name="a704"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a> </span>= <a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
744
- <li><a name="a705"></a> </li>
745
- <li><a name="a706"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$optimise">optimise</a></span><span class="src-sym">-&gt;</span><span class="src-id">subvalue</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
746
- <li><a name="a707"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>!= <span class="src-str">''</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
747
- <li><a name="a708"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value_arr">sub_value_arr</a></span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a></span><span class="src-sym">;</span></li>
748
- <li><a name="a709"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
749
- <li><a name="a710"></a> <span class="src-sym">} </span></li>
750
- <li><a name="a711"></a> </li>
751
- <li><a name="a712"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$value">value</a> </span>= <a href="http://www.php.net/implode">implode</a><span class="src-sym">(</span><span class="src-str">' '</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value_arr">sub_value_arr</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
752
- <li><a name="a713"></a>&nbsp;</li>
753
- <li><a name="a714"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a> </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
754
- <li><a name="a715"></a> </li>
755
- <li><a name="a716"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$optimise">optimise</a></span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$value">value</a></span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
756
- <li><a name="a717"></a> </li>
757
- <li><a name="a718"></a> <span class="src-var">$valid </span>= <a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodproperty_is_valid">property_is_valid</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
758
- <li><a name="a719"></a> <span class="src-key">if</span><span class="src-sym">((</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$invalid_at">invalid_at</a> </span>|| <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'preserve_css'</span><span class="src-sym">)) </span>&amp;&amp; <span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'discard_invalid_properties'</span><span class="src-sym">) </span>|| <span class="src-var">$valid</span><span class="src-sym">))</span></li>
759
- <li><a name="a720"></a> <span class="src-sym">{</span></li>
760
- <li><a name="a721"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodcss_add_property">css_add_property</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$at">at</a></span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a></span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$value">value</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
761
- <li><a name="a722"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_add_token">_add_token</a><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineVALUE">VALUE</a></span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$value">value</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
762
- <li><a name="a723"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$optimise">optimise</a></span><span class="src-sym">-&gt;</span><span class="src-id">shorthands</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
763
- <li><a name="a724"></a> <span class="src-sym">}</span></li>
764
- <li><a name="a725"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$valid</span><span class="src-sym">)</span></li>
765
- <li><a name="a726"></a> <span class="src-sym">{</span></li>
766
- <li><a name="a727"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'discard_invalid_properties'</span><span class="src-sym">))</span></li>
767
- <li><a name="a728"></a> <span class="src-sym">{</span></li>
768
- <li><a name="a729"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodlog">log</a><span class="src-sym">(</span><span class="src-str">'Removed invalid property: '</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a></span><span class="src-sym">,</span><span class="src-str">'Warning'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
769
- <li><a name="a730"></a> <span class="src-sym">}</span></li>
770
- <li><a name="a731"></a> <span class="src-key">else</span></li>
771
- <li><a name="a732"></a> <span class="src-sym">{</span></li>
772
- <li><a name="a733"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodlog">log</a><span class="src-sym">(</span><span class="src-str">'Invalid property in '</span>.<a href="http://www.php.net/strtoupper">strtoupper</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'css_level'</span><span class="src-sym">))</span>.<span class="src-str">': '</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a></span><span class="src-sym">,</span><span class="src-str">'Warning'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
773
- <li><a name="a734"></a> <span class="src-sym">}</span></li>
774
- <li><a name="a735"></a> <span class="src-sym">}</span></li>
775
- <li><a name="a736"></a> </li>
776
- <li><a name="a737"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$property">property</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
777
- <li><a name="a738"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value_arr">sub_value_arr</a> </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
778
- <li><a name="a739"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$value">value</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
779
- <li><a name="a740"></a> <span class="src-sym">}</span></li>
780
- <li><a name="a741"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'}'</span><span class="src-sym">)</span></li>
781
- <li><a name="a742"></a> <span class="src-sym">{</span></li>
782
- <li><a name="a743"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodexplode_selectors">explode_selectors</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
783
- <li><a name="a744"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_add_token">_add_token</a><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineSEL_END">SEL_END</a></span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
784
- <li><a name="a745"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-str">'is'</span><span class="src-sym">;</span></li>
785
- <li><a name="a746"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$invalid_at">invalid_at</a> </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
786
- <li><a name="a747"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
787
- <li><a name="a748"></a> <span class="src-sym">} </span></li>
788
- <li><a name="a749"></a> <span class="src-sym">}</span></li>
789
- <li><a name="a750"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$pn</span><span class="src-sym">)</span></li>
790
- <li><a name="a751"></a> <span class="src-sym">{</span></li>
791
- <li><a name="a752"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
792
- <li><a name="a753"></a>&nbsp;</li>
793
- <li><a name="a754"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/ctype_space">ctype_space</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">))</span></li>
794
- <li><a name="a755"></a> <span class="src-sym">{</span></li>
795
- <li><a name="a756"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$optimise">optimise</a></span><span class="src-sym">-&gt;</span><span class="src-id">subvalue</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
796
- <li><a name="a757"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>!= <span class="src-str">''</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
797
- <li><a name="a758"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value_arr">sub_value_arr</a></span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a></span><span class="src-sym">;</span></li>
798
- <li><a name="a759"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
799
- <li><a name="a760"></a> <span class="src-sym">}</span></li>
800
- <li><a name="a761"></a> <span class="src-sym">}</span></li>
801
- <li><a name="a762"></a> <span class="src-sym">}</span></li>
802
- <li><a name="a763"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
803
- <li><a name="a764"></a> </li>
804
- <li><a name="a765"></a> <span class="src-comm">/* Case in string */</span></li>
805
- <li><a name="a766"></a> <span class="src-key">case </span><span class="src-str">'instr'</span>:</li>
806
- <li><a name="a767"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$str_char">str_char</a> </span>== <span class="src-str">')' </span>&amp;&amp; <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'&quot;' </span>&amp;&amp; <span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$str_in_str">str_in_str</a> </span>&amp;&amp; <span class="src-sym">!</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">))</span></li>
807
- <li><a name="a768"></a> <span class="src-sym">{</span></li>
808
- <li><a name="a769"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$str_in_str">str_in_str</a> </span>= <span class="src-id">true</span><span class="src-sym">;</span></li>
809
- <li><a name="a770"></a> <span class="src-sym">}</span></li>
810
- <li><a name="a771"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$str_char">str_char</a> </span>== <span class="src-str">')' </span>&amp;&amp; <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'&quot;' </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$str_in_str">str_in_str</a> </span>&amp;&amp; <span class="src-sym">!</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">))</span></li>
811
- <li><a name="a772"></a> <span class="src-sym">{</span></li>
812
- <li><a name="a773"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$str_in_str">str_in_str</a> </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
813
- <li><a name="a774"></a> <span class="src-sym">}</span></li>
814
- <li><a name="a775"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$str_char">str_char</a> </span>&amp;&amp; <span class="src-sym">!</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">) </span>&amp;&amp; <span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$str_in_str">str_in_str</a></span><span class="src-sym">)</span></li>
815
- <li><a name="a776"></a> <span class="src-sym">{</span></li>
816
- <li><a name="a777"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$from">from</a></span><span class="src-sym">;</span></li>
817
- <li><a name="a778"></a> <span class="src-sym">}</span></li>
818
- <li><a name="a779"></a> <span class="src-var">$temp_add </span>= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
819
- <li><a name="a780"></a> <span class="src-comm">// ...and no not-escaped backslash at the previous position</span></li>
820
- <li><a name="a781"></a> <span class="src-key">if</span><span class="src-sym">( (</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">&quot;\n&quot; </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">&quot;\r&quot;</span><span class="src-sym">) </span>&amp;&amp; <span class="src-sym">!</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span>-<span class="src-num">1</span><span class="src-sym">} </span>== <span class="src-str">'\\' </span>&amp;&amp; <span class="src-sym">!</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span>-<span class="src-num">1</span><span class="src-sym">)) )</span></li>
821
- <li><a name="a782"></a> <span class="src-sym">{</span></li>
822
- <li><a name="a783"></a> <span class="src-var">$temp_add </span>= <span class="src-str">&quot;\\A &quot;</span><span class="src-sym">;</span></li>
823
- <li><a name="a784"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodlog">log</a><span class="src-sym">(</span><span class="src-str">'Fixed incorrect newline in string'</span><span class="src-sym">,</span><span class="src-str">'Warning'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
824
- <li><a name="a785"></a> <span class="src-sym">}</span></li>
825
- <li><a name="a786"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$from">from</a> </span>== <span class="src-str">'iv'</span><span class="src-sym">)</span></li>
826
- <li><a name="a787"></a> <span class="src-sym">{</span></li>
827
- <li><a name="a788"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sub_value">sub_value</a> </span>.= <span class="src-var">$temp_add</span><span class="src-sym">;</span></li>
828
- <li><a name="a789"></a> <span class="src-sym">}</span></li>
829
- <li><a name="a790"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$from">from</a> </span>== <span class="src-str">'is'</span><span class="src-sym">)</span></li>
830
- <li><a name="a791"></a> <span class="src-sym">{</span></li>
831
- <li><a name="a792"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a> </span>.= <span class="src-var">$temp_add</span><span class="src-sym">;</span></li>
832
- <li><a name="a793"></a> <span class="src-sym">}</span></li>
833
- <li><a name="a794"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
834
- <li><a name="a795"></a> </li>
835
- <li><a name="a796"></a> <span class="src-comm">/* Case in-comment */</span></li>
836
- <li><a name="a797"></a> <span class="src-key">case </span><span class="src-str">'ic'</span>:</li>
837
- <li><a name="a798"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'*' </span>&amp;&amp; <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">} </span>== <span class="src-str">'/'</span><span class="src-sym">)</span></li>
838
- <li><a name="a799"></a> <span class="src-sym">{</span></li>
839
- <li><a name="a800"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$status">status</a> </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$from">from</a></span><span class="src-sym">;</span></li>
840
- <li><a name="a801"></a> <span class="src-var">$i</span>++<span class="src-sym">;</span></li>
841
- <li><a name="a802"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#method_add_token">_add_token</a><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineCOMMENT">COMMENT</a></span><span class="src-sym">, </span><span class="src-var">$cur_comment</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
842
- <li><a name="a803"></a> <span class="src-var">$cur_comment </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
843
- <li><a name="a804"></a> <span class="src-sym">}</span></li>
844
- <li><a name="a805"></a> <span class="src-key">else</span></li>
845
- <li><a name="a806"></a> <span class="src-sym">{</span></li>
846
- <li><a name="a807"></a> <span class="src-var">$cur_comment </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
847
- <li><a name="a808"></a> <span class="src-sym">}</span></li>
848
- <li><a name="a809"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
849
- <li><a name="a810"></a> <span class="src-sym">}</span></li>
850
- <li><a name="a811"></a> <span class="src-sym">}</span></li>
851
- <li><a name="a812"></a>&nbsp;</li>
852
- <li><a name="a813"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$optimise">optimise</a></span><span class="src-sym">-&gt;</span><span class="src-id">postparse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
853
- <li><a name="a814"></a>&nbsp;</li>
854
- <li><a name="a815"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$print">print</a></span><span class="src-sym">-&gt;</span><span class="src-id">_reset</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
855
- <li><a name="a816"></a>&nbsp;</li>
856
- <li><a name="a817"></a> <span class="src-key">return </span><span class="src-sym">!</span><span class="src-sym">(</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$css">css</a></span><span class="src-sym">) </span>&amp;&amp; <span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$import">import</a></span><span class="src-sym">) </span>&amp;&amp; <span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$charset">charset</a></span><span class="src-sym">) </span>&amp;&amp; <span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$tokens">tokens</a></span><span class="src-sym">) </span>&amp;&amp; <span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$namespace">namespace</a></span><span class="src-sym">))</span><span class="src-sym">;</span></li>
857
- <li><a name="a818"></a><span class="src-sym">}</span></li>
858
- <li><a name="a819"></a>&nbsp;</li>
859
- <li><a name="a820"></a><span class="src-doc">/**</span></li>
860
- <li><a name="a821"></a><span class="src-doc"> * Explodes selectors</span></li>
861
- <li><a name="a822"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
862
- <li><a name="a823"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
863
- <li><a name="a824"></a><span class="src-doc"> */</span></li>
864
- <li><a name="a825"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodexplode_selectors">explode_selectors</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
865
- <li><a name="a826"></a><span class="src-sym">{</span></li>
866
- <li><a name="a827"></a> <span class="src-comm">// Explode multiple selectors</span></li>
867
- <li><a name="a828"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'merge_selectors'</span><span class="src-sym">) </span>== <span class="src-num">1</span><span class="src-sym">)</span></li>
868
- <li><a name="a829"></a> <span class="src-sym">{</span></li>
869
- <li><a name="a830"></a> <span class="src-var">$new_sels </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
870
- <li><a name="a831"></a> <span class="src-var">$lastpos </span>= <span class="src-num">0</span><span class="src-sym">;</span></li>
871
- <li><a name="a832"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sel_separate">sel_separate</a></span><span class="src-sym">[</span><span class="src-sym">] </span>= <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">)</span><span class="src-sym">;</span></li>
872
- <li><a name="a833"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sel_separate">sel_separate</a> </span><span class="src-key">as </span><span class="src-var">$num </span>=&gt; <span class="src-var">$pos</span><span class="src-sym">)</span></li>
873
- <li><a name="a834"></a> <span class="src-sym">{</span></li>
874
- <li><a name="a835"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$num </span>== <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sel_separate">sel_separate</a></span><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
875
- <li><a name="a836"></a> <span class="src-var">$pos </span>+= <span class="src-num">1</span><span class="src-sym">;</span></li>
876
- <li><a name="a837"></a> <span class="src-sym">}</span></li>
877
- <li><a name="a838"></a> </li>
878
- <li><a name="a839"></a> <span class="src-var">$new_sels</span><span class="src-sym">[</span><span class="src-sym">] </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">,</span><span class="src-var">$lastpos</span><span class="src-sym">,</span><span class="src-var">$pos</span>-<span class="src-var">$lastpos</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
879
- <li><a name="a840"></a> <span class="src-var">$lastpos </span>= <span class="src-var">$pos</span><span class="src-sym">;</span></li>
880
- <li><a name="a841"></a> <span class="src-sym">}</span></li>
881
- <li><a name="a842"></a> </li>
882
- <li><a name="a843"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$new_sels</span><span class="src-sym">) </span>&gt; <span class="src-num">1</span><span class="src-sym">)</span></li>
883
- <li><a name="a844"></a> <span class="src-sym">{</span></li>
884
- <li><a name="a845"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$new_sels </span><span class="src-key">as </span><span class="src-var">$selector</span><span class="src-sym">)</span></li>
885
- <li><a name="a846"></a> <span class="src-sym">{</span></li>
886
- <li><a name="a847"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodmerge_css_blocks">merge_css_blocks</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$at">at</a></span><span class="src-sym">,</span><span class="src-var">$selector</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$css">css</a></span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$at">at</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
887
- <li><a name="a848"></a> <span class="src-sym">}</span></li>
888
- <li><a name="a849"></a> unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$css">css</a></span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$at">at</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$selector">selector</a></span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
889
- <li><a name="a850"></a> <span class="src-sym">}</span></li>
890
- <li><a name="a851"></a> <span class="src-sym">}</span></li>
891
- <li><a name="a852"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$sel_separate">sel_separate</a> </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
892
- <li><a name="a853"></a><span class="src-sym">}</span></li>
893
- <li><a name="a854"></a>&nbsp;</li>
894
- <li><a name="a855"></a><span class="src-doc">/**</span></li>
895
- <li><a name="a856"></a><span class="src-doc"> * Checks if a character is escaped (and returns true if it is)</span></li>
896
- <li><a name="a857"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$string </span></li>
897
- <li><a name="a858"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">integer </span><span class="src-doc-var">$pos </span></li>
898
- <li><a name="a859"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
899
- <li><a name="a860"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">bool </span></li>
900
- <li><a name="a861"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.02</span></li>
901
- <li><a name="a862"></a><span class="src-doc"> */</span></li>
902
- <li><a name="a863"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$pos</span><span class="src-sym">) </span></li>
903
- <li><a name="a864"></a><span class="src-sym">{</span></li>
904
- <li><a name="a865"></a> <span class="src-key">return </span><span class="src-sym">!</span><span class="src-sym">(</span><span class="src-sym">@</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$pos</span>-<span class="src-num">1</span><span class="src-sym">} </span>!= <span class="src-str">'\\'</span><span class="src-sym">) </span>|| <a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$pos</span>-<span class="src-num">1</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
905
- <li><a name="a866"></a><span class="src-sym">}</span></li>
906
- <li><a name="a867"></a>&nbsp;</li>
907
- <li><a name="a868"></a><span class="src-doc">/**</span></li>
908
- <li><a name="a869"></a><span class="src-doc"> * Adds a property with value to the existing CSS code</span></li>
909
- <li><a name="a870"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$media </span></li>
910
- <li><a name="a871"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$selector </span></li>
911
- <li><a name="a872"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$property </span></li>
912
- <li><a name="a873"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$new_val </span></li>
913
- <li><a name="a874"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
914
- <li><a name="a875"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
915
- <li><a name="a876"></a><span class="src-doc"> */</span></li>
916
- <li><a name="a877"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodcss_add_property">css_add_property</a><span class="src-sym">(</span><span class="src-var">$media</span><span class="src-sym">,</span><span class="src-var">$selector</span><span class="src-sym">,</span><span class="src-var">$property</span><span class="src-sym">,</span><span class="src-var">$new_val</span><span class="src-sym">)</span></li>
917
- <li><a name="a878"></a><span class="src-sym">{ </span></li>
918
- <li><a name="a879"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'preserve_css'</span><span class="src-sym">) </span>|| <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$new_val</span><span class="src-sym">) </span>== <span class="src-str">''</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
919
- <li><a name="a880"></a> <span class="src-key">return</span><span class="src-sym">;</span></li>
920
- <li><a name="a881"></a> <span class="src-sym">}</span></li>
921
- <li><a name="a882"></a>&nbsp;</li>
922
- <li><a name="a883"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$added">added</a> </span>= <span class="src-id">true</span><span class="src-sym">;</span></li>
923
- <li><a name="a884"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$css">css</a></span><span class="src-sym">[</span><span class="src-var">$media</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
924
- <li><a name="a885"></a> <span class="src-sym">{</span></li>
925
- <li><a name="a886"></a> <span class="src-key">if</span><span class="src-sym">((</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$css">css</a></span><span class="src-sym">[</span><span class="src-var">$media</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">) </span>&amp;&amp; <a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$new_val</span><span class="src-sym">)) </span>|| <span class="src-sym">!</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$css">css</a></span><span class="src-sym">[</span><span class="src-var">$media</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
926
- <li><a name="a887"></a> <span class="src-sym">{</span></li>
927
- <li><a name="a888"></a> unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$css">css</a></span><span class="src-sym">[</span><span class="src-var">$media</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
928
- <li><a name="a889"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$css">css</a></span><span class="src-sym">[</span><span class="src-var">$media</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">] </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$new_val</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
929
- <li><a name="a890"></a> <span class="src-sym">}</span></li>
930
- <li><a name="a891"></a> <span class="src-sym">}</span></li>
931
- <li><a name="a892"></a> <span class="src-key">else</span></li>
932
- <li><a name="a893"></a> <span class="src-sym">{</span></li>
933
- <li><a name="a894"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id"><a href="../csstidy/csstidy.html#var$css">css</a></span><span class="src-sym">[</span><span class="src-var">$media</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">] </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$new_val</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
934
- <li><a name="a895"></a> <span class="src-sym">}</span></li>
935
- <li><a name="a896"></a><span class="src-sym">}</span></li>
936
- <li><a name="a897"></a>&nbsp;</li>
937
- <li><a name="a898"></a><span class="src-doc">/**</span></li>
938
- <li><a name="a899"></a><span class="src-doc"> * Adds CSS to an existing media/selector</span></li>
939
- <li><a name="a900"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$media </span></li>
940
- <li><a name="a901"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$selector </span></li>
941
- <li><a name="a902"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">array </span><span class="src-doc-var">$css_add </span></li>
942
- <li><a name="a903"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
943
- <li><a name="a904"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.1</span></li>
944
- <li><a name="a905"></a><span class="src-doc"> */</span></li>
945
- <li><a name="a906"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodmerge_css_blocks">merge_css_blocks</a><span class="src-sym">(</span><span class="src-var">$media</span><span class="src-sym">,</span><span class="src-var">$selector</span><span class="src-sym">,</span><span class="src-var">$css_add</span><span class="src-sym">)</span></li>
946
- <li><a name="a907"></a><span class="src-sym">{</span></li>
947
- <li><a name="a908"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$css_add </span><span class="src-key">as </span><span class="src-var">$property </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
948
- <li><a name="a909"></a> <span class="src-sym">{</span></li>
949
- <li><a name="a910"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodcss_add_property">css_add_property</a><span class="src-sym">(</span><span class="src-var">$media</span><span class="src-sym">,</span><span class="src-var">$selector</span><span class="src-sym">,</span><span class="src-var">$property</span><span class="src-sym">,</span><span class="src-var">$value</span><span class="src-sym">,</span><span class="src-id">false</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
950
- <li><a name="a911"></a> <span class="src-sym">}</span></li>
951
- <li><a name="a912"></a><span class="src-sym">}</span></li>
952
- <li><a name="a913"></a>&nbsp;</li>
953
- <li><a name="a914"></a><span class="src-doc">/**</span></li>
954
- <li><a name="a915"></a><span class="src-doc"> * Checks if $value is !important.</span></li>
955
- <li><a name="a916"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$value </span></li>
956
- <li><a name="a917"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">bool </span></li>
957
- <li><a name="a918"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
958
- <li><a name="a919"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
959
- <li><a name="a920"></a><span class="src-doc"> */</span></li>
960
- <li><a name="a921"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$value</span><span class="src-sym">)</span></li>
961
- <li><a name="a922"></a><span class="src-sym">{</span></li>
962
- <li><a name="a923"></a> <span class="src-key">return </span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/strcasecmp">strcasecmp</a><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><a href="http://www.php.net/str_replace">str_replace</a><span class="src-sym">(</span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'whitespace'</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-str">''</span><span class="src-sym">,</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">,</span>-<span class="src-num">10</span><span class="src-sym">,</span><span class="src-num">10</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-str">'!important'</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
963
- <li><a name="a924"></a><span class="src-sym">}</span></li>
964
- <li><a name="a925"></a>&nbsp;</li>
965
- <li><a name="a926"></a><span class="src-doc">/**</span></li>
966
- <li><a name="a927"></a><span class="src-doc"> * Returns a value without !important</span></li>
967
- <li><a name="a928"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$value </span></li>
968
- <li><a name="a929"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
969
- <li><a name="a930"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
970
- <li><a name="a931"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
971
- <li><a name="a932"></a><span class="src-doc"> */</span></li>
972
- <li><a name="a933"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span></li>
973
- <li><a name="a934"></a><span class="src-sym">{</span></li>
974
- <li><a name="a935"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">))</span></li>
975
- <li><a name="a936"></a> <span class="src-sym">{</span></li>
976
- <li><a name="a937"></a> <span class="src-var">$value </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
977
- <li><a name="a938"></a> <span class="src-var">$value </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span>-<span class="src-num">9</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
978
- <li><a name="a939"></a> <span class="src-var">$value </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
979
- <li><a name="a940"></a> <span class="src-var">$value </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
980
- <li><a name="a941"></a> <span class="src-var">$value </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
981
- <li><a name="a942"></a> <span class="src-key">return </span><span class="src-var">$value</span><span class="src-sym">;</span></li>
982
- <li><a name="a943"></a> <span class="src-sym">}</span></li>
983
- <li><a name="a944"></a> <span class="src-key">return </span><span class="src-var">$value</span><span class="src-sym">;</span></li>
984
- <li><a name="a945"></a><span class="src-sym">}</span></li>
985
- <li><a name="a946"></a>&nbsp;</li>
986
- <li><a name="a947"></a><span class="src-doc">/**</span></li>
987
- <li><a name="a948"></a><span class="src-doc"> * Checks if the next word in a string from pos is a CSS property</span></li>
988
- <li><a name="a949"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$istring </span></li>
989
- <li><a name="a950"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">integer </span><span class="src-doc-var">$pos </span></li>
990
- <li><a name="a951"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">bool </span></li>
991
- <li><a name="a952"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
992
- <li><a name="a953"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
993
- <li><a name="a954"></a><span class="src-doc"> */</span></li>
994
- <li><a name="a955"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodproperty_is_next">property_is_next</a><span class="src-sym">(</span><span class="src-var">$istring</span><span class="src-sym">, </span><span class="src-var">$pos</span><span class="src-sym">)</span></li>
995
- <li><a name="a956"></a><span class="src-sym">{</span></li>
996
- <li><a name="a957"></a> <span class="src-var">$all_properties </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
997
- <li><a name="a958"></a> <span class="src-var">$istring </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$istring</span><span class="src-sym">,</span><span class="src-var">$pos</span><span class="src-sym">,</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$istring</span><span class="src-sym">)</span>-<span class="src-var">$pos</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
998
- <li><a name="a959"></a> <span class="src-var">$pos </span>= <a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$istring</span><span class="src-sym">,</span><span class="src-str">':'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
999
- <li><a name="a960"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$pos </span>=== <span class="src-id">false</span><span class="src-sym">)</span></li>
1000
- <li><a name="a961"></a> <span class="src-sym">{</span></li>
1001
- <li><a name="a962"></a> <span class="src-key">return </span><span class="src-id">false</span><span class="src-sym">;</span></li>
1002
- <li><a name="a963"></a> <span class="src-sym">}</span></li>
1003
- <li><a name="a964"></a> <span class="src-var">$istring </span>= <a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$istring</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-var">$pos</span><span class="src-sym">)))</span><span class="src-sym">;</span></li>
1004
- <li><a name="a965"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$all_properties</span><span class="src-sym">[</span><span class="src-var">$istring</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
1005
- <li><a name="a966"></a> <span class="src-sym">{</span></li>
1006
- <li><a name="a967"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodlog">log</a><span class="src-sym">(</span><span class="src-str">'Added semicolon to the end of declaration'</span><span class="src-sym">,</span><span class="src-str">'Warning'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
1007
- <li><a name="a968"></a> <span class="src-key">return </span><span class="src-id">true</span><span class="src-sym">;</span></li>
1008
- <li><a name="a969"></a> <span class="src-sym">}</span></li>
1009
- <li><a name="a970"></a> <span class="src-key">return </span><span class="src-id">false</span><span class="src-sym">;</span></li>
1010
- <li><a name="a971"></a><span class="src-sym">}</span></li>
1011
- <li><a name="a972"></a>&nbsp;</li>
1012
- <li><a name="a973"></a><span class="src-doc">/**</span></li>
1013
- <li><a name="a974"></a><span class="src-doc"> * Checks if a property is valid</span></li>
1014
- <li><a name="a975"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$property </span></li>
1015
- <li><a name="a976"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">bool; </span></li>
1016
- <li><a name="a977"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
1017
- <li><a name="a978"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
1018
- <li><a name="a979"></a><span class="src-doc"> */</span></li>
1019
- <li><a name="a980"></a><span class="src-key">function </span><a href="../csstidy/csstidy.html#methodproperty_is_valid">property_is_valid</a><span class="src-sym">(</span><span class="src-var">$property</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
1020
- <li><a name="a981"></a> <span class="src-var">$all_properties </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
1021
- <li><a name="a982"></a> <span class="src-key">return </span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$all_properties</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">) </span>&amp;&amp; <a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$all_properties</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">,</span><a href="http://www.php.net/strtoupper">strtoupper</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a><span class="src-sym">(</span><span class="src-str">'css_level'</span><span class="src-sym">))) </span>!== <span class="src-id">false </span><span class="src-sym">)</span><span class="src-sym">;</span></li>
1022
- <li><a name="a983"></a><span class="src-sym">}</span></li>
1023
- <li><a name="a984"></a>&nbsp;</li>
1024
- <li><a name="a985"></a><span class="src-sym">}</span></li>
1025
- <li><a name="a986"></a><span class="src-php">?&gt;</span></li>
1026
- </ol></pre></div>
1027
- </div>
1028
- <div class="credit">
1029
- <hr />
1030
- Documentation generated on Mon, 15 May 2006 22:55:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
1031
- </div>
1032
- </td></tr></table>
1033
- </td>
1034
- </tr>
1035
- </table>
1036
-
1037
- </body>
1038
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/__filesource/fsource_csstidy__class.csstidy_optimise.php.html DELETED
@@ -1,851 +0,0 @@
1
- <html>
2
- <head>
3
- <title>File Source for class.csstidy_optimise.php</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
-
33
- </td>
34
- <td>
35
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
36
-
37
- <h1 align="center">Source for file class.csstidy_optimise.php</h1>
38
- <p>Documentation is available at <a href="../csstidy/_class_csstidy_optimise_php.html">class.csstidy_optimise.php</a></p>
39
- <div class="php">
40
- <div class="listing"><pre><ol><li><a name="a1"></a><span class="src-php">&lt;?php</span></li>
41
- <li><a name="a2"></a><span class="src-doc">/**</span></li>
42
- <li><a name="a3"></a><span class="src-doc"> * CSSTidy - CSS Parser and Optimiser</span></li>
43
- <li><a name="a4"></a><span class="src-doc"> *</span></li>
44
- <li><a name="a5"></a><span class="src-doc"> * CSS Optimising Class</span></li>
45
- <li><a name="a6"></a><span class="src-doc"> * This class optimises CSS data generated by csstidy.</span></li>
46
- <li><a name="a7"></a><span class="src-doc"> *</span></li>
47
- <li><a name="a8"></a><span class="src-doc"> * This file is part of CSSTidy.</span></li>
48
- <li><a name="a9"></a><span class="src-doc"> *</span></li>
49
- <li><a name="a10"></a><span class="src-doc"> * CSSTidy is free software; you can redistribute it and/or modify</span></li>
50
- <li><a name="a11"></a><span class="src-doc"> * it under the terms of the GNU General Public License as published by</span></li>
51
- <li><a name="a12"></a><span class="src-doc"> * the Free Software Foundation; either version 2 of the License, or</span></li>
52
- <li><a name="a13"></a><span class="src-doc"> * (at your option) any later version.</span></li>
53
- <li><a name="a14"></a><span class="src-doc"> *</span></li>
54
- <li><a name="a15"></a><span class="src-doc"> * CSSTidy is distributed in the hope that it will be useful,</span></li>
55
- <li><a name="a16"></a><span class="src-doc"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></li>
56
- <li><a name="a17"></a><span class="src-doc"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></li>
57
- <li><a name="a18"></a><span class="src-doc"> * GNU General Public License for more details.</span></li>
58
- <li><a name="a19"></a><span class="src-doc"> *</span></li>
59
- <li><a name="a20"></a><span class="src-doc"> * You should have received a copy of the GNU General Public License</span></li>
60
- <li><a name="a21"></a><span class="src-doc"> * along with CSSTidy; if not, write to the Free Software</span></li>
61
- <li><a name="a22"></a><span class="src-doc"> * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</span></li>
62
- <li><a name="a23"></a><span class="src-doc"> *</span></li>
63
- <li><a name="a24"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@license</span><span class="src-doc"> http://opensource.org/licenses/gpl-license.php GNU Public License</span></li>
64
- <li><a name="a25"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> csstidy</span></li>
65
- <li><a name="a26"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@author</span><span class="src-doc"> Florian Schmitz (floele at gmail dot com) 2005-2006</span></li>
66
- <li><a name="a27"></a><span class="src-doc"> */</span></li>
67
- <li><a name="a28"></a> </li>
68
- <li><a name="a29"></a><span class="src-doc">/**</span></li>
69
- <li><a name="a30"></a><span class="src-doc"> * CSS Optimising Class</span></li>
70
- <li><a name="a31"></a><span class="src-doc"> *</span></li>
71
- <li><a name="a32"></a><span class="src-doc"> * This class optimises CSS data generated by csstidy.</span></li>
72
- <li><a name="a33"></a><span class="src-doc"> *</span></li>
73
- <li><a name="a34"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> csstidy</span></li>
74
- <li><a name="a35"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@author</span><span class="src-doc"> Florian Schmitz (floele at gmail dot com) 2005-2006</span></li>
75
- <li><a name="a36"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
76
- <li><a name="a37"></a><span class="src-doc"> */</span></li>
77
- <li><a name="a38"></a> </li>
78
- <li><a name="a39"></a><span class="src-key">class </span><a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a></li>
79
- <li><a name="a40"></a><span class="src-sym">{</span></li>
80
- <li><a name="a41"></a> <span class="src-doc">/**</span></li>
81
- <li><a name="a42"></a><span class="src-doc"> * Constructor</span></li>
82
- <li><a name="a43"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">array </span><span class="src-doc-var">$css </span><span class="src-doc">contains the class csstidy</span></li>
83
- <li><a name="a44"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
84
- <li><a name="a45"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
85
- <li><a name="a46"></a><span class="src-doc"> */</span></li>
86
- <li><a name="a47"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$css</span><span class="src-sym">)</span></li>
87
- <li><a name="a48"></a> <span class="src-sym">{</span></li>
88
- <li><a name="a49"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">;</span></li>
89
- <li><a name="a50"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">css</span><span class="src-sym">;</span></li>
90
- <li><a name="a51"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">sub_value</span><span class="src-sym">;</span></li>
91
- <li><a name="a52"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">at </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">at</span><span class="src-sym">;</span></li>
92
- <li><a name="a53"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">selector </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">selector</span><span class="src-sym">;</span></li>
93
- <li><a name="a54"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">property</span><span class="src-sym">;</span></li>
94
- <li><a name="a55"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">value </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">value</span><span class="src-sym">;</span></li>
95
- <li><a name="a56"></a> <span class="src-sym">}</span></li>
96
- <li><a name="a57"></a>&nbsp;</li>
97
- <li><a name="a58"></a> <span class="src-doc">/**</span></li>
98
- <li><a name="a59"></a><span class="src-doc"> * Optimises $css after parsing</span></li>
99
- <li><a name="a60"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
100
- <li><a name="a61"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
101
- <li><a name="a62"></a><span class="src-doc"> */</span></li>
102
- <li><a name="a63"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodpostparse">postparse</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
103
- <li><a name="a64"></a> <span class="src-sym">{</span></li>
104
- <li><a name="a65"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'preserve_css'</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
105
- <li><a name="a66"></a> <span class="src-key">return</span><span class="src-sym">;</span></li>
106
- <li><a name="a67"></a> <span class="src-sym">}</span></li>
107
- <li><a name="a68"></a> </li>
108
- <li><a name="a69"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'merge_selectors'</span><span class="src-sym">) </span>== <span class="src-num">2</span><span class="src-sym">)</span></li>
109
- <li><a name="a70"></a> <span class="src-sym">{</span></li>
110
- <li><a name="a71"></a> <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css </span><span class="src-key">as </span><span class="src-var">$medium </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
111
- <li><a name="a72"></a> <span class="src-sym">{</span></li>
112
- <li><a name="a73"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_optimise.html#methodmerge_selectors">merge_selectors</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">[</span><span class="src-var">$medium</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
113
- <li><a name="a74"></a> <span class="src-sym">}</span></li>
114
- <li><a name="a75"></a> <span class="src-sym">}</span></li>
115
- <li><a name="a76"></a>&nbsp;</li>
116
- <li><a name="a77"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'optimise_shorthands'</span><span class="src-sym">) </span>&gt; <span class="src-num">0</span><span class="src-sym">)</span></li>
117
- <li><a name="a78"></a> <span class="src-sym">{</span></li>
118
- <li><a name="a79"></a> <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css </span><span class="src-key">as </span><span class="src-var">$medium </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
119
- <li><a name="a80"></a> <span class="src-sym">{</span></li>
120
- <li><a name="a81"></a> <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$value </span><span class="src-key">as </span><span class="src-var">$selector </span>=&gt; <span class="src-var">$value1</span><span class="src-sym">)</span></li>
121
- <li><a name="a82"></a> <span class="src-sym">{</span></li>
122
- <li><a name="a83"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">[</span><span class="src-var">$medium</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">] </span>= <a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodmerge_4value_shorthands">merge_4value_shorthands</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">[</span><span class="src-var">$medium</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
123
- <li><a name="a84"></a> </li>
124
- <li><a name="a85"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'optimise_shorthands'</span><span class="src-sym">) </span>&lt; <span class="src-num">2</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
125
- <li><a name="a86"></a> <span class="src-key">continue</span><span class="src-sym">;</span></li>
126
- <li><a name="a87"></a> <span class="src-sym">}</span></li>
127
- <li><a name="a88"></a> </li>
128
- <li><a name="a89"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">[</span><span class="src-var">$medium</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">] </span>= <a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodmerge_bg">merge_bg</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">[</span><span class="src-var">$medium</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
129
- <li><a name="a90"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">[</span><span class="src-var">$medium</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
130
- <li><a name="a91"></a> unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">[</span><span class="src-var">$medium</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
131
- <li><a name="a92"></a> <span class="src-sym">}</span></li>
132
- <li><a name="a93"></a> <span class="src-sym">}</span></li>
133
- <li><a name="a94"></a> <span class="src-sym">}</span></li>
134
- <li><a name="a95"></a> <span class="src-sym">}</span></li>
135
- <li><a name="a96"></a> <span class="src-sym">}</span></li>
136
- <li><a name="a97"></a>&nbsp;</li>
137
- <li><a name="a98"></a> <span class="src-doc">/**</span></li>
138
- <li><a name="a99"></a><span class="src-doc"> * Optimises values</span></li>
139
- <li><a name="a100"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
140
- <li><a name="a101"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
141
- <li><a name="a102"></a><span class="src-doc"> */</span></li>
142
- <li><a name="a103"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodvalue">value</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
143
- <li><a name="a104"></a> <span class="src-sym">{</span></li>
144
- <li><a name="a105"></a> <span class="src-var">$shorthands </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
145
- <li><a name="a106"></a> </li>
146
- <li><a name="a107"></a> <span class="src-comm">// optimise shorthand properties</span></li>
147
- <li><a name="a108"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
148
- <li><a name="a109"></a> <span class="src-sym">{</span></li>
149
- <li><a name="a110"></a> <span class="src-var">$temp </span>= <a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodshorthand">shorthand</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">value</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-comm">// FIXME - move</span></li>
150
- <li><a name="a111"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$temp </span>!= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">value</span><span class="src-sym">)</span></li>
151
- <li><a name="a112"></a> <span class="src-sym">{</span></li>
152
- <li><a name="a113"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">log</span><span class="src-sym">(</span><span class="src-str">'Optimised shorthand notation ('</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property</span>.<span class="src-str">'): Changed &quot;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">value</span>.<span class="src-str">'&quot; to &quot;'</span>.<span class="src-var">$temp</span>.<span class="src-str">'&quot;'</span><span class="src-sym">,</span><span class="src-str">'Information'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
153
- <li><a name="a114"></a> <span class="src-sym">}</span></li>
154
- <li><a name="a115"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">value </span>= <span class="src-var">$temp</span><span class="src-sym">;</span></li>
155
- <li><a name="a116"></a> <span class="src-sym">}</span></li>
156
- <li><a name="a117"></a> </li>
157
- <li><a name="a118"></a> <span class="src-comm">// Remove whitespace at ! important</span></li>
158
- <li><a name="a119"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">value </span>!= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_optimise.html#methodcompress_important">compress_important</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">value</span><span class="src-sym">))</span></li>
159
- <li><a name="a120"></a> <span class="src-sym">{</span></li>
160
- <li><a name="a121"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">log</span><span class="src-sym">(</span><span class="src-str">'Optimised !important'</span><span class="src-sym">,</span><span class="src-str">'Information'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
161
- <li><a name="a122"></a> <span class="src-sym">}</span></li>
162
- <li><a name="a123"></a> <span class="src-sym">}</span></li>
163
- <li><a name="a124"></a> </li>
164
- <li><a name="a125"></a> <span class="src-doc">/**</span></li>
165
- <li><a name="a126"></a><span class="src-doc"> * Optimises shorthands</span></li>
166
- <li><a name="a127"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
167
- <li><a name="a128"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
168
- <li><a name="a129"></a><span class="src-doc"> */</span></li>
169
- <li><a name="a130"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodshorthands">shorthands</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
170
- <li><a name="a131"></a> <span class="src-sym">{</span></li>
171
- <li><a name="a132"></a> <span class="src-var">$shorthands </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
172
- <li><a name="a133"></a> </li>
173
- <li><a name="a134"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'optimise_shorthands'</span><span class="src-sym">) </span>|| <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'preserve_css'</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
174
- <li><a name="a135"></a> <span class="src-key">return</span><span class="src-sym">;</span></li>
175
- <li><a name="a136"></a> <span class="src-sym">}</span></li>
176
- <li><a name="a137"></a> </li>
177
- <li><a name="a138"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property </span>== <span class="src-str">'background' </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'optimise_shorthands'</span><span class="src-sym">) </span>&gt; <span class="src-num">1</span><span class="src-sym">)</span></li>
178
- <li><a name="a139"></a> <span class="src-sym">{</span></li>
179
- <li><a name="a140"></a> unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">at</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">selector</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
180
- <li><a name="a141"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">merge_css_blocks</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">at</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">selector</span><span class="src-sym">,</span><a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methoddissolve_short_bg">dissolve_short_bg</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">value</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
181
- <li><a name="a142"></a> <span class="src-sym">}</span></li>
182
- <li><a name="a143"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
183
- <li><a name="a144"></a> <span class="src-sym">{</span></li>
184
- <li><a name="a145"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">merge_css_blocks</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">at</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">selector</span><span class="src-sym">,</span><a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methoddissolve_4value_shorthands">dissolve_4value_shorthands</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property</span><span class="src-sym">,</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">value</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
185
- <li><a name="a146"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
186
- <li><a name="a147"></a> <span class="src-sym">{</span></li>
187
- <li><a name="a148"></a> unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">at</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">selector</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
188
- <li><a name="a149"></a> <span class="src-sym">}</span></li>
189
- <li><a name="a150"></a> <span class="src-sym">}</span></li>
190
- <li><a name="a151"></a> <span class="src-sym">}</span></li>
191
- <li><a name="a152"></a> </li>
192
- <li><a name="a153"></a> <span class="src-doc">/**</span></li>
193
- <li><a name="a154"></a><span class="src-doc"> * Optimises a sub-value</span></li>
194
- <li><a name="a155"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
195
- <li><a name="a156"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
196
- <li><a name="a157"></a><span class="src-doc"> */</span></li>
197
- <li><a name="a158"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodsubvalue">subvalue</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
198
- <li><a name="a159"></a> <span class="src-sym">{</span></li>
199
- <li><a name="a160"></a> <span class="src-var">$replace_colors </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
200
- <li><a name="a161"></a>&nbsp;</li>
201
- <li><a name="a162"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
202
- <li><a name="a163"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>== <span class="src-str">''</span><span class="src-sym">) </span><span class="src-comm">// caution : '0'</span></li>
203
- <li><a name="a164"></a> <span class="src-sym">{</span></li>
204
- <li><a name="a165"></a> <span class="src-key">return</span><span class="src-sym">;</span></li>
205
- <li><a name="a166"></a> <span class="src-sym">}</span></li>
206
- <li><a name="a167"></a> </li>
207
- <li><a name="a168"></a> <span class="src-comm">// Compress font-weight</span></li>
208
- <li><a name="a169"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property </span>== <span class="src-str">'font-weight' </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'compress_font-weight'</span><span class="src-sym">))</span></li>
209
- <li><a name="a170"></a> <span class="src-sym">{</span></li>
210
- <li><a name="a171"></a> <span class="src-var">$important </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
211
- <li><a name="a172"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span><span class="src-sym">))</span></li>
212
- <li><a name="a173"></a> <span class="src-sym">{</span></li>
213
- <li><a name="a174"></a> <span class="src-var">$important </span>= <span class="src-str">' !important'</span><span class="src-sym">;</span></li>
214
- <li><a name="a175"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>= <span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
215
- <li><a name="a176"></a> <span class="src-sym">}</span></li>
216
- <li><a name="a177"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>== <span class="src-str">'bold'</span><span class="src-sym">)</span></li>
217
- <li><a name="a178"></a> <span class="src-sym">{</span></li>
218
- <li><a name="a179"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>= <span class="src-str">'700'</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
219
- <li><a name="a180"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">log</span><span class="src-sym">(</span><span class="src-str">'Optimised font-weight: Changed &quot;bold&quot; to &quot;700&quot;'</span><span class="src-sym">,</span><span class="src-str">'Information'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
220
- <li><a name="a181"></a> <span class="src-sym">}</span></li>
221
- <li><a name="a182"></a> <span class="src-key">else </span><span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>== <span class="src-str">'normal'</span><span class="src-sym">)</span></li>
222
- <li><a name="a183"></a> <span class="src-sym">{</span></li>
223
- <li><a name="a184"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>= <span class="src-str">'400'</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
224
- <li><a name="a185"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">log</span><span class="src-sym">(</span><span class="src-str">'Optimised font-weight: Changed &quot;normal&quot; to &quot;400&quot;'</span><span class="src-sym">,</span><span class="src-str">'Information'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
225
- <li><a name="a186"></a> <span class="src-sym">}</span></li>
226
- <li><a name="a187"></a> <span class="src-sym">}</span></li>
227
- <li><a name="a188"></a> </li>
228
- <li><a name="a189"></a> <span class="src-var">$temp </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_optimise.html#methodcompress_numbers">compress_numbers</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
229
- <li><a name="a190"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$temp </span>!= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span><span class="src-sym">)</span></li>
230
- <li><a name="a191"></a> <span class="src-sym">{</span></li>
231
- <li><a name="a192"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">) </span>&gt; <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
232
- <li><a name="a193"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">log</span><span class="src-sym">(</span><span class="src-str">'Fixed invalid number: Changed &quot;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span>.<span class="src-str">'&quot; to &quot;'</span>.<span class="src-var">$temp</span>.<span class="src-str">'&quot;'</span><span class="src-sym">,</span><span class="src-str">'Warning'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
233
- <li><a name="a194"></a> <span class="src-sym">} </span><span class="src-key">else </span><span class="src-sym">{</span></li>
234
- <li><a name="a195"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">log</span><span class="src-sym">(</span><span class="src-str">'Optimised number: Changed &quot;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span>.<span class="src-str">'&quot; to &quot;'</span>.<span class="src-var">$temp</span>.<span class="src-str">'&quot;'</span><span class="src-sym">,</span><span class="src-str">'Information'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
235
- <li><a name="a196"></a> <span class="src-sym">} </span></li>
236
- <li><a name="a197"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>= <span class="src-var">$temp</span><span class="src-sym">;</span></li>
237
- <li><a name="a198"></a> <span class="src-sym">}</span></li>
238
- <li><a name="a199"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'compress_colors'</span><span class="src-sym">))</span></li>
239
- <li><a name="a200"></a> <span class="src-sym">{</span></li>
240
- <li><a name="a201"></a> <span class="src-var">$temp </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_optimise.html#methodcut_color">cut_color</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
241
- <li><a name="a202"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$temp </span>!== <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span><span class="src-sym">)</span></li>
242
- <li><a name="a203"></a> <span class="src-sym">{</span></li>
243
- <li><a name="a204"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$replace_colors</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span><span class="src-sym">]</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
244
- <li><a name="a205"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">log</span><span class="src-sym">(</span><span class="src-str">'Fixed invalid color name: Changed &quot;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span>.<span class="src-str">'&quot; to &quot;'</span>.<span class="src-var">$temp</span>.<span class="src-str">'&quot;'</span><span class="src-sym">,</span><span class="src-str">'Warning'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
245
- <li><a name="a206"></a> <span class="src-sym">} </span><span class="src-key">else </span><span class="src-sym">{</span></li>
246
- <li><a name="a207"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">log</span><span class="src-sym">(</span><span class="src-str">'Optimised color: Changed &quot;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value</span>.<span class="src-str">'&quot; to &quot;'</span>.<span class="src-var">$temp</span>.<span class="src-str">'&quot;'</span><span class="src-sym">,</span><span class="src-str">'Information'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
247
- <li><a name="a208"></a> <span class="src-sym">} </span></li>
248
- <li><a name="a209"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">sub_value </span>= <span class="src-var">$temp</span><span class="src-sym">;</span></li>
249
- <li><a name="a210"></a> <span class="src-sym">}</span></li>
250
- <li><a name="a211"></a> <span class="src-sym">}</span></li>
251
- <li><a name="a212"></a> <span class="src-sym">}</span></li>
252
- <li><a name="a213"></a> </li>
253
- <li><a name="a214"></a> <span class="src-doc">/**</span></li>
254
- <li><a name="a215"></a><span class="src-doc"> * Compresses shorthand values. Example: margin:1px 1px 1px 1px -&gt; margin:1px</span></li>
255
- <li><a name="a216"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$value </span></li>
256
- <li><a name="a217"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
257
- <li><a name="a218"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
258
- <li><a name="a219"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
259
- <li><a name="a220"></a><span class="src-doc"> */</span></li>
260
- <li><a name="a221"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodshorthand">shorthand</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span></li>
261
- <li><a name="a222"></a> <span class="src-sym">{</span></li>
262
- <li><a name="a223"></a> <span class="src-var">$important </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
263
- <li><a name="a224"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">))</span></li>
264
- <li><a name="a225"></a> <span class="src-sym">{</span></li>
265
- <li><a name="a226"></a> <span class="src-var">$values </span>= <span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
266
- <li><a name="a227"></a> <span class="src-var">$important </span>= <span class="src-str">' !important'</span><span class="src-sym">;</span></li>
267
- <li><a name="a228"></a> <span class="src-sym">}</span></li>
268
- <li><a name="a229"></a> <span class="src-key">else </span><span class="src-var">$values </span>= <span class="src-var">$value</span><span class="src-sym">;</span></li>
269
- <li><a name="a230"></a> </li>
270
- <li><a name="a231"></a> <span class="src-var">$values </span>= <a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">' '</span><span class="src-sym">,</span><span class="src-var">$values</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
271
- <li><a name="a232"></a> <span class="src-key">switch</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">))</span></li>
272
- <li><a name="a233"></a> <span class="src-sym">{</span></li>
273
- <li><a name="a234"></a> <span class="src-key">case </span><span class="src-num">4</span>:</li>
274
- <li><a name="a235"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">] </span>&amp;&amp; <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">] </span>&amp;&amp; <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">3</span><span class="src-sym">]</span><span class="src-sym">)</span></li>
275
- <li><a name="a236"></a> <span class="src-sym">{</span></li>
276
- <li><a name="a237"></a> <span class="src-key">return </span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
277
- <li><a name="a238"></a> <span class="src-sym">}</span></li>
278
- <li><a name="a239"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">3</span><span class="src-sym">] </span>&amp;&amp; <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">)</span></li>
279
- <li><a name="a240"></a> <span class="src-sym">{</span></li>
280
- <li><a name="a241"></a> <span class="src-key">return </span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-str">' '</span>.<span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
281
- <li><a name="a242"></a> <span class="src-sym">}</span></li>
282
- <li><a name="a243"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">3</span><span class="src-sym">]</span><span class="src-sym">)</span></li>
283
- <li><a name="a244"></a> <span class="src-sym">{</span></li>
284
- <li><a name="a245"></a> <span class="src-key">return </span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-str">' '</span>.<span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span>.<span class="src-str">' '</span>.<span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
285
- <li><a name="a246"></a> <span class="src-sym">}</span></li>
286
- <li><a name="a247"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
287
- <li><a name="a248"></a> </li>
288
- <li><a name="a249"></a> <span class="src-key">case </span><span class="src-num">3</span>:</li>
289
- <li><a name="a250"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">] </span>&amp;&amp; <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">)</span></li>
290
- <li><a name="a251"></a> <span class="src-sym">{</span></li>
291
- <li><a name="a252"></a> <span class="src-key">return </span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
292
- <li><a name="a253"></a> <span class="src-sym">}</span></li>
293
- <li><a name="a254"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">)</span></li>
294
- <li><a name="a255"></a> <span class="src-sym">{</span></li>
295
- <li><a name="a256"></a> <span class="src-key">return </span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-str">' '</span>.<span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
296
- <li><a name="a257"></a> <span class="src-sym">}</span></li>
297
- <li><a name="a258"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
298
- <li><a name="a259"></a> </li>
299
- <li><a name="a260"></a> <span class="src-key">case </span><span class="src-num">2</span>:</li>
300
- <li><a name="a261"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span>== <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span></li>
301
- <li><a name="a262"></a> <span class="src-sym">{</span></li>
302
- <li><a name="a263"></a> <span class="src-key">return </span><span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
303
- <li><a name="a264"></a> <span class="src-sym">}</span></li>
304
- <li><a name="a265"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
305
- <li><a name="a266"></a> <span class="src-sym">}</span></li>
306
- <li><a name="a267"></a> </li>
307
- <li><a name="a268"></a> <span class="src-key">return </span><span class="src-var">$value</span><span class="src-sym">;</span></li>
308
- <li><a name="a269"></a> <span class="src-sym">}</span></li>
309
- <li><a name="a270"></a>&nbsp;</li>
310
- <li><a name="a271"></a> <span class="src-doc">/**</span></li>
311
- <li><a name="a272"></a><span class="src-doc"> * Removes unnecessary whitespace in ! important</span></li>
312
- <li><a name="a273"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$string </span></li>
313
- <li><a name="a274"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
314
- <li><a name="a275"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
315
- <li><a name="a276"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.1</span></li>
316
- <li><a name="a277"></a><span class="src-doc"> */</span></li>
317
- <li><a name="a278"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodcompress_important">compress_important</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$string</span><span class="src-sym">)</span></li>
318
- <li><a name="a279"></a> <span class="src-sym">{</span></li>
319
- <li><a name="a280"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">))</span></li>
320
- <li><a name="a281"></a> <span class="src-sym">{</span></li>
321
- <li><a name="a282"></a> <span class="src-var">$string </span>= <span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">) </span>. <span class="src-str">' !important'</span><span class="src-sym">;</span></li>
322
- <li><a name="a283"></a> <span class="src-sym">}</span></li>
323
- <li><a name="a284"></a> <span class="src-key">return </span><span class="src-var">$string</span><span class="src-sym">;</span></li>
324
- <li><a name="a285"></a> <span class="src-sym">}</span></li>
325
- <li><a name="a286"></a>&nbsp;</li>
326
- <li><a name="a287"></a> <span class="src-doc">/**</span></li>
327
- <li><a name="a288"></a><span class="src-doc"> * Color compression function. Converts all rgb() values to #-values and uses the short-form if possible. Also replaces 4 color names by #-values.</span></li>
328
- <li><a name="a289"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$color </span></li>
329
- <li><a name="a290"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
330
- <li><a name="a291"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.1</span></li>
331
- <li><a name="a292"></a><span class="src-doc"> */</span></li>
332
- <li><a name="a293"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodcut_color">cut_color</a><span class="src-sym">(</span><span class="src-var">$color</span><span class="src-sym">)</span></li>
333
- <li><a name="a294"></a> <span class="src-sym">{</span></li>
334
- <li><a name="a295"></a> <span class="src-var">$replace_colors </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
335
- <li><a name="a296"></a> </li>
336
- <li><a name="a297"></a> <span class="src-comm">// rgb(0,0,0) -&gt; #000000 (or #000 in this case later)</span></li>
337
- <li><a name="a298"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$color</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">)) </span>== <span class="src-str">'rgb('</span><span class="src-sym">)</span></li>
338
- <li><a name="a299"></a> <span class="src-sym">{</span></li>
339
- <li><a name="a300"></a> <span class="src-var">$color_tmp </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$color</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">,</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$color</span><span class="src-sym">)</span>-<span class="src-num">5</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
340
- <li><a name="a301"></a> <span class="src-var">$color_tmp </span>= <a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">','</span><span class="src-sym">,</span><span class="src-var">$color_tmp</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
341
- <li><a name="a302"></a> <span class="src-key">for </span><span class="src-sym">( </span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$color_tmp</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$i</span>++ <span class="src-sym">)</span></li>
342
- <li><a name="a303"></a> <span class="src-sym">{</span></li>
343
- <li><a name="a304"></a> <span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">] </span>= <a href="http://www.php.net/trim">trim</a> <span class="src-sym">(</span><span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
344
- <li><a name="a305"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">,</span>-<span class="src-num">1</span><span class="src-sym">) </span>== <span class="src-str">'%'</span><span class="src-sym">)</span></li>
345
- <li><a name="a306"></a> <span class="src-sym">{</span></li>
346
- <li><a name="a307"></a> <span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">] </span>= <a href="http://www.php.net/round">round</a><span class="src-sym">((</span><span class="src-num">255</span>*<span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>/<span class="src-num">100</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
347
- <li><a name="a308"></a> <span class="src-sym">}</span></li>
348
- <li><a name="a309"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>&gt;<span class="src-num">255</span><span class="src-sym">) </span><span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">] </span>= <span class="src-num">255</span><span class="src-sym">;</span></li>
349
- <li><a name="a310"></a> <span class="src-sym">}</span></li>
350
- <li><a name="a311"></a> <span class="src-var">$color </span>= <span class="src-str">'#'</span><span class="src-sym">;</span></li>
351
- <li><a name="a312"></a> <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <span class="src-num">3</span><span class="src-sym">; </span><span class="src-var">$i</span>++ <span class="src-sym">)</span></li>
352
- <li><a name="a313"></a> <span class="src-sym">{</span></li>
353
- <li><a name="a314"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>&lt;<span class="src-num">16</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
354
- <li><a name="a315"></a> <span class="src-var">$color </span>.= <span class="src-str">'0' </span>. <a href="http://www.php.net/dechex">dechex</a><span class="src-sym">(</span><span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
355
- <li><a name="a316"></a> <span class="src-sym">} </span><span class="src-key">else </span><span class="src-sym">{</span></li>
356
- <li><a name="a317"></a> <span class="src-var">$color </span>.= <a href="http://www.php.net/dechex">dechex</a><span class="src-sym">(</span><span class="src-var">$color_tmp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
357
- <li><a name="a318"></a> <span class="src-sym">}</span></li>
358
- <li><a name="a319"></a> <span class="src-sym">}</span></li>
359
- <li><a name="a320"></a> <span class="src-sym">}</span></li>
360
- <li><a name="a321"></a> </li>
361
- <li><a name="a322"></a> <span class="src-comm">// Fix bad color names</span></li>
362
- <li><a name="a323"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$replace_colors</span><span class="src-sym">[</span><a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$color</span><span class="src-sym">)</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
363
- <li><a name="a324"></a> <span class="src-sym">{</span></li>
364
- <li><a name="a325"></a> <span class="src-var">$color </span>= <span class="src-var">$replace_colors</span><span class="src-sym">[</span><a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$color</span><span class="src-sym">)</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
365
- <li><a name="a326"></a> <span class="src-sym">}</span></li>
366
- <li><a name="a327"></a> </li>
367
- <li><a name="a328"></a> <span class="src-comm">// #aabbcc -&gt; #abc</span></li>
368
- <li><a name="a329"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$color</span><span class="src-sym">) </span>== <span class="src-num">7</span><span class="src-sym">)</span></li>
369
- <li><a name="a330"></a> <span class="src-sym">{</span></li>
370
- <li><a name="a331"></a> <span class="src-var">$color_temp </span>= <a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$color</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
371
- <li><a name="a332"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$color_temp</span><span class="src-sym">{</span><span class="src-num">0</span><span class="src-sym">} </span>== <span class="src-str">'#' </span>&amp;&amp; <span class="src-var">$color_temp</span><span class="src-sym">{</span><span class="src-num">1</span><span class="src-sym">} </span>== <span class="src-var">$color_temp</span><span class="src-sym">{</span><span class="src-num">2</span><span class="src-sym">} </span>&amp;&amp; <span class="src-var">$color_temp</span><span class="src-sym">{</span><span class="src-num">3</span><span class="src-sym">} </span>== <span class="src-var">$color_temp</span><span class="src-sym">{</span><span class="src-num">4</span><span class="src-sym">} </span>&amp;&amp; <span class="src-var">$color_temp</span><span class="src-sym">{</span><span class="src-num">5</span><span class="src-sym">} </span>== <span class="src-var">$color_temp</span><span class="src-sym">{</span><span class="src-num">6</span><span class="src-sym">}</span><span class="src-sym">)</span></li>
372
- <li><a name="a333"></a> <span class="src-sym">{</span></li>
373
- <li><a name="a334"></a> <span class="src-var">$color </span>= <span class="src-str">'#'</span>.<span class="src-var">$color</span><span class="src-sym">{</span><span class="src-num">1</span><span class="src-sym">}</span>.<span class="src-var">$color</span><span class="src-sym">{</span><span class="src-num">3</span><span class="src-sym">}</span>.<span class="src-var">$color</span><span class="src-sym">{</span><span class="src-num">5</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
374
- <li><a name="a335"></a> <span class="src-sym">}</span></li>
375
- <li><a name="a336"></a> <span class="src-sym">}</span></li>
376
- <li><a name="a337"></a> </li>
377
- <li><a name="a338"></a> <span class="src-key">switch</span><span class="src-sym">(</span><a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$color</span><span class="src-sym">))</span></li>
378
- <li><a name="a339"></a> <span class="src-sym">{</span></li>
379
- <li><a name="a340"></a> <span class="src-comm">/* color name -&gt; hex code */</span></li>
380
- <li><a name="a341"></a> <span class="src-key">case </span><span class="src-str">'black'</span>: <span class="src-key">return </span><span class="src-str">'#000'</span><span class="src-sym">;</span></li>
381
- <li><a name="a342"></a> <span class="src-key">case </span><span class="src-str">'fuchsia'</span>: <span class="src-key">return </span><span class="src-str">'#F0F'</span><span class="src-sym">;</span></li>
382
- <li><a name="a343"></a> <span class="src-key">case </span><span class="src-str">'white'</span>: <span class="src-key">return </span><span class="src-str">'#FFF'</span><span class="src-sym">;</span></li>
383
- <li><a name="a344"></a> <span class="src-key">case </span><span class="src-str">'yellow'</span>: <span class="src-key">return </span><span class="src-str">'#FF0'</span><span class="src-sym">;</span></li>
384
- <li><a name="a345"></a> </li>
385
- <li><a name="a346"></a> <span class="src-comm">/* hex code -&gt; color name */</span></li>
386
- <li><a name="a347"></a> <span class="src-key">case </span><span class="src-str">'#800000'</span>: <span class="src-key">return </span><span class="src-str">'maroon'</span><span class="src-sym">;</span></li>
387
- <li><a name="a348"></a> <span class="src-key">case </span><span class="src-str">'#ffa500'</span>: <span class="src-key">return </span><span class="src-str">'orange'</span><span class="src-sym">;</span></li>
388
- <li><a name="a349"></a> <span class="src-key">case </span><span class="src-str">'#808000'</span>: <span class="src-key">return </span><span class="src-str">'olive'</span><span class="src-sym">;</span></li>
389
- <li><a name="a350"></a> <span class="src-key">case </span><span class="src-str">'#800080'</span>: <span class="src-key">return </span><span class="src-str">'purple'</span><span class="src-sym">;</span></li>
390
- <li><a name="a351"></a> <span class="src-key">case </span><span class="src-str">'#008000'</span>: <span class="src-key">return </span><span class="src-str">'green'</span><span class="src-sym">;</span></li>
391
- <li><a name="a352"></a> <span class="src-key">case </span><span class="src-str">'#000080'</span>: <span class="src-key">return </span><span class="src-str">'navy'</span><span class="src-sym">;</span></li>
392
- <li><a name="a353"></a> <span class="src-key">case </span><span class="src-str">'#008080'</span>: <span class="src-key">return </span><span class="src-str">'teal'</span><span class="src-sym">;</span></li>
393
- <li><a name="a354"></a> <span class="src-key">case </span><span class="src-str">'#c0c0c0'</span>: <span class="src-key">return </span><span class="src-str">'silver'</span><span class="src-sym">;</span></li>
394
- <li><a name="a355"></a> <span class="src-key">case </span><span class="src-str">'#808080'</span>: <span class="src-key">return </span><span class="src-str">'gray'</span><span class="src-sym">;</span></li>
395
- <li><a name="a356"></a> <span class="src-key">case </span><span class="src-str">'#f00'</span>: <span class="src-key">return </span><span class="src-str">'red'</span><span class="src-sym">; </span></li>
396
- <li><a name="a357"></a> <span class="src-sym">}</span></li>
397
- <li><a name="a358"></a>&nbsp;</li>
398
- <li><a name="a359"></a> <span class="src-key">return </span><span class="src-var">$color</span><span class="src-sym">;</span></li>
399
- <li><a name="a360"></a> <span class="src-sym">}</span></li>
400
- <li><a name="a361"></a> </li>
401
- <li><a name="a362"></a> <span class="src-doc">/**</span></li>
402
- <li><a name="a363"></a><span class="src-doc"> * Compresses numbers (ie. 1.0 becomes 1 or 1.100 becomes 1.1 )</span></li>
403
- <li><a name="a364"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$subvalue </span></li>
404
- <li><a name="a365"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
405
- <li><a name="a366"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
406
- <li><a name="a367"></a><span class="src-doc"> */</span></li>
407
- <li><a name="a368"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodcompress_numbers">compress_numbers</a><span class="src-sym">(</span><span class="src-var">$subvalue</span><span class="src-sym">)</span></li>
408
- <li><a name="a369"></a> <span class="src-sym">{</span></li>
409
- <li><a name="a370"></a> <span class="src-var">$units </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'units'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
410
- <li><a name="a371"></a> <span class="src-var">$number_values </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'number_values'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
411
- <li><a name="a372"></a> <span class="src-var">$color_values </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
412
- <li><a name="a373"></a>&nbsp;</li>
413
- <li><a name="a374"></a> <span class="src-comm">// for font:1em/1em sans-serif...;</span></li>
414
- <li><a name="a375"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property </span>== <span class="src-str">'font'</span><span class="src-sym">)</span></li>
415
- <li><a name="a376"></a> <span class="src-sym">{</span></li>
416
- <li><a name="a377"></a> <span class="src-var">$temp </span>= <a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'/'</span><span class="src-sym">,</span><span class="src-var">$subvalue</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
417
- <li><a name="a378"></a> <span class="src-sym">}</span></li>
418
- <li><a name="a379"></a> <span class="src-key">else</span></li>
419
- <li><a name="a380"></a> <span class="src-sym">{</span></li>
420
- <li><a name="a381"></a> <span class="src-var">$temp </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$subvalue</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
421
- <li><a name="a382"></a> <span class="src-sym">}</span></li>
422
- <li><a name="a383"></a> <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$l </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$l </span>&lt; <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$l</span>++<span class="src-sym">)</span></li>
423
- <li><a name="a384"></a> <span class="src-sym">{</span></li>
424
- <li><a name="a385"></a> <span class="src-comm">// continue if no numeric value</span></li>
425
- <li><a name="a386"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">) </span>&gt; <span class="src-num">0 </span>&amp;&amp; <span class="src-sym">( </span><a href="http://www.php.net/is_numeric">is_numeric</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">{</span><span class="src-num">0</span><span class="src-sym">}</span><span class="src-sym">) </span>|| <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">{</span><span class="src-num">0</span><span class="src-sym">} </span>== <span class="src-str">'+' </span>|| <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">{</span><span class="src-num">0</span><span class="src-sym">} </span>== <span class="src-str">'-' </span><span class="src-sym">) ))</span></li>
426
- <li><a name="a387"></a> <span class="src-sym">{</span></li>
427
- <li><a name="a388"></a> <span class="src-key">continue</span><span class="src-sym">;</span></li>
428
- <li><a name="a389"></a> <span class="src-sym">}</span></li>
429
- <li><a name="a390"></a>&nbsp;</li>
430
- <li><a name="a391"></a> <span class="src-comm">// Fix bad colors</span></li>
431
- <li><a name="a392"></a> <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property</span><span class="src-sym">, </span><span class="src-var">$color_values</span><span class="src-sym">))</span></li>
432
- <li><a name="a393"></a> <span class="src-sym">{</span></li>
433
- <li><a name="a394"></a> <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">] </span>= <span class="src-str">'#'</span>.<span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
434
- <li><a name="a395"></a> <span class="src-sym">}</span></li>
435
- <li><a name="a396"></a> </li>
436
- <li><a name="a397"></a> <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/floatval">floatval</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">) </span>== <span class="src-num">0</span><span class="src-sym">)</span></li>
437
- <li><a name="a398"></a> <span class="src-sym">{</span></li>
438
- <li><a name="a399"></a> <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">] </span>= <span class="src-str">'0'</span><span class="src-sym">;</span></li>
439
- <li><a name="a400"></a> <span class="src-sym">}</span></li>
440
- <li><a name="a401"></a> <span class="src-key">else</span></li>
441
- <li><a name="a402"></a> <span class="src-sym">{</span></li>
442
- <li><a name="a403"></a> <span class="src-var">$unit_found </span>= <span class="src-id">FALSE</span><span class="src-sym">;</span></li>
443
- <li><a name="a404"></a> <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$m </span>= <span class="src-num">0</span><span class="src-sym">, </span><span class="src-var">$size_4 </span>= <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$units</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$m </span>&lt; <span class="src-var">$size_4</span><span class="src-sym">; </span><span class="src-var">$m</span>++<span class="src-sym">)</span></li>
444
- <li><a name="a405"></a> <span class="src-sym">{</span></li>
445
- <li><a name="a406"></a> <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-var">$units</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">) </span>!== <span class="src-id">FALSE</span><span class="src-sym">)</span></li>
446
- <li><a name="a407"></a> <span class="src-sym">{</span></li>
447
- <li><a name="a408"></a> <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">] </span>= <a href="http://www.php.net/floatval">floatval</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-var">$units</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
448
- <li><a name="a409"></a> <span class="src-var">$unit_found </span>= <span class="src-id">TRUE</span><span class="src-sym">;</span></li>
449
- <li><a name="a410"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
450
- <li><a name="a411"></a> <span class="src-sym">}</span></li>
451
- <li><a name="a412"></a> <span class="src-sym">}</span></li>
452
- <li><a name="a413"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$unit_found </span>&amp;&amp; <span class="src-sym">!</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">property</span><span class="src-sym">,</span><span class="src-var">$number_values</span><span class="src-sym">,</span><span class="src-id">TRUE</span><span class="src-sym">))</span></li>
453
- <li><a name="a414"></a> <span class="src-sym">{</span></li>
454
- <li><a name="a415"></a> <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">] </span>= <a href="http://www.php.net/floatval">floatval</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">'px'</span><span class="src-sym">;</span></li>
455
- <li><a name="a416"></a> <span class="src-sym">}</span></li>
456
- <li><a name="a417"></a> <span class="src-key">else </span><span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$unit_found</span><span class="src-sym">)</span></li>
457
- <li><a name="a418"></a> <span class="src-sym">{</span></li>
458
- <li><a name="a419"></a> <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">] </span>= <a href="http://www.php.net/floatval">floatval</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
459
- <li><a name="a420"></a> <span class="src-sym">}</span></li>
460
- <li><a name="a421"></a> <span class="src-sym">}</span></li>
461
- <li><a name="a422"></a> <span class="src-sym">}</span></li>
462
- <li><a name="a423"></a>&nbsp;</li>
463
- <li><a name="a424"></a> <span class="src-key">return </span><span class="src-sym">((</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">) </span>&gt; <span class="src-num">1</span><span class="src-sym">) </span>? <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-str">'/'</span>.<span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">] </span>: <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
464
- <li><a name="a425"></a> <span class="src-sym">}</span></li>
465
- <li><a name="a426"></a>&nbsp;</li>
466
- <li><a name="a427"></a> <span class="src-doc">/**</span></li>
467
- <li><a name="a428"></a><span class="src-doc"> * Merges selectors with same properties. Example: a{color:red} b{color:red} -&gt; a,b{color:red}</span></li>
468
- <li><a name="a429"></a><span class="src-doc"> * Very basic and has at least one bug. Hopefully there is a replacement soon.</span></li>
469
- <li><a name="a430"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">array </span><span class="src-doc-var">$array </span></li>
470
- <li><a name="a431"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">array </span></li>
471
- <li><a name="a432"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
472
- <li><a name="a433"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
473
- <li><a name="a434"></a><span class="src-doc"> */</span></li>
474
- <li><a name="a435"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodmerge_selectors">merge_selectors</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$array</span><span class="src-sym">)</span></li>
475
- <li><a name="a436"></a> <span class="src-sym">{</span></li>
476
- <li><a name="a437"></a> <span class="src-var">$css </span>= <span class="src-var">$array</span><span class="src-sym">;</span></li>
477
- <li><a name="a438"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$css </span><span class="src-key">as </span><span class="src-var">$key </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
478
- <li><a name="a439"></a> <span class="src-sym">{</span></li>
479
- <li><a name="a440"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$css</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
480
- <li><a name="a441"></a> <span class="src-sym">{</span></li>
481
- <li><a name="a442"></a> <span class="src-key">continue</span><span class="src-sym">;</span></li>
482
- <li><a name="a443"></a> <span class="src-sym">}</span></li>
483
- <li><a name="a444"></a> <span class="src-var">$newsel </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
484
- <li><a name="a445"></a> </li>
485
- <li><a name="a446"></a> <span class="src-comm">// Check if properties also exist in another selector</span></li>
486
- <li><a name="a447"></a> <span class="src-var">$keys </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
487
- <li><a name="a448"></a> <span class="src-comm">// PHP bug (?) without $css = $array; here</span></li>
488
- <li><a name="a449"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$css </span><span class="src-key">as </span><span class="src-var">$selector </span>=&gt; <span class="src-var">$vali</span><span class="src-sym">)</span></li>
489
- <li><a name="a450"></a> <span class="src-sym">{</span></li>
490
- <li><a name="a451"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$selector </span>== <span class="src-var">$key</span><span class="src-sym">)</span></li>
491
- <li><a name="a452"></a> <span class="src-sym">{</span></li>
492
- <li><a name="a453"></a> <span class="src-key">continue</span><span class="src-sym">;</span></li>
493
- <li><a name="a454"></a> <span class="src-sym">}</span></li>
494
- <li><a name="a455"></a> </li>
495
- <li><a name="a456"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$css</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">] </span>=== <span class="src-var">$vali</span><span class="src-sym">)</span></li>
496
- <li><a name="a457"></a> <span class="src-sym">{</span></li>
497
- <li><a name="a458"></a> <span class="src-var">$keys</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-var">$selector</span><span class="src-sym">;</span></li>
498
- <li><a name="a459"></a> <span class="src-sym">}</span></li>
499
- <li><a name="a460"></a> <span class="src-sym">}</span></li>
500
- <li><a name="a461"></a>&nbsp;</li>
501
- <li><a name="a462"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$keys</span><span class="src-sym">))</span></li>
502
- <li><a name="a463"></a> <span class="src-sym">{</span></li>
503
- <li><a name="a464"></a> <span class="src-var">$newsel </span>= <span class="src-var">$key</span><span class="src-sym">;</span></li>
504
- <li><a name="a465"></a> unset<span class="src-sym">(</span><span class="src-var">$css</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
505
- <li><a name="a466"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$keys </span><span class="src-key">as </span><span class="src-var">$selector</span><span class="src-sym">)</span></li>
506
- <li><a name="a467"></a> <span class="src-sym">{</span></li>
507
- <li><a name="a468"></a> unset<span class="src-sym">(</span><span class="src-var">$css</span><span class="src-sym">[</span><span class="src-var">$selector</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
508
- <li><a name="a469"></a> <span class="src-var">$newsel </span>.= <span class="src-str">','</span>.<span class="src-var">$selector</span><span class="src-sym">;</span></li>
509
- <li><a name="a470"></a> <span class="src-sym">}</span></li>
510
- <li><a name="a471"></a> <span class="src-var">$css</span><span class="src-sym">[</span><span class="src-var">$newsel</span><span class="src-sym">] </span>= <span class="src-var">$value</span><span class="src-sym">;</span></li>
511
- <li><a name="a472"></a> <span class="src-sym">}</span></li>
512
- <li><a name="a473"></a> <span class="src-sym">}</span></li>
513
- <li><a name="a474"></a> <span class="src-var">$array </span>= <span class="src-var">$css</span><span class="src-sym">;</span></li>
514
- <li><a name="a475"></a> <span class="src-sym">}</span></li>
515
- <li><a name="a476"></a>&nbsp;</li>
516
- <li><a name="a477"></a> <span class="src-doc">/**</span></li>
517
- <li><a name="a478"></a><span class="src-doc"> * Dissolves properties like padding:10px 10px 10px to padding-top:10px;padding-bottom:10px;...</span></li>
518
- <li><a name="a479"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$property </span></li>
519
- <li><a name="a480"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$value </span></li>
520
- <li><a name="a481"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">array </span></li>
521
- <li><a name="a482"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
522
- <li><a name="a483"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> merge_4value_shorthands()</span></li>
523
- <li><a name="a484"></a><span class="src-doc"> */</span></li>
524
- <li><a name="a485"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methoddissolve_4value_shorthands">dissolve_4value_shorthands</a><span class="src-sym">(</span><span class="src-var">$property</span><span class="src-sym">,</span><span class="src-var">$value</span><span class="src-sym">)</span></li>
525
- <li><a name="a486"></a> <span class="src-sym">{</span></li>
526
- <li><a name="a487"></a> <span class="src-var">$shorthands </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
527
- <li><a name="a488"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
528
- <li><a name="a489"></a> <span class="src-sym">{</span></li>
529
- <li><a name="a490"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">] </span>= <span class="src-var">$value</span><span class="src-sym">;</span></li>
530
- <li><a name="a491"></a> <span class="src-key">return </span><span class="src-var">$return</span><span class="src-sym">;</span></li>
531
- <li><a name="a492"></a> <span class="src-sym">}</span></li>
532
- <li><a name="a493"></a> </li>
533
- <li><a name="a494"></a> <span class="src-var">$important </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
534
- <li><a name="a495"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">))</span></li>
535
- <li><a name="a496"></a> <span class="src-sym">{</span></li>
536
- <li><a name="a497"></a> <span class="src-var">$value </span>= <span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
537
- <li><a name="a498"></a> <span class="src-var">$important </span>= <span class="src-str">' !important'</span><span class="src-sym">;</span></li>
538
- <li><a name="a499"></a> <span class="src-sym">}</span></li>
539
- <li><a name="a500"></a> <span class="src-var">$values </span>= <a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">' '</span><span class="src-sym">,</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
540
- <li><a name="a501"></a>&nbsp;</li>
541
- <li><a name="a502"></a>&nbsp;</li>
542
- <li><a name="a503"></a> <span class="src-var">$return </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
543
- <li><a name="a504"></a> <span class="src-key">if</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">) </span>== <span class="src-num">4</span><span class="src-sym">)</span></li>
544
- <li><a name="a505"></a> <span class="src-sym">{</span></li>
545
- <li><a name="a506"></a> <span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;</span><span class="src-var">$i</span>&lt;<span class="src-num">4</span><span class="src-sym">;</span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
546
- <li><a name="a507"></a> <span class="src-sym">{</span></li>
547
- <li><a name="a508"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]] </span>= <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
548
- <li><a name="a509"></a> <span class="src-sym">}</span></li>
549
- <li><a name="a510"></a> <span class="src-sym">}</span></li>
550
- <li><a name="a511"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">) </span>== <span class="src-num">3</span><span class="src-sym">)</span></li>
551
- <li><a name="a512"></a> <span class="src-sym">{</span></li>
552
- <li><a name="a513"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]] </span>= <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
553
- <li><a name="a514"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]] </span>= <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
554
- <li><a name="a515"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">3</span><span class="src-sym">]] </span>= <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
555
- <li><a name="a516"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]] </span>= <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
556
- <li><a name="a517"></a> <span class="src-sym">}</span></li>
557
- <li><a name="a518"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$values</span><span class="src-sym">) </span>== <span class="src-num">2</span><span class="src-sym">)</span></li>
558
- <li><a name="a519"></a> <span class="src-sym">{</span></li>
559
- <li><a name="a520"></a> <span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;</span><span class="src-var">$i</span>&lt;<span class="src-num">4</span><span class="src-sym">;</span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
560
- <li><a name="a521"></a> <span class="src-sym">{</span></li>
561
- <li><a name="a522"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]] </span>= <span class="src-sym">((</span><span class="src-var">$i </span>% <span class="src-num">2 </span>!= <span class="src-num">0</span><span class="src-sym">)) </span>? <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span>.<span class="src-var">$important </span>: <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
562
- <li><a name="a523"></a> <span class="src-sym">}</span></li>
563
- <li><a name="a524"></a> <span class="src-sym">}</span></li>
564
- <li><a name="a525"></a> <span class="src-key">else</span></li>
565
- <li><a name="a526"></a> <span class="src-sym">{</span></li>
566
- <li><a name="a527"></a> <span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;</span><span class="src-var">$i</span>&lt;<span class="src-num">4</span><span class="src-sym">;</span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
567
- <li><a name="a528"></a> <span class="src-sym">{</span></li>
568
- <li><a name="a529"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$shorthands</span><span class="src-sym">[</span><span class="src-var">$property</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]] </span>= <span class="src-var">$values</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
569
- <li><a name="a530"></a> <span class="src-sym">} </span></li>
570
- <li><a name="a531"></a> <span class="src-sym">}</span></li>
571
- <li><a name="a532"></a> </li>
572
- <li><a name="a533"></a> <span class="src-key">return </span><span class="src-var">$return</span><span class="src-sym">;</span></li>
573
- <li><a name="a534"></a> <span class="src-sym">}</span></li>
574
- <li><a name="a535"></a>&nbsp;</li>
575
- <li><a name="a536"></a> <span class="src-doc">/**</span></li>
576
- <li><a name="a537"></a><span class="src-doc"> * Explodes a string as explode() does, however, not if $sep is escaped or within a string.</span></li>
577
- <li><a name="a538"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$sep </span><span class="src-doc">seperator</span></li>
578
- <li><a name="a539"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$string </span></li>
579
- <li><a name="a540"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">array </span></li>
580
- <li><a name="a541"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
581
- <li><a name="a542"></a><span class="src-doc"> */</span></li>
582
- <li><a name="a543"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodexplode_ws">explode_ws</a><span class="src-sym">(</span><span class="src-var">$sep</span><span class="src-sym">,</span><span class="src-var">$string</span><span class="src-sym">)</span></li>
583
- <li><a name="a544"></a> <span class="src-sym">{</span></li>
584
- <li><a name="a545"></a> <span class="src-var">$status </span>= <span class="src-str">'st'</span><span class="src-sym">;</span></li>
585
- <li><a name="a546"></a> <span class="src-var">$to </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
586
- <li><a name="a547"></a> </li>
587
- <li><a name="a548"></a> <span class="src-var">$output </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
588
- <li><a name="a549"></a> <span class="src-var">$num </span>= <span class="src-num">0</span><span class="src-sym">;</span></li>
589
- <li><a name="a550"></a> <span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">, </span><span class="src-var">$len </span>= <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">)</span><span class="src-sym">;</span><span class="src-var">$i </span>&lt; <span class="src-var">$len</span><span class="src-sym">; </span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
590
- <li><a name="a551"></a> <span class="src-sym">{</span></li>
591
- <li><a name="a552"></a> <span class="src-key">switch</span><span class="src-sym">(</span><span class="src-var">$status</span><span class="src-sym">)</span></li>
592
- <li><a name="a553"></a> <span class="src-sym">{</span></li>
593
- <li><a name="a554"></a> <span class="src-key">case </span><span class="src-str">'st'</span>:</li>
594
- <li><a name="a555"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-var">$sep </span>&amp;&amp; <span class="src-sym">!</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">))</span></li>
595
- <li><a name="a556"></a> <span class="src-sym">{</span></li>
596
- <li><a name="a557"></a> ++<span class="src-var">$num</span><span class="src-sym">;</span></li>
597
- <li><a name="a558"></a> <span class="src-sym">}</span></li>
598
- <li><a name="a559"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'&quot;' </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'\'' </span>|| <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'(' </span>&amp;&amp; <span class="src-sym">!</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">))</span></li>
599
- <li><a name="a560"></a> <span class="src-sym">{</span></li>
600
- <li><a name="a561"></a> <span class="src-var">$status </span>= <span class="src-str">'str'</span><span class="src-sym">;</span></li>
601
- <li><a name="a562"></a> <span class="src-var">$to </span>= <span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-str">'('</span><span class="src-sym">) </span>? <span class="src-str">')' </span>: <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
602
- <li><a name="a563"></a> <span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$output</span><span class="src-sym">[</span><span class="src-var">$num</span><span class="src-sym">]</span><span class="src-sym">)) </span>? <span class="src-var">$output</span><span class="src-sym">[</span><span class="src-var">$num</span><span class="src-sym">] </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>: <span class="src-var">$output</span><span class="src-sym">[</span><span class="src-var">$num</span><span class="src-sym">] </span>= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
603
- <li><a name="a564"></a> <span class="src-sym">}</span></li>
604
- <li><a name="a565"></a> <span class="src-key">else</span></li>
605
- <li><a name="a566"></a> <span class="src-sym">{</span></li>
606
- <li><a name="a567"></a> <span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$output</span><span class="src-sym">[</span><span class="src-var">$num</span><span class="src-sym">]</span><span class="src-sym">)) </span>? <span class="src-var">$output</span><span class="src-sym">[</span><span class="src-var">$num</span><span class="src-sym">] </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>: <span class="src-var">$output</span><span class="src-sym">[</span><span class="src-var">$num</span><span class="src-sym">] </span>= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
607
- <li><a name="a568"></a> <span class="src-sym">}</span></li>
608
- <li><a name="a569"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
609
- <li><a name="a570"></a> </li>
610
- <li><a name="a571"></a> <span class="src-key">case </span><span class="src-str">'str'</span>:</li>
611
- <li><a name="a572"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>== <span class="src-var">$to </span>&amp;&amp; <span class="src-sym">!</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodescaped">escaped</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">,</span><span class="src-var">$i</span><span class="src-sym">))</span></li>
612
- <li><a name="a573"></a> <span class="src-sym">{</span></li>
613
- <li><a name="a574"></a> <span class="src-var">$status </span>= <span class="src-str">'st'</span><span class="src-sym">;</span></li>
614
- <li><a name="a575"></a> <span class="src-sym">}</span></li>
615
- <li><a name="a576"></a> <span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$output</span><span class="src-sym">[</span><span class="src-var">$num</span><span class="src-sym">]</span><span class="src-sym">)) </span>? <span class="src-var">$output</span><span class="src-sym">[</span><span class="src-var">$num</span><span class="src-sym">] </span>.= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">} </span>: <span class="src-var">$output</span><span class="src-sym">[</span><span class="src-var">$num</span><span class="src-sym">] </span>= <span class="src-var">$string</span><span class="src-sym">{</span><span class="src-var">$i</span><span class="src-sym">}</span><span class="src-sym">;</span></li>
616
- <li><a name="a577"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
617
- <li><a name="a578"></a> <span class="src-sym">}</span></li>
618
- <li><a name="a579"></a> <span class="src-sym">}</span></li>
619
- <li><a name="a580"></a> </li>
620
- <li><a name="a581"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$output</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
621
- <li><a name="a582"></a> <span class="src-sym">{</span></li>
622
- <li><a name="a583"></a> <span class="src-key">return </span><span class="src-var">$output</span><span class="src-sym">;</span></li>
623
- <li><a name="a584"></a> <span class="src-sym">}</span></li>
624
- <li><a name="a585"></a> <span class="src-key">else</span></li>
625
- <li><a name="a586"></a> <span class="src-sym">{</span></li>
626
- <li><a name="a587"></a> <span class="src-key">return </span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$output</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
627
- <li><a name="a588"></a> <span class="src-sym">}</span></li>
628
- <li><a name="a589"></a> <span class="src-sym">}</span></li>
629
- <li><a name="a590"></a>&nbsp;</li>
630
- <li><a name="a591"></a> <span class="src-doc">/**</span></li>
631
- <li><a name="a592"></a><span class="src-doc"> * Merges Shorthand properties again, the opposite of dissolve_4value_shorthands()</span></li>
632
- <li><a name="a593"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">array </span><span class="src-doc-var">$array </span></li>
633
- <li><a name="a594"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">array </span></li>
634
- <li><a name="a595"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
635
- <li><a name="a596"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> dissolve_4value_shorthands()</span></li>
636
- <li><a name="a597"></a><span class="src-doc"> */</span></li>
637
- <li><a name="a598"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodmerge_4value_shorthands">merge_4value_shorthands</a><span class="src-sym">(</span><span class="src-var">$array</span><span class="src-sym">)</span></li>
638
- <li><a name="a599"></a> <span class="src-sym">{</span></li>
639
- <li><a name="a600"></a> <span class="src-var">$return </span>= <span class="src-var">$array</span><span class="src-sym">;</span></li>
640
- <li><a name="a601"></a> <span class="src-var">$shorthands </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
641
- <li><a name="a602"></a> </li>
642
- <li><a name="a603"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$shorthands </span><span class="src-key">as </span><span class="src-var">$key </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
643
- <li><a name="a604"></a> <span class="src-sym">{</span></li>
644
- <li><a name="a605"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$array</span><span class="src-sym">[</span><span class="src-var">$value</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]]</span><span class="src-sym">) </span>&amp;&amp; isset<span class="src-sym">(</span><span class="src-var">$array</span><span class="src-sym">[</span><span class="src-var">$value</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]]</span><span class="src-sym">)</span></li>
645
- <li><a name="a606"></a> &amp;&amp; isset<span class="src-sym">(</span><span class="src-var">$array</span><span class="src-sym">[</span><span class="src-var">$value</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]]</span><span class="src-sym">) </span>&amp;&amp; isset<span class="src-sym">(</span><span class="src-var">$array</span><span class="src-sym">[</span><span class="src-var">$value</span><span class="src-sym">[</span><span class="src-num">3</span><span class="src-sym">]]</span><span class="src-sym">) </span>&amp;&amp; <span class="src-var">$value </span>!== <span class="src-num">0</span><span class="src-sym">)</span></li>
646
- <li><a name="a607"></a> <span class="src-sym">{</span></li>
647
- <li><a name="a608"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">] </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
648
- <li><a name="a609"></a> </li>
649
- <li><a name="a610"></a> <span class="src-var">$important </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
650
- <li><a name="a611"></a> <span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <span class="src-num">4</span><span class="src-sym">; </span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
651
- <li><a name="a612"></a> <span class="src-sym">{</span></li>
652
- <li><a name="a613"></a> <span class="src-var">$val </span>= <span class="src-var">$array</span><span class="src-sym">[</span><span class="src-var">$value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">;</span></li>
653
- <li><a name="a614"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$val</span><span class="src-sym">))</span></li>
654
- <li><a name="a615"></a> <span class="src-sym">{</span></li>
655
- <li><a name="a616"></a> <span class="src-var">$important </span>= <span class="src-str">'!important'</span><span class="src-sym">;</span></li>
656
- <li><a name="a617"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">] </span>.= <span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a><span class="src-sym">(</span><span class="src-var">$val</span><span class="src-sym">)</span>.<span class="src-str">' '</span><span class="src-sym">;</span></li>
657
- <li><a name="a618"></a> <span class="src-sym">}</span></li>
658
- <li><a name="a619"></a> <span class="src-key">else</span></li>
659
- <li><a name="a620"></a> <span class="src-sym">{</span></li>
660
- <li><a name="a621"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">] </span>.= <span class="src-var">$val</span>.<span class="src-str">' '</span><span class="src-sym">;</span></li>
661
- <li><a name="a622"></a> <span class="src-sym">}</span></li>
662
- <li><a name="a623"></a> unset<span class="src-sym">(</span><span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
663
- <li><a name="a624"></a> <span class="src-sym">}</span></li>
664
- <li><a name="a625"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">] </span>= <a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodshorthand">shorthand</a><span class="src-sym">(</span><a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]</span>.<span class="src-var">$important</span><span class="src-sym">))</span><span class="src-sym">; </span></li>
665
- <li><a name="a626"></a> <span class="src-sym">}</span></li>
666
- <li><a name="a627"></a> <span class="src-sym">}</span></li>
667
- <li><a name="a628"></a> <span class="src-key">return </span><span class="src-var">$return</span><span class="src-sym">;</span></li>
668
- <li><a name="a629"></a> <span class="src-sym">}</span></li>
669
- <li><a name="a630"></a>&nbsp;</li>
670
- <li><a name="a631"></a> <span class="src-doc">/**</span></li>
671
- <li><a name="a632"></a><span class="src-doc"> * Dissolve background property</span></li>
672
- <li><a name="a633"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$str_value </span></li>
673
- <li><a name="a634"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">array </span></li>
674
- <li><a name="a635"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
675
- <li><a name="a636"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> merge_bg()</span></li>
676
- <li><a name="a637"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@todo</span><span class="src-doc"> full CSS 3 compliance</span></li>
677
- <li><a name="a638"></a><span class="src-doc"> */</span></li>
678
- <li><a name="a639"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methoddissolve_short_bg">dissolve_short_bg</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">)</span></li>
679
- <li><a name="a640"></a> <span class="src-sym">{</span></li>
680
- <li><a name="a641"></a> <span class="src-var">$background_prop_default </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
681
- <li><a name="a642"></a> <span class="src-var">$repeat </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'repeat'</span><span class="src-sym">,</span><span class="src-str">'repeat-x'</span><span class="src-sym">,</span><span class="src-str">'repeat-y'</span><span class="src-sym">,</span><span class="src-str">'no-repeat'</span><span class="src-sym">,</span><span class="src-str">'space'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
682
- <li><a name="a643"></a> <span class="src-var">$attachment </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'scroll'</span><span class="src-sym">,</span><span class="src-str">'fixed'</span><span class="src-sym">,</span><span class="src-str">'local'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
683
- <li><a name="a644"></a> <span class="src-var">$clip </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'border'</span><span class="src-sym">,</span><span class="src-str">'padding'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
684
- <li><a name="a645"></a> <span class="src-var">$origin </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'border'</span><span class="src-sym">,</span><span class="src-str">'padding'</span><span class="src-sym">,</span><span class="src-str">'content'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
685
- <li><a name="a646"></a> <span class="src-var">$pos </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'top'</span><span class="src-sym">,</span><span class="src-str">'center'</span><span class="src-sym">,</span><span class="src-str">'bottom'</span><span class="src-sym">,</span><span class="src-str">'left'</span><span class="src-sym">,</span><span class="src-str">'right'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
686
- <li><a name="a647"></a> <span class="src-var">$important </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
687
- <li><a name="a648"></a> <span class="src-var">$return </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'background-image' </span>=&gt; <span class="src-id">NULL</span><span class="src-sym">,</span><span class="src-str">'background-size' </span>=&gt; <span class="src-id">NULL</span><span class="src-sym">,</span><span class="src-str">'background-repeat' </span>=&gt; <span class="src-id">NULL</span><span class="src-sym">,</span><span class="src-str">'background-position' </span>=&gt; <span class="src-id">NULL</span><span class="src-sym">,</span><span class="src-str">'background-attachment'</span>=&gt;<span class="src-id">NULL</span><span class="src-sym">,</span><span class="src-str">'background-clip' </span>=&gt; <span class="src-id">NULL</span><span class="src-sym">,</span><span class="src-str">'background-origin' </span>=&gt; <span class="src-id">NULL</span><span class="src-sym">,</span><span class="src-str">'background-color' </span>=&gt; <span class="src-id">NULL</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
688
- <li><a name="a649"></a> </li>
689
- <li><a name="a650"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">))</span></li>
690
- <li><a name="a651"></a> <span class="src-sym">{</span></li>
691
- <li><a name="a652"></a> <span class="src-var">$important </span>= <span class="src-str">' !important'</span><span class="src-sym">;</span></li>
692
- <li><a name="a653"></a> <span class="src-var">$str_value </span>= <span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
693
- <li><a name="a654"></a> <span class="src-sym">}</span></li>
694
- <li><a name="a655"></a> </li>
695
- <li><a name="a656"></a> <span class="src-var">$str_value </span>= <a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodexplode_ws">explode_ws</a><span class="src-sym">(</span><span class="src-str">','</span><span class="src-sym">,</span><span class="src-var">$str_value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
696
- <li><a name="a657"></a> <span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
697
- <li><a name="a658"></a> <span class="src-sym">{</span></li>
698
- <li><a name="a659"></a> <span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'clip'</span><span class="src-sym">] </span>= <span class="src-id">FALSE</span><span class="src-sym">; </span><span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'pos'</span><span class="src-sym">] </span>= <span class="src-id">FALSE</span><span class="src-sym">;</span></li>
699
- <li><a name="a660"></a> <span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'color'</span><span class="src-sym">] </span>= <span class="src-id">FALSE</span><span class="src-sym">; </span><span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'bg'</span><span class="src-sym">] </span>= <span class="src-id">FALSE</span><span class="src-sym">;</span></li>
700
- <li><a name="a661"></a> </li>
701
- <li><a name="a662"></a> <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">] </span>= <a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodexplode_ws">explode_ws</a><span class="src-sym">(</span><span class="src-str">' '</span><span class="src-sym">,</span><a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
702
- <li><a name="a663"></a> </li>
703
- <li><a name="a664"></a> <span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$j </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$j </span>&lt; <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$j</span>++<span class="src-sym">)</span></li>
704
- <li><a name="a665"></a> <span class="src-sym">{</span></li>
705
- <li><a name="a666"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'bg'</span><span class="src-sym">] </span>=== <span class="src-id">FALSE </span>&amp;&amp; <span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">) </span>== <span class="src-str">'url(' </span>|| <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">] </span>=== <span class="src-str">'none'</span><span class="src-sym">))</span></li>
706
- <li><a name="a667"></a> <span class="src-sym">{</span></li>
707
- <li><a name="a668"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-image'</span><span class="src-sym">] </span>.= <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
708
- <li><a name="a669"></a> <span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'bg'</span><span class="src-sym">] </span>= <span class="src-id">TRUE</span><span class="src-sym">;</span></li>
709
- <li><a name="a670"></a> <span class="src-sym">}</span></li>
710
- <li><a name="a671"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-var">$repeat</span><span class="src-sym">,</span><span class="src-id">TRUE</span><span class="src-sym">))</span></li>
711
- <li><a name="a672"></a> <span class="src-sym">{</span></li>
712
- <li><a name="a673"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-repeat'</span><span class="src-sym">] </span>.= <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
713
- <li><a name="a674"></a> <span class="src-sym">}</span></li>
714
- <li><a name="a675"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-var">$attachment</span><span class="src-sym">,</span><span class="src-id">TRUE</span><span class="src-sym">))</span></li>
715
- <li><a name="a676"></a> <span class="src-sym">{</span></li>
716
- <li><a name="a677"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-attachment'</span><span class="src-sym">] </span>.= <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
717
- <li><a name="a678"></a> <span class="src-sym">}</span></li>
718
- <li><a name="a679"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-var">$clip</span><span class="src-sym">,</span><span class="src-id">TRUE</span><span class="src-sym">) </span>&amp;&amp; <span class="src-sym">!</span><span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'clip'</span><span class="src-sym">]</span><span class="src-sym">)</span></li>
719
- <li><a name="a680"></a> <span class="src-sym">{</span></li>
720
- <li><a name="a681"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-clip'</span><span class="src-sym">] </span>.= <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
721
- <li><a name="a682"></a> <span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'clip'</span><span class="src-sym">] </span>= <span class="src-id">TRUE</span><span class="src-sym">;</span></li>
722
- <li><a name="a683"></a> <span class="src-sym">}</span></li>
723
- <li><a name="a684"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-var">$origin</span><span class="src-sym">,</span><span class="src-id">TRUE</span><span class="src-sym">))</span></li>
724
- <li><a name="a685"></a> <span class="src-sym">{</span></li>
725
- <li><a name="a686"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-origin'</span><span class="src-sym">] </span>.= <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
726
- <li><a name="a687"></a> <span class="src-sym">}</span></li>
727
- <li><a name="a688"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">{</span><span class="src-num">0</span><span class="src-sym">} </span>== <span class="src-str">'('</span><span class="src-sym">)</span></li>
728
- <li><a name="a689"></a> <span class="src-sym">{</span></li>
729
- <li><a name="a690"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-size'</span><span class="src-sym">] </span>.= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">,</span>-<span class="src-num">1</span><span class="src-sym">)</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
730
- <li><a name="a691"></a> <span class="src-sym">}</span></li>
731
- <li><a name="a692"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-var">$pos</span><span class="src-sym">,</span><span class="src-id">TRUE</span><span class="src-sym">) </span>|| <a href="http://www.php.net/is_numeric">is_numeric</a><span class="src-sym">(</span><span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">{</span><span class="src-num">0</span><span class="src-sym">}</span><span class="src-sym">) </span>|| <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">{</span><span class="src-num">0</span><span class="src-sym">} </span>=== <span class="src-id">NULL</span><span class="src-sym">)</span></li>
732
- <li><a name="a693"></a> <span class="src-sym">{</span></li>
733
- <li><a name="a694"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-position'</span><span class="src-sym">] </span>.= <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
734
- <li><a name="a695"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'pos'</span><span class="src-sym">]</span><span class="src-sym">) </span><span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-position'</span><span class="src-sym">] </span>.= <span class="src-str">' '</span><span class="src-sym">; </span><span class="src-key">else </span><span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-position'</span><span class="src-sym">]</span>.= <span class="src-str">','</span><span class="src-sym">;</span></li>
735
- <li><a name="a696"></a> <span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'pos'</span><span class="src-sym">] </span>= <span class="src-id">TRUE</span><span class="src-sym">;</span></li>
736
- <li><a name="a697"></a> <span class="src-sym">}</span></li>
737
- <li><a name="a698"></a> <span class="src-key">elseif</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'color'</span><span class="src-sym">]</span><span class="src-sym">)</span></li>
738
- <li><a name="a699"></a> <span class="src-sym">{</span></li>
739
- <li><a name="a700"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-str">'background-color'</span><span class="src-sym">] </span>.= <span class="src-var">$str_value</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span>.<span class="src-str">','</span><span class="src-sym">;</span></li>
740
- <li><a name="a701"></a> <span class="src-var">$have</span><span class="src-sym">[</span><span class="src-str">'color'</span><span class="src-sym">] </span>= <span class="src-id">TRUE</span><span class="src-sym">;</span></li>
741
- <li><a name="a702"></a> <span class="src-sym">}</span></li>
742
- <li><a name="a703"></a> <span class="src-sym">}</span></li>
743
- <li><a name="a704"></a> <span class="src-sym">}</span></li>
744
- <li><a name="a705"></a> </li>
745
- <li><a name="a706"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$background_prop_default </span><span class="src-key">as </span><span class="src-var">$bg_prop </span>=&gt; <span class="src-var">$default_value</span><span class="src-sym">)</span></li>
746
- <li><a name="a707"></a> <span class="src-sym">{</span></li>
747
- <li><a name="a708"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$bg_prop</span><span class="src-sym">] </span>!== <span class="src-id">NULL</span><span class="src-sym">)</span></li>
748
- <li><a name="a709"></a> <span class="src-sym">{</span></li>
749
- <li><a name="a710"></a> <span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$bg_prop</span><span class="src-sym">] </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$bg_prop</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span>-<span class="src-num">1</span><span class="src-sym">)</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
750
- <li><a name="a711"></a> <span class="src-sym">}</span></li>
751
- <li><a name="a712"></a> <span class="src-key">else </span><span class="src-var">$return</span><span class="src-sym">[</span><span class="src-var">$bg_prop</span><span class="src-sym">] </span>= <span class="src-var">$default_value</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
752
- <li><a name="a713"></a> <span class="src-sym">}</span></li>
753
- <li><a name="a714"></a> <span class="src-key">return </span><span class="src-var">$return</span><span class="src-sym">; </span></li>
754
- <li><a name="a715"></a> <span class="src-sym">}</span></li>
755
- <li><a name="a716"></a>&nbsp;</li>
756
- <li><a name="a717"></a> <span class="src-doc">/**</span></li>
757
- <li><a name="a718"></a><span class="src-doc"> * Merges all background properties</span></li>
758
- <li><a name="a719"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">array </span><span class="src-doc-var">$input_css </span></li>
759
- <li><a name="a720"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">array </span></li>
760
- <li><a name="a721"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
761
- <li><a name="a722"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> dissolve_short_bg()</span></li>
762
- <li><a name="a723"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@todo</span><span class="src-doc"> full CSS 3 compliance</span></li>
763
- <li><a name="a724"></a><span class="src-doc"> */</span></li>
764
- <li><a name="a725"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_optimise.html#methodmerge_bg">merge_bg</a><span class="src-sym">(</span><span class="src-var">$input_css</span><span class="src-sym">)</span></li>
765
- <li><a name="a726"></a> <span class="src-sym">{</span></li>
766
- <li><a name="a727"></a> <span class="src-var">$background_prop_default </span>=<span class="src-sym">&amp; </span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
767
- <li><a name="a728"></a> <span class="src-comm">// Max number of background images. CSS3 not yet fully implemented</span></li>
768
- <li><a name="a729"></a> <span class="src-var">$number_of_values </span>= <span class="src-sym">@</span><a href="http://www.php.net/max">max</a><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodexplode_ws">explode_ws</a><span class="src-sym">(</span><span class="src-str">','</span><span class="src-sym">,</span><span class="src-var">$input_css</span><span class="src-sym">[</span><span class="src-str">'background-image'</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">,</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodexplode_ws">explode_ws</a><span class="src-sym">(</span><span class="src-str">','</span><span class="src-sym">,</span><span class="src-var">$input_css</span><span class="src-sym">[</span><span class="src-str">'background-color'</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
769
- <li><a name="a730"></a> <span class="src-comm">// Array with background images to check if BG image exists</span></li>
770
- <li><a name="a731"></a> <span class="src-var">$bg_img_array </span>= <span class="src-sym">@</span><a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodexplode_ws">explode_ws</a><span class="src-sym">(</span><span class="src-str">','</span><span class="src-sym">,</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a><span class="src-sym">(</span><span class="src-var">$input_css</span><span class="src-sym">[</span><span class="src-str">'background-image'</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
771
- <li><a name="a732"></a> <span class="src-var">$new_bg_value </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
772
- <li><a name="a733"></a> <span class="src-var">$important </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
773
- <li><a name="a734"></a> </li>
774
- <li><a name="a735"></a> <span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <span class="src-var">$number_of_values</span><span class="src-sym">; </span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
775
- <li><a name="a736"></a> <span class="src-sym">{</span></li>
776
- <li><a name="a737"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$background_prop_default </span><span class="src-key">as </span><span class="src-var">$bg_property </span>=&gt; <span class="src-var">$default_value</span><span class="src-sym">)</span></li>
777
- <li><a name="a738"></a> <span class="src-sym">{</span></li>
778
- <li><a name="a739"></a> <span class="src-comm">// Skip if property does not exist</span></li>
779
- <li><a name="a740"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$input_css</span><span class="src-sym">[</span><span class="src-var">$bg_property</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
780
- <li><a name="a741"></a> <span class="src-sym">{</span></li>
781
- <li><a name="a742"></a> <span class="src-key">continue</span><span class="src-sym">;</span></li>
782
- <li><a name="a743"></a> <span class="src-sym">}</span></li>
783
- <li><a name="a744"></a> </li>
784
- <li><a name="a745"></a> <span class="src-var">$cur_value </span>= <span class="src-var">$input_css</span><span class="src-sym">[</span><span class="src-var">$bg_property</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
785
- <li><a name="a746"></a> </li>
786
- <li><a name="a747"></a> <span class="src-comm">// Skip some properties if there is no background image</span></li>
787
- <li><a name="a748"></a> <span class="src-key">if</span><span class="src-sym">((</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$bg_img_array</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">) </span>|| <span class="src-var">$bg_img_array</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">] </span>=== <span class="src-str">'none'</span><span class="src-sym">)</span></li>
788
- <li><a name="a749"></a> &amp;&amp; <span class="src-sym">(</span><span class="src-var">$bg_property </span>=== <span class="src-str">'background-size' </span>|| <span class="src-var">$bg_property </span>=== <span class="src-str">'background-position'</span></li>
789
- <li><a name="a750"></a> || <span class="src-var">$bg_property </span>=== <span class="src-str">'background-attachment' </span>|| <span class="src-var">$bg_property </span>=== <span class="src-str">'background-repeat'</span><span class="src-sym">))</span></li>
790
- <li><a name="a751"></a> <span class="src-sym">{</span></li>
791
- <li><a name="a752"></a> <span class="src-key">continue</span><span class="src-sym">;</span></li>
792
- <li><a name="a753"></a> <span class="src-sym">}</span></li>
793
- <li><a name="a754"></a> </li>
794
- <li><a name="a755"></a> <span class="src-comm">// Remove !important</span></li>
795
- <li><a name="a756"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodis_important">is_important</a><span class="src-sym">(</span><span class="src-var">$cur_value</span><span class="src-sym">))</span></li>
796
- <li><a name="a757"></a> <span class="src-sym">{</span></li>
797
- <li><a name="a758"></a> <span class="src-var">$important </span>= <span class="src-str">' !important'</span><span class="src-sym">;</span></li>
798
- <li><a name="a759"></a> <span class="src-var">$cur_value </span>= <span class="src-id"><a href="../csstidy/csstidy.html">csstidy</a></span><span class="src-sym">::</span><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a><span class="src-sym">(</span><span class="src-var">$cur_value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
799
- <li><a name="a760"></a> <span class="src-sym">}</span></li>
800
- <li><a name="a761"></a> </li>
801
- <li><a name="a762"></a> <span class="src-comm">// Do not add default values</span></li>
802
- <li><a name="a763"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$cur_value </span>=== <span class="src-var">$default_value</span><span class="src-sym">)</span></li>
803
- <li><a name="a764"></a> <span class="src-sym">{</span></li>
804
- <li><a name="a765"></a> <span class="src-key">continue</span><span class="src-sym">;</span></li>
805
- <li><a name="a766"></a> <span class="src-sym">}</span></li>
806
- <li><a name="a767"></a> </li>
807
- <li><a name="a768"></a> <span class="src-var">$temp </span>= <a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a><span class="src-sym">::</span><a href="../csstidy/csstidy_optimise.html#methodexplode_ws">explode_ws</a><span class="src-sym">(</span><span class="src-str">','</span><span class="src-sym">,</span><span class="src-var">$cur_value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
808
- <li><a name="a769"></a>&nbsp;</li>
809
- <li><a name="a770"></a> <span class="src-key">if</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
810
- <li><a name="a771"></a> <span class="src-sym">{ </span></li>
811
- <li><a name="a772"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$bg_property </span>== <span class="src-str">'background-size'</span><span class="src-sym">)</span></li>
812
- <li><a name="a773"></a> <span class="src-sym">{</span></li>
813
- <li><a name="a774"></a> <span class="src-var">$new_bg_value </span>.= <span class="src-str">'('</span>.<span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-str">') '</span><span class="src-sym">;</span></li>
814
- <li><a name="a775"></a> <span class="src-sym">}</span></li>
815
- <li><a name="a776"></a> <span class="src-key">else</span></li>
816
- <li><a name="a777"></a> <span class="src-sym">{</span></li>
817
- <li><a name="a778"></a> <span class="src-var">$new_bg_value </span>.= <span class="src-var">$temp</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-str">' '</span><span class="src-sym">;</span></li>
818
- <li><a name="a779"></a> <span class="src-sym">}</span></li>
819
- <li><a name="a780"></a> <span class="src-sym">} </span></li>
820
- <li><a name="a781"></a> <span class="src-sym">}</span></li>
821
- <li><a name="a782"></a> </li>
822
- <li><a name="a783"></a> <span class="src-var">$new_bg_value </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$new_bg_value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
823
- <li><a name="a784"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$i </span>!= <span class="src-var">$number_of_values</span>-<span class="src-num">1</span><span class="src-sym">) </span><span class="src-var">$new_bg_value </span>.= <span class="src-str">','</span><span class="src-sym">;</span></li>
824
- <li><a name="a785"></a> <span class="src-sym">}</span></li>
825
- <li><a name="a786"></a> </li>
826
- <li><a name="a787"></a> <span class="src-comm">// Delete all background-properties</span></li>
827
- <li><a name="a788"></a> <span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$background_prop_default </span><span class="src-key">as </span><span class="src-var">$bg_property </span>=&gt; <span class="src-var">$default_value</span><span class="src-sym">)</span></li>
828
- <li><a name="a789"></a> <span class="src-sym">{</span></li>
829
- <li><a name="a790"></a> unset<span class="src-sym">(</span><span class="src-var">$input_css</span><span class="src-sym">[</span><span class="src-var">$bg_property</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
830
- <li><a name="a791"></a> <span class="src-sym">}</span></li>
831
- <li><a name="a792"></a> </li>
832
- <li><a name="a793"></a> <span class="src-comm">// Add new background property</span></li>
833
- <li><a name="a794"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$new_bg_value </span>!== <span class="src-str">''</span><span class="src-sym">) </span><span class="src-var">$input_css</span><span class="src-sym">[</span><span class="src-str">'background'</span><span class="src-sym">] </span>= <span class="src-var">$new_bg_value</span>.<span class="src-var">$important</span><span class="src-sym">;</span></li>
834
- <li><a name="a795"></a> </li>
835
- <li><a name="a796"></a> <span class="src-key">return </span><span class="src-var">$input_css</span><span class="src-sym">;</span></li>
836
- <li><a name="a797"></a> <span class="src-sym">}</span></li>
837
- <li><a name="a798"></a><span class="src-sym">}</span></li>
838
- <li><a name="a799"></a><span class="src-php">?&gt;</span></li>
839
- </ol></pre></div>
840
- </div>
841
- <div class="credit">
842
- <hr />
843
- Documentation generated on Mon, 15 May 2006 22:55:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
844
- </div>
845
- </td></tr></table>
846
- </td>
847
- </tr>
848
- </table>
849
-
850
- </body>
851
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/__filesource/fsource_csstidy__class.csstidy_print.php.html DELETED
@@ -1,402 +0,0 @@
1
- <html>
2
- <head>
3
- <title>File Source for class.csstidy_print.php</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
-
33
- </td>
34
- <td>
35
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
36
-
37
- <h1 align="center">Source for file class.csstidy_print.php</h1>
38
- <p>Documentation is available at <a href="../csstidy/_class_csstidy_print_php.html">class.csstidy_print.php</a></p>
39
- <div class="php">
40
- <div class="listing"><pre><ol><li><a name="a1"></a><span class="src-php">&lt;?php</span></li>
41
- <li><a name="a2"></a><span class="src-doc">/**</span></li>
42
- <li><a name="a3"></a><span class="src-doc"> * CSSTidy - CSS Parser and Optimiser</span></li>
43
- <li><a name="a4"></a><span class="src-doc"> *</span></li>
44
- <li><a name="a5"></a><span class="src-doc"> * CSS Printing class</span></li>
45
- <li><a name="a6"></a><span class="src-doc"> * This class prints CSS data generated by csstidy.</span></li>
46
- <li><a name="a7"></a><span class="src-doc"> *</span></li>
47
- <li><a name="a8"></a><span class="src-doc"> * This file is part of CSSTidy.</span></li>
48
- <li><a name="a9"></a><span class="src-doc"> *</span></li>
49
- <li><a name="a10"></a><span class="src-doc"> * CSSTidy is free software; you can redistribute it and/or modify</span></li>
50
- <li><a name="a11"></a><span class="src-doc"> * it under the terms of the GNU General Public License as published by</span></li>
51
- <li><a name="a12"></a><span class="src-doc"> * the Free Software Foundation; either version 2 of the License, or</span></li>
52
- <li><a name="a13"></a><span class="src-doc"> * (at your option) any later version.</span></li>
53
- <li><a name="a14"></a><span class="src-doc"> *</span></li>
54
- <li><a name="a15"></a><span class="src-doc"> * CSSTidy is distributed in the hope that it will be useful,</span></li>
55
- <li><a name="a16"></a><span class="src-doc"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></li>
56
- <li><a name="a17"></a><span class="src-doc"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></li>
57
- <li><a name="a18"></a><span class="src-doc"> * GNU General Public License for more details.</span></li>
58
- <li><a name="a19"></a><span class="src-doc"> *</span></li>
59
- <li><a name="a20"></a><span class="src-doc"> * You should have received a copy of the GNU General Public License</span></li>
60
- <li><a name="a21"></a><span class="src-doc"> * along with CSSTidy; if not, write to the Free Software</span></li>
61
- <li><a name="a22"></a><span class="src-doc"> * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</span></li>
62
- <li><a name="a23"></a><span class="src-doc"> *</span></li>
63
- <li><a name="a24"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@license</span><span class="src-doc"> http://opensource.org/licenses/gpl-license.php GNU Public License</span></li>
64
- <li><a name="a25"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> csstidy</span></li>
65
- <li><a name="a26"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@author</span><span class="src-doc"> Florian Schmitz (floele at gmail dot com) 2005-2006</span></li>
66
- <li><a name="a27"></a><span class="src-doc"> */</span></li>
67
- <li><a name="a28"></a> </li>
68
- <li><a name="a29"></a><span class="src-doc">/**</span></li>
69
- <li><a name="a30"></a><span class="src-doc"> * CSS Printing class</span></li>
70
- <li><a name="a31"></a><span class="src-doc"> *</span></li>
71
- <li><a name="a32"></a><span class="src-doc"> * This class prints CSS data generated by csstidy.</span></li>
72
- <li><a name="a33"></a><span class="src-doc"> *</span></li>
73
- <li><a name="a34"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> csstidy</span></li>
74
- <li><a name="a35"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@author</span><span class="src-doc"> Florian Schmitz (floele at gmail dot com) 2005-2006</span></li>
75
- <li><a name="a36"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
76
- <li><a name="a37"></a><span class="src-doc"> */</span></li>
77
- <li><a name="a38"></a> </li>
78
- <li><a name="a39"></a><span class="src-key">class </span><a href="../csstidy/csstidy_print.html">csstidy_print</a></li>
79
- <li><a name="a40"></a><span class="src-sym">{</span></li>
80
- <li><a name="a41"></a> <span class="src-doc">/**</span></li>
81
- <li><a name="a42"></a><span class="src-doc"> * Saves the input CSS string</span></li>
82
- <li><a name="a43"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
83
- <li><a name="a44"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
84
- <li><a name="a45"></a><span class="src-doc"> */</span></li>
85
- <li><a name="a46"></a> <span class="src-key">var </span><a href="../csstidy/csstidy_print.html#var$input_css">$input_css</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
86
- <li><a name="a47"></a>&nbsp;</li>
87
- <li><a name="a48"></a> <span class="src-doc">/**</span></li>
88
- <li><a name="a49"></a><span class="src-doc"> * Saves the formatted CSS string</span></li>
89
- <li><a name="a50"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
90
- <li><a name="a51"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
91
- <li><a name="a52"></a><span class="src-doc"> */</span></li>
92
- <li><a name="a53"></a> <span class="src-key">var </span><a href="../csstidy/csstidy_print.html#var$output_css">$output_css</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
93
- <li><a name="a54"></a>&nbsp;</li>
94
- <li><a name="a55"></a> <span class="src-doc">/**</span></li>
95
- <li><a name="a56"></a><span class="src-doc"> * Saves the formatted CSS string (plain text)</span></li>
96
- <li><a name="a57"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
97
- <li><a name="a58"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
98
- <li><a name="a59"></a><span class="src-doc"> */</span></li>
99
- <li><a name="a60"></a> <span class="src-key">var </span><a href="../csstidy/csstidy_print.html#var$output_css_plain">$output_css_plain</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
100
- <li><a name="a61"></a>&nbsp;</li>
101
- <li><a name="a62"></a> <span class="src-doc">/**</span></li>
102
- <li><a name="a63"></a><span class="src-doc"> * Constructor</span></li>
103
- <li><a name="a64"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">array </span><span class="src-doc-var">$css </span><span class="src-doc">contains the class csstidy</span></li>
104
- <li><a name="a65"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
105
- <li><a name="a66"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
106
- <li><a name="a67"></a><span class="src-doc"> */</span></li>
107
- <li><a name="a68"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#methodcsstidy_print">csstidy_print</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$css</span><span class="src-sym">)</span></li>
108
- <li><a name="a69"></a> <span class="src-sym">{</span></li>
109
- <li><a name="a70"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">;</span></li>
110
- <li><a name="a71"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">css</span><span class="src-sym">;</span></li>
111
- <li><a name="a72"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">template </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">template</span><span class="src-sym">;</span></li>
112
- <li><a name="a73"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">tokens </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">tokens</span><span class="src-sym">;</span></li>
113
- <li><a name="a74"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">charset </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">charset</span><span class="src-sym">;</span></li>
114
- <li><a name="a75"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">import </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">import</span><span class="src-sym">;</span></li>
115
- <li><a name="a76"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">namespace </span>=<span class="src-sym">&amp; </span><span class="src-var">$css</span><span class="src-sym">-&gt;</span><span class="src-id">namespace</span><span class="src-sym">;</span></li>
116
- <li><a name="a77"></a> <span class="src-sym">}</span></li>
117
- <li><a name="a78"></a>&nbsp;</li>
118
- <li><a name="a79"></a> <span class="src-doc">/**</span></li>
119
- <li><a name="a80"></a><span class="src-doc"> * Resets output_css and output_css_plain (new css code)</span></li>
120
- <li><a name="a81"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
121
- <li><a name="a82"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
122
- <li><a name="a83"></a><span class="src-doc"> */</span></li>
123
- <li><a name="a84"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#method_reset">_reset</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
124
- <li><a name="a85"></a> <span class="src-sym">{</span></li>
125
- <li><a name="a86"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css">output_css</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
126
- <li><a name="a87"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css_plain">output_css_plain</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
127
- <li><a name="a88"></a> <span class="src-sym">}</span></li>
128
- <li><a name="a89"></a>&nbsp;</li>
129
- <li><a name="a90"></a> <span class="src-doc">/**</span></li>
130
- <li><a name="a91"></a><span class="src-doc"> * Returns the CSS code as plain text</span></li>
131
- <li><a name="a92"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
132
- <li><a name="a93"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
133
- <li><a name="a94"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
134
- <li><a name="a95"></a><span class="src-doc"> */</span></li>
135
- <li><a name="a96"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#methodplain">plain</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
136
- <li><a name="a97"></a> <span class="src-sym">{</span></li>
137
- <li><a name="a98"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_print">_print</a><span class="src-sym">(</span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
138
- <li><a name="a99"></a> <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css_plain">output_css_plain</a><span class="src-sym">;</span></li>
139
- <li><a name="a100"></a> <span class="src-sym">}</span></li>
140
- <li><a name="a101"></a>&nbsp;</li>
141
- <li><a name="a102"></a> <span class="src-doc">/**</span></li>
142
- <li><a name="a103"></a><span class="src-doc"> * Returns the formatted CSS code</span></li>
143
- <li><a name="a104"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
144
- <li><a name="a105"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
145
- <li><a name="a106"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
146
- <li><a name="a107"></a><span class="src-doc"> */</span></li>
147
- <li><a name="a108"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#methodformatted">formatted</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
148
- <li><a name="a109"></a> <span class="src-sym">{</span></li>
149
- <li><a name="a110"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_print">_print</a><span class="src-sym">(</span><span class="src-id">false</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
150
- <li><a name="a111"></a> <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css">output_css</a><span class="src-sym">;</span></li>
151
- <li><a name="a112"></a> <span class="src-sym">}</span></li>
152
- <li><a name="a113"></a> </li>
153
- <li><a name="a114"></a> <span class="src-doc">/**</span></li>
154
- <li><a name="a115"></a><span class="src-doc"> * Returns the formatted CSS Code and saves it into $this-&gt;output_css and $this-&gt;output_css_plain</span></li>
155
- <li><a name="a116"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">bool </span><span class="src-doc-var">$plain </span><span class="src-doc">plain text or not</span></li>
156
- <li><a name="a117"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
157
- <li><a name="a118"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 2.0</span></li>
158
- <li><a name="a119"></a><span class="src-doc"> */</span></li>
159
- <li><a name="a120"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#method_print">_print</a><span class="src-sym">(</span><span class="src-var">$plain </span>= <span class="src-id">false</span><span class="src-sym">)</span></li>
160
- <li><a name="a121"></a> <span class="src-sym">{</span></li>
161
- <li><a name="a122"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css">output_css</a> &amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css_plain">output_css_plain</a><span class="src-sym">) </span><span class="src-sym">{</span></li>
162
- <li><a name="a123"></a> <span class="src-key">return</span><span class="src-sym">;</span></li>
163
- <li><a name="a124"></a> <span class="src-sym">}</span></li>
164
- <li><a name="a125"></a> </li>
165
- <li><a name="a126"></a> <span class="src-var">$output </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
166
- <li><a name="a127"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'preserve_css'</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
167
- <li><a name="a128"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_convert_raw_css">_convert_raw_css</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
168
- <li><a name="a129"></a> <span class="src-sym">}</span></li>
169
- <li><a name="a130"></a>&nbsp;</li>
170
- <li><a name="a131"></a> <span class="src-var">$template </span>=<span class="src-sym">&amp; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">template</span><span class="src-sym">;</span></li>
171
- <li><a name="a132"></a>&nbsp;</li>
172
- <li><a name="a133"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$plain</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
173
- <li><a name="a134"></a> <span class="src-var">$template </span>= <a href="http://www.php.net/array_map">array_map</a><span class="src-sym">(</span><span class="src-str">'strip_tags'</span><span class="src-sym">, </span><span class="src-var">$template</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
174
- <li><a name="a135"></a> <span class="src-sym">}</span></li>
175
- <li><a name="a136"></a> </li>
176
- <li><a name="a137"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'timestamp'</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
177
- <li><a name="a138"></a> <a href="http://www.php.net/array_unshift">array_unshift</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">tokens</span><span class="src-sym">, </span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineCOMMENT">COMMENT</a></span><span class="src-sym">, </span><span class="src-str">' CSSTidy ' </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">version </span>. <span class="src-str">': ' </span>. <a href="http://www.php.net/date">date</a><span class="src-sym">(</span><span class="src-str">'r'</span><span class="src-sym">) </span>. <span class="src-str">' '</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
178
- <li><a name="a139"></a> <span class="src-sym">}</span></li>
179
- <li><a name="a140"></a> </li>
180
- <li><a name="a141"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">charset</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
181
- <li><a name="a142"></a> <span class="src-var">$output </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-str">'@charset '</span>.<span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">5</span><span class="src-sym">]</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">charset</span>.<span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">6</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
182
- <li><a name="a143"></a> <span class="src-sym">}</span></li>
183
- <li><a name="a144"></a> </li>
184
- <li><a name="a145"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">import</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
185
- <li><a name="a146"></a> <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">, </span><span class="src-var">$size </span>= <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">import</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <span class="src-var">$size</span><span class="src-sym">; </span><span class="src-var">$i </span>++<span class="src-sym">) </span><span class="src-sym">{</span></li>
186
- <li><a name="a147"></a> <span class="src-var">$output </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-str">'@import '</span>.<span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">5</span><span class="src-sym">]</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">import</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">6</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
187
- <li><a name="a148"></a> <span class="src-sym">}</span></li>
188
- <li><a name="a149"></a> <span class="src-sym">}</span></li>
189
- <li><a name="a150"></a> </li>
190
- <li><a name="a151"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-key">empty</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">namespace</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
191
- <li><a name="a152"></a> <span class="src-var">$output </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-str">'@namespace '</span>.<span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">5</span><span class="src-sym">]</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">namespace</span>.<span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">6</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
192
- <li><a name="a153"></a> <span class="src-sym">}</span></li>
193
- <li><a name="a154"></a> </li>
194
- <li><a name="a155"></a> <span class="src-var">$output </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">13</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
195
- <li><a name="a156"></a> <span class="src-var">$in_at_out </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
196
- <li><a name="a157"></a> <span class="src-var">$out </span>=<span class="src-sym">&amp; </span><span class="src-var">$output</span><span class="src-sym">;</span></li>
197
- <li><a name="a158"></a> </li>
198
- <li><a name="a159"></a> <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">tokens </span><span class="src-key">as </span><span class="src-var">$key </span>=&gt; <span class="src-var">$token</span><span class="src-sym">)</span></li>
199
- <li><a name="a160"></a> <span class="src-sym">{</span></li>
200
- <li><a name="a161"></a> <span class="src-key">switch </span><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">)</span></li>
201
- <li><a name="a162"></a> <span class="src-sym">{</span></li>
202
- <li><a name="a163"></a> <span class="src-key">case </span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineAT_START">AT_START</a></span>:</li>
203
- <li><a name="a164"></a> <span class="src-var">$out </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_htmlsp">_htmlsp</a><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">, </span><span class="src-var">$plain</span><span class="src-sym">)</span>.<span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
204
- <li><a name="a165"></a> <span class="src-var">$out </span>=<span class="src-sym">&amp; </span><span class="src-var">$in_at_out</span><span class="src-sym">;</span></li>
205
- <li><a name="a166"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
206
- <li><a name="a167"></a> </li>
207
- <li><a name="a168"></a> <span class="src-key">case </span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineSEL_START">SEL_START</a></span>:</li>
208
- <li><a name="a169"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'lowercase_s'</span><span class="src-sym">)) </span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">] </span>= <a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
209
- <li><a name="a170"></a> <span class="src-var">$out </span>.= <span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">{</span><span class="src-num">0</span><span class="src-sym">} </span>!== <span class="src-str">'@'</span><span class="src-sym">) </span>? <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_htmlsp">_htmlsp</a><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">, </span><span class="src-var">$plain</span><span class="src-sym">) </span>: <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_htmlsp">_htmlsp</a><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">, </span><span class="src-var">$plain</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
210
- <li><a name="a171"></a> <span class="src-var">$out </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">3</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
211
- <li><a name="a172"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
212
- <li><a name="a173"></a> </li>
213
- <li><a name="a174"></a> <span class="src-key">case </span><span class="src-id"><a href="../csstidy/_data_inc_php.html#definePROPERTY">PROPERTY</a></span>:</li>
214
- <li><a name="a175"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'case_properties'</span><span class="src-sym">) </span>== <span class="src-num">2</span><span class="src-sym">) </span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">] </span>= <a href="http://www.php.net/strtoupper">strtoupper</a><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
215
- <li><a name="a176"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'case_properties'</span><span class="src-sym">) </span>== <span class="src-num">1</span><span class="src-sym">) </span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">] </span>= <a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
216
- <li><a name="a177"></a> <span class="src-var">$out </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">4</span><span class="src-sym">] </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_htmlsp">_htmlsp</a><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">, </span><span class="src-var">$plain</span><span class="src-sym">) </span>. <span class="src-str">':' </span>. <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">5</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
217
- <li><a name="a178"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
218
- <li><a name="a179"></a> </li>
219
- <li><a name="a180"></a> <span class="src-key">case </span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineVALUE">VALUE</a></span>:</li>
220
- <li><a name="a181"></a> <span class="src-var">$out </span>.= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_htmlsp">_htmlsp</a><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">, </span><span class="src-var">$plain</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
221
- <li><a name="a182"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_seeknocomment">_seeknocomment</a><span class="src-sym">(</span><span class="src-var">$key</span><span class="src-sym">, </span><span class="src-num">1</span><span class="src-sym">) </span>== <span class="src-id"><a href="../csstidy/_data_inc_php.html#defineSEL_END">SEL_END</a> </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'remove_last_;'</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
222
- <li><a name="a183"></a> <span class="src-var">$out </span>.= <a href="http://www.php.net/str_replace">str_replace</a><span class="src-sym">(</span><span class="src-str">';'</span><span class="src-sym">, </span><span class="src-str">''</span><span class="src-sym">, </span><span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">6</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
223
- <li><a name="a184"></a> <span class="src-sym">} </span><span class="src-key">else </span><span class="src-sym">{</span></li>
224
- <li><a name="a185"></a> <span class="src-var">$out </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">6</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
225
- <li><a name="a186"></a> <span class="src-sym">}</span></li>
226
- <li><a name="a187"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
227
- <li><a name="a188"></a> </li>
228
- <li><a name="a189"></a> <span class="src-key">case </span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineSEL_END">SEL_END</a></span>:</li>
229
- <li><a name="a190"></a> <span class="src-var">$out </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">7</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
230
- <li><a name="a191"></a> <span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_seeknocomment">_seeknocomment</a><span class="src-sym">(</span><span class="src-var">$key</span><span class="src-sym">, </span><span class="src-num">1</span><span class="src-sym">) </span>!= <span class="src-id"><a href="../csstidy/_data_inc_php.html#defineAT_END">AT_END</a></span><span class="src-sym">) </span><span class="src-var">$out </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">8</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
231
- <li><a name="a192"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
232
- <li><a name="a193"></a> </li>
233
- <li><a name="a194"></a> <span class="src-key">case </span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineAT_END">AT_END</a></span>:</li>
234
- <li><a name="a195"></a> <span class="src-var">$out </span>=<span class="src-sym">&amp; </span><span class="src-var">$output</span><span class="src-sym">;</span></li>
235
- <li><a name="a196"></a> <span class="src-var">$out </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">10</span><span class="src-sym">] </span>. <a href="http://www.php.net/str_replace">str_replace</a><span class="src-sym">(</span><span class="src-str">&quot;\n&quot;</span><span class="src-sym">, </span><span class="src-str">&quot;\n&quot; </span>. <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">10</span><span class="src-sym">]</span><span class="src-sym">, </span><span class="src-var">$in_at_out</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
236
- <li><a name="a197"></a> <span class="src-var">$in_at_out </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
237
- <li><a name="a198"></a> <span class="src-var">$out </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">9</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
238
- <li><a name="a199"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
239
- <li><a name="a200"></a>&nbsp;</li>
240
- <li><a name="a201"></a> <span class="src-key">case </span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineCOMMENT">COMMENT</a></span>:</li>
241
- <li><a name="a202"></a> <span class="src-var">$out </span>.= <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">11</span><span class="src-sym">] </span>. <span class="src-str">'/*' </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_htmlsp">_htmlsp</a><span class="src-sym">(</span><span class="src-var">$token</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">, </span><span class="src-var">$plain</span><span class="src-sym">) </span>. <span class="src-str">'*/' </span>. <span class="src-var">$template</span><span class="src-sym">[</span><span class="src-num">12</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
242
- <li><a name="a203"></a> <span class="src-key">break</span><span class="src-sym">;</span></li>
243
- <li><a name="a204"></a> <span class="src-sym">}</span></li>
244
- <li><a name="a205"></a> <span class="src-sym">}</span></li>
245
- <li><a name="a206"></a>&nbsp;</li>
246
- <li><a name="a207"></a> <span class="src-var">$output </span>= <a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$output</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
247
- <li><a name="a208"></a> </li>
248
- <li><a name="a209"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$plain</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
249
- <li><a name="a210"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css">output_css</a> = <span class="src-var">$output</span><span class="src-sym">;</span></li>
250
- <li><a name="a211"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#method_print">_print</a><span class="src-sym">(</span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
251
- <li><a name="a212"></a> <span class="src-sym">} </span><span class="src-key">else </span><span class="src-sym">{</span></li>
252
- <li><a name="a213"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css_plain">output_css_plain</a> = <span class="src-var">$output</span><span class="src-sym">;</span></li>
253
- <li><a name="a214"></a> <span class="src-sym">}</span></li>
254
- <li><a name="a215"></a> <span class="src-sym">}</span></li>
255
- <li><a name="a216"></a> </li>
256
- <li><a name="a217"></a> <span class="src-doc">/**</span></li>
257
- <li><a name="a218"></a><span class="src-doc"> * Gets the next token type which is $move away from $key, excluding comments</span></li>
258
- <li><a name="a219"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">integer </span><span class="src-doc-var">$key </span><span class="src-doc">current position</span></li>
259
- <li><a name="a220"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">integer </span><span class="src-doc-var">$move </span><span class="src-doc">move this far</span></li>
260
- <li><a name="a221"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">mixed </span><span class="src-doc">a token type</span></li>
261
- <li><a name="a222"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
262
- <li><a name="a223"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
263
- <li><a name="a224"></a><span class="src-doc"> */</span></li>
264
- <li><a name="a225"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#method_seeknocomment">_seeknocomment</a><span class="src-sym">(</span><span class="src-var">$key</span><span class="src-sym">, </span><span class="src-var">$move</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
265
- <li><a name="a226"></a> <span class="src-var">$go </span>= <span class="src-sym">(</span><span class="src-var">$move </span>&gt; <span class="src-num">0</span><span class="src-sym">) </span>? <span class="src-num">1 </span>: -<span class="src-num">1</span><span class="src-sym">;</span></li>
266
- <li><a name="a227"></a> <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-var">$key </span>+ <span class="src-num">1</span><span class="src-sym">; </span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$key</span>-<span class="src-var">$i</span><span class="src-sym">)</span>-<span class="src-num">1 </span>&lt; <a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$move</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$i </span>+= <span class="src-var">$go</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
267
- <li><a name="a228"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">tokens</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)) </span><span class="src-sym">{</span></li>
268
- <li><a name="a229"></a> <span class="src-key">return</span><span class="src-sym">;</span></li>
269
- <li><a name="a230"></a> <span class="src-sym">}</span></li>
270
- <li><a name="a231"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">tokens</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span>== <span class="src-id"><a href="../csstidy/_data_inc_php.html#defineCOMMENT">COMMENT</a></span><span class="src-sym">) </span><span class="src-sym">{</span></li>
271
- <li><a name="a232"></a> <span class="src-var">$move </span>+= <span class="src-num">1</span><span class="src-sym">;</span></li>
272
- <li><a name="a233"></a> <span class="src-key">continue</span><span class="src-sym">;</span></li>
273
- <li><a name="a234"></a> <span class="src-sym">}</span></li>
274
- <li><a name="a235"></a> <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">tokens</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
275
- <li><a name="a236"></a> <span class="src-sym">}</span></li>
276
- <li><a name="a237"></a> <span class="src-sym">}</span></li>
277
- <li><a name="a238"></a> </li>
278
- <li><a name="a239"></a> <span class="src-doc">/**</span></li>
279
- <li><a name="a240"></a><span class="src-doc"> * Converts $this-&gt;css array to a raw array ($this-&gt;tokens)</span></li>
280
- <li><a name="a241"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
281
- <li><a name="a242"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
282
- <li><a name="a243"></a><span class="src-doc"> */</span></li>
283
- <li><a name="a244"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#method_convert_raw_css">_convert_raw_css</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
284
- <li><a name="a245"></a> <span class="src-sym">{</span></li>
285
- <li><a name="a246"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">tokens </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
286
- <li><a name="a247"></a> <a href="http://www.php.net/ksort">ksort</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
287
- <li><a name="a248"></a> </li>
288
- <li><a name="a249"></a> <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">css </span><span class="src-key">as </span><span class="src-var">$medium </span>=&gt; <span class="src-var">$val</span><span class="src-sym">)</span></li>
289
- <li><a name="a250"></a> <span class="src-sym">{</span></li>
290
- <li><a name="a251"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'sort_selectors'</span><span class="src-sym">)) </span><a href="http://www.php.net/ksort">ksort</a><span class="src-sym">(</span><span class="src-var">$val</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
291
- <li><a name="a252"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$medium </span>!= <span class="src-id"><a href="../csstidy/_data_inc_php.html#defineDEFAULT_AT">DEFAULT_AT</a></span><span class="src-sym">) </span><span class="src-sym">{</span></li>
292
- <li><a name="a253"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">_add_token</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineAT_START">AT_START</a></span><span class="src-sym">, </span><span class="src-var">$medium</span><span class="src-sym">, </span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
293
- <li><a name="a254"></a> <span class="src-sym">}</span></li>
294
- <li><a name="a255"></a> </li>
295
- <li><a name="a256"></a> <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$val </span><span class="src-key">as </span><span class="src-var">$selector </span>=&gt; <span class="src-var">$vali</span><span class="src-sym">)</span></li>
296
- <li><a name="a257"></a> <span class="src-sym">{</span></li>
297
- <li><a name="a258"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">get_cfg</span><span class="src-sym">(</span><span class="src-str">'sort_properties'</span><span class="src-sym">)) </span><a href="http://www.php.net/ksort">ksort</a><span class="src-sym">(</span><span class="src-var">$vali</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
298
- <li><a name="a259"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">_add_token</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineSEL_START">SEL_START</a></span><span class="src-sym">, </span><span class="src-var">$selector</span><span class="src-sym">, </span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
299
- <li><a name="a260"></a> </li>
300
- <li><a name="a261"></a> <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$vali </span><span class="src-key">as </span><span class="src-var">$property </span>=&gt; <span class="src-var">$valj</span><span class="src-sym">)</span></li>
301
- <li><a name="a262"></a> <span class="src-sym">{</span></li>
302
- <li><a name="a263"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">_add_token</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#definePROPERTY">PROPERTY</a></span><span class="src-sym">, </span><span class="src-var">$property</span><span class="src-sym">, </span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
303
- <li><a name="a264"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">_add_token</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineVALUE">VALUE</a></span><span class="src-sym">, </span><span class="src-var">$valj</span><span class="src-sym">, </span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
304
- <li><a name="a265"></a> <span class="src-sym">}</span></li>
305
- <li><a name="a266"></a> </li>
306
- <li><a name="a267"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">_add_token</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineSEL_END">SEL_END</a></span><span class="src-sym">, </span><span class="src-var">$selector</span><span class="src-sym">, </span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
307
- <li><a name="a268"></a> <span class="src-sym">}</span></li>
308
- <li><a name="a269"></a> </li>
309
- <li><a name="a270"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$medium </span>!= <span class="src-id"><a href="../csstidy/_data_inc_php.html#defineDEFAULT_AT">DEFAULT_AT</a></span><span class="src-sym">) </span><span class="src-sym">{</span></li>
310
- <li><a name="a271"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">parser</span><span class="src-sym">-&gt;</span><span class="src-id">_add_token</span><span class="src-sym">(</span><span class="src-id"><a href="../csstidy/_data_inc_php.html#defineAT_END">AT_END</a></span><span class="src-sym">, </span><span class="src-var">$medium</span><span class="src-sym">, </span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
311
- <li><a name="a272"></a> <span class="src-sym">}</span></li>
312
- <li><a name="a273"></a> <span class="src-sym">}</span></li>
313
- <li><a name="a274"></a> <span class="src-sym">}</span></li>
314
- <li><a name="a275"></a> </li>
315
- <li><a name="a276"></a> <span class="src-doc">/**</span></li>
316
- <li><a name="a277"></a><span class="src-doc"> * Same as htmlspecialchars, only that chars are not replaced if $plain !== true. This makes print_code() cleaner.</span></li>
317
- <li><a name="a278"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$string </span></li>
318
- <li><a name="a279"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">bool </span><span class="src-doc-var">$plain </span></li>
319
- <li><a name="a280"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
320
- <li><a name="a281"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> csstidy_print::_print()</span></li>
321
- <li><a name="a282"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
322
- <li><a name="a283"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
323
- <li><a name="a284"></a><span class="src-doc"> */</span></li>
324
- <li><a name="a285"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#method_htmlsp">_htmlsp</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">, </span><span class="src-var">$plain</span><span class="src-sym">)</span></li>
325
- <li><a name="a286"></a> <span class="src-sym">{</span></li>
326
- <li><a name="a287"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$plain</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
327
- <li><a name="a288"></a> <span class="src-key">return </span><a href="http://www.php.net/htmlspecialchars">htmlspecialchars</a><span class="src-sym">(</span><span class="src-var">$string</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
328
- <li><a name="a289"></a> <span class="src-sym">}</span></li>
329
- <li><a name="a290"></a> <span class="src-key">return </span><span class="src-var">$string</span><span class="src-sym">;</span></li>
330
- <li><a name="a291"></a> <span class="src-sym">}</span></li>
331
- <li><a name="a292"></a> </li>
332
- <li><a name="a293"></a> <span class="src-doc">/**</span></li>
333
- <li><a name="a294"></a><span class="src-doc"> * Get compression ratio</span></li>
334
- <li><a name="a295"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
335
- <li><a name="a296"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">float </span></li>
336
- <li><a name="a297"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
337
- <li><a name="a298"></a><span class="src-doc"> */</span></li>
338
- <li><a name="a299"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#methodget_ratio">get_ratio</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
339
- <li><a name="a300"></a> <span class="src-sym">{</span></li>
340
- <li><a name="a301"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css_plain">output_css_plain</a><span class="src-sym">) </span><span class="src-sym">{</span></li>
341
- <li><a name="a302"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#methodformatted">formatted</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
342
- <li><a name="a303"></a> <span class="src-sym">}</span></li>
343
- <li><a name="a304"></a> <span class="src-key">return </span><a href="http://www.php.net/round">round</a><span class="src-sym">((</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$input_css">input_css</a><span class="src-sym">) </span>- <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css_plain">output_css_plain</a><span class="src-sym">)) </span>/ <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$input_css">input_css</a><span class="src-sym">)</span><span class="src-sym">, </span><span class="src-num">3</span><span class="src-sym">) </span>* <span class="src-num">100</span><span class="src-sym">;</span></li>
344
- <li><a name="a305"></a> <span class="src-sym">}</span></li>
345
- <li><a name="a306"></a>&nbsp;</li>
346
- <li><a name="a307"></a> <span class="src-doc">/**</span></li>
347
- <li><a name="a308"></a><span class="src-doc"> * Get difference between the old and new code in bytes and prints the code if necessary.</span></li>
348
- <li><a name="a309"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
349
- <li><a name="a310"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
350
- <li><a name="a311"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.1</span></li>
351
- <li><a name="a312"></a><span class="src-doc"> */</span></li>
352
- <li><a name="a313"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#methodget_diff">get_diff</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
353
- <li><a name="a314"></a> <span class="src-sym">{</span></li>
354
- <li><a name="a315"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css_plain">output_css_plain</a><span class="src-sym">) </span><span class="src-sym">{</span></li>
355
- <li><a name="a316"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#methodformatted">formatted</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
356
- <li><a name="a317"></a> <span class="src-sym">}</span></li>
357
- <li><a name="a318"></a> </li>
358
- <li><a name="a319"></a> <span class="src-var">$diff </span>= <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css_plain">output_css_plain</a><span class="src-sym">) </span>- <a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$input_css">input_css</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
359
- <li><a name="a320"></a> </li>
360
- <li><a name="a321"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$diff </span>&gt; <span class="src-num">0</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
361
- <li><a name="a322"></a> <span class="src-key">return </span><span class="src-str">'+' </span>. <span class="src-var">$diff</span><span class="src-sym">;</span></li>
362
- <li><a name="a323"></a> <span class="src-sym">} </span><span class="src-key">elseif </span><span class="src-sym">(</span><span class="src-var">$diff </span>== <span class="src-num">0</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
363
- <li><a name="a324"></a> <span class="src-key">return </span><span class="src-str">'+-' </span>. <span class="src-var">$diff</span><span class="src-sym">;</span></li>
364
- <li><a name="a325"></a> <span class="src-sym">}</span></li>
365
- <li><a name="a326"></a> </li>
366
- <li><a name="a327"></a> <span class="src-key">return </span><span class="src-var">$diff</span><span class="src-sym">;</span></li>
367
- <li><a name="a328"></a> <span class="src-sym">}</span></li>
368
- <li><a name="a329"></a>&nbsp;</li>
369
- <li><a name="a330"></a> <span class="src-doc">/**</span></li>
370
- <li><a name="a331"></a><span class="src-doc"> * Get the size of either input or output CSS in KB</span></li>
371
- <li><a name="a332"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$loc </span><span class="src-doc">default is &quot;output&quot;</span></li>
372
- <li><a name="a333"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> public</span></li>
373
- <li><a name="a334"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">integer </span></li>
374
- <li><a name="a335"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
375
- <li><a name="a336"></a><span class="src-doc"> */</span></li>
376
- <li><a name="a337"></a> <span class="src-key">function </span><a href="../csstidy/csstidy_print.html#methodsize">size</a><span class="src-sym">(</span><span class="src-var">$loc </span>= <span class="src-str">'output'</span><span class="src-sym">)</span></li>
377
- <li><a name="a338"></a> <span class="src-sym">{</span></li>
378
- <li><a name="a339"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$loc </span>== <span class="src-str">'output' </span>&amp;&amp; <span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css">output_css</a><span class="src-sym">) </span><span class="src-sym">{</span></li>
379
- <li><a name="a340"></a> <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#methodformatted">formatted</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
380
- <li><a name="a341"></a> <span class="src-sym">}</span></li>
381
- <li><a name="a342"></a> </li>
382
- <li><a name="a343"></a> <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$loc </span>== <span class="src-str">'input'</span><span class="src-sym">) </span><span class="src-sym">{</span></li>
383
- <li><a name="a344"></a> <span class="src-key">return </span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$input_css">input_css</a><span class="src-sym">) </span>/ <span class="src-num">1000</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
384
- <li><a name="a345"></a> <span class="src-sym">} </span><span class="src-key">else </span><span class="src-sym">{</span></li>
385
- <li><a name="a346"></a> <span class="src-key">return </span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../csstidy/csstidy_print.html#var$output_css_plain">output_css_plain</a><span class="src-sym">) </span>/ <span class="src-num">1000</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
386
- <li><a name="a347"></a> <span class="src-sym">}</span></li>
387
- <li><a name="a348"></a> <span class="src-sym">}</span></li>
388
- <li><a name="a349"></a><span class="src-sym">}</span></li>
389
- <li><a name="a350"></a><span class="src-php">?&gt;</span></li>
390
- </ol></pre></div>
391
- </div>
392
- <div class="credit">
393
- <hr />
394
- Documentation generated on Mon, 15 May 2006 22:55:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
395
- </div>
396
- </td></tr></table>
397
- </td>
398
- </tr>
399
- </table>
400
-
401
- </body>
402
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/__filesource/fsource_csstidy__data.inc.php.html DELETED
@@ -1,521 +0,0 @@
1
- <html>
2
- <head>
3
- <title>File Source for data.inc.php</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
-
33
- </td>
34
- <td>
35
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
36
-
37
- <h1 align="center">Source for file data.inc.php</h1>
38
- <p>Documentation is available at <a href="../csstidy/_data_inc_php.html">data.inc.php</a></p>
39
- <div class="php">
40
- <div class="listing"><pre><ol><li><a name="a1"></a><span class="src-php">&lt;?php</span></li>
41
- <li><a name="a2"></a><span class="src-doc">/**</span></li>
42
- <li><a name="a3"></a><span class="src-doc"> * Various CSS Data for CSSTidy</span></li>
43
- <li><a name="a4"></a><span class="src-doc"> *</span></li>
44
- <li><a name="a5"></a><span class="src-doc"> * This file is part of CSSTidy.</span></li>
45
- <li><a name="a6"></a><span class="src-doc"> *</span></li>
46
- <li><a name="a7"></a><span class="src-doc"> * CSSTidy is free software; you can redistribute it and/or modify</span></li>
47
- <li><a name="a8"></a><span class="src-doc"> * it under the terms of the GNU General Public License as published by</span></li>
48
- <li><a name="a9"></a><span class="src-doc"> * the Free Software Foundation; either version 2 of the License, or</span></li>
49
- <li><a name="a10"></a><span class="src-doc"> * (at your option) any later version.</span></li>
50
- <li><a name="a11"></a><span class="src-doc"> *</span></li>
51
- <li><a name="a12"></a><span class="src-doc"> * CSSTidy is distributed in the hope that it will be useful,</span></li>
52
- <li><a name="a13"></a><span class="src-doc"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></li>
53
- <li><a name="a14"></a><span class="src-doc"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></li>
54
- <li><a name="a15"></a><span class="src-doc"> * GNU General Public License for more details.</span></li>
55
- <li><a name="a16"></a><span class="src-doc"> *</span></li>
56
- <li><a name="a17"></a><span class="src-doc"> * You should have received a copy of the GNU General Public License</span></li>
57
- <li><a name="a18"></a><span class="src-doc"> * along with CSSTidy; if not, write to the Free Software</span></li>
58
- <li><a name="a19"></a><span class="src-doc"> * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</span></li>
59
- <li><a name="a20"></a><span class="src-doc"> * </span></li>
60
- <li><a name="a21"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@license</span><span class="src-doc"> http://opensource.org/licenses/gpl-license.php GNU Public License</span></li>
61
- <li><a name="a22"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> csstidy</span></li>
62
- <li><a name="a23"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@author</span><span class="src-doc"> Florian Schmitz (floele at gmail dot com) 2005</span></li>
63
- <li><a name="a24"></a><span class="src-doc"> */</span></li>
64
- <li><a name="a25"></a>&nbsp;</li>
65
- <li><a name="a26"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'AT_START'</span><span class="src-sym">, </span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
66
- <li><a name="a27"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'AT_END'</span><span class="src-sym">, </span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
67
- <li><a name="a28"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'SEL_START'</span><span class="src-sym">, </span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
68
- <li><a name="a29"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'SEL_END'</span><span class="src-sym">, </span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
69
- <li><a name="a30"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'PROPERTY'</span><span class="src-sym">, </span><span class="src-num">5</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
70
- <li><a name="a31"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'VALUE'</span><span class="src-sym">, </span><span class="src-num">6</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
71
- <li><a name="a32"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'COMMENT'</span><span class="src-sym">, </span><span class="src-num">7</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
72
- <li><a name="a33"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'DEFAULT_AT'</span><span class="src-sym">, </span><span class="src-num">41</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
73
- <li><a name="a34"></a>&nbsp;</li>
74
- <li><a name="a35"></a><span class="src-doc">/**</span></li>
75
- <li><a name="a36"></a><span class="src-doc"> * All whitespace allowed in CSS</span></li>
76
- <li><a name="a37"></a><span class="src-doc"> *</span></li>
77
- <li><a name="a38"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['whitespace'] </span></li>
78
- <li><a name="a39"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
79
- <li><a name="a40"></a><span class="src-doc"> */</span></li>
80
- <li><a name="a41"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'whitespace'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">' '</span><span class="src-sym">,</span><span class="src-str">&quot;\n&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;\t&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;\r&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;\x0B&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
81
- <li><a name="a42"></a>&nbsp;</li>
82
- <li><a name="a43"></a><span class="src-doc">/**</span></li>
83
- <li><a name="a44"></a><span class="src-doc"> * All CSS tokens used by csstidy</span></li>
84
- <li><a name="a45"></a><span class="src-doc"> *</span></li>
85
- <li><a name="a46"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">string </span><span class="src-doc-var">$GLOBALS['csstidy']['tokens'] </span></li>
86
- <li><a name="a47"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
87
- <li><a name="a48"></a><span class="src-doc"> */</span></li>
88
- <li><a name="a49"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'tokens'</span><span class="src-sym">] </span>= <span class="src-str">'/@}{;:=\'&quot;(,\\!$%&amp;)*+.&lt;&gt;?[]^`|~'</span><span class="src-sym">;</span></li>
89
- <li><a name="a50"></a>&nbsp;</li>
90
- <li><a name="a51"></a><span class="src-doc">/**</span></li>
91
- <li><a name="a52"></a><span class="src-doc"> * All CSS units (CSS 3 units included)</span></li>
92
- <li><a name="a53"></a><span class="src-doc"> *</span></li>
93
- <li><a name="a54"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> compress_numbers()</span></li>
94
- <li><a name="a55"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['units'] </span></li>
95
- <li><a name="a56"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
96
- <li><a name="a57"></a><span class="src-doc"> */</span></li>
97
- <li><a name="a58"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'units'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'in'</span><span class="src-sym">,</span><span class="src-str">'cm'</span><span class="src-sym">,</span><span class="src-str">'mm'</span><span class="src-sym">,</span><span class="src-str">'pt'</span><span class="src-sym">,</span><span class="src-str">'pc'</span><span class="src-sym">,</span><span class="src-str">'px'</span><span class="src-sym">,</span><span class="src-str">'rem'</span><span class="src-sym">,</span><span class="src-str">'em'</span><span class="src-sym">,</span><span class="src-str">'%'</span><span class="src-sym">,</span><span class="src-str">'ex'</span><span class="src-sym">,</span><span class="src-str">'gd'</span><span class="src-sym">,</span><span class="src-str">'vw'</span><span class="src-sym">,</span><span class="src-str">'vh'</span><span class="src-sym">,</span><span class="src-str">'vm'</span><span class="src-sym">,</span><span class="src-str">'deg'</span><span class="src-sym">,</span><span class="src-str">'grad'</span><span class="src-sym">,</span><span class="src-str">'rad'</span><span class="src-sym">,</span><span class="src-str">'ms'</span><span class="src-sym">,</span><span class="src-str">'s'</span><span class="src-sym">,</span><span class="src-str">'khz'</span><span class="src-sym">,</span><span class="src-str">'hz'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
98
- <li><a name="a59"></a>&nbsp;</li>
99
- <li><a name="a60"></a><span class="src-doc">/**</span></li>
100
- <li><a name="a61"></a><span class="src-doc"> * Available at-rules</span></li>
101
- <li><a name="a62"></a><span class="src-doc"> *</span></li>
102
- <li><a name="a63"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['at_rules'] </span></li>
103
- <li><a name="a64"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
104
- <li><a name="a65"></a><span class="src-doc"> */</span></li>
105
- <li><a name="a66"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'at_rules'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'page' </span>=&gt; <span class="src-str">'is'</span><span class="src-sym">,</span><span class="src-str">'font-face' </span>=&gt; <span class="src-str">'is'</span><span class="src-sym">,</span><span class="src-str">'charset' </span>=&gt; <span class="src-str">'iv'</span><span class="src-sym">, </span><span class="src-str">'import' </span>=&gt; <span class="src-str">'iv'</span><span class="src-sym">,</span><span class="src-str">'namespace' </span>=&gt; <span class="src-str">'iv'</span><span class="src-sym">,</span><span class="src-str">'media' </span>=&gt; <span class="src-str">'at'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
106
- <li><a name="a67"></a>&nbsp;</li>
107
- <li><a name="a68"></a> <span class="src-doc">/**</span></li>
108
- <li><a name="a69"></a><span class="src-doc"> * Properties that allow &lt;number&gt; as value</span></li>
109
- <li><a name="a70"></a><span class="src-doc"> *</span></li>
110
- <li><a name="a71"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@todo</span><span class="src-doc"> CSS3 properties</span></li>
111
- <li><a name="a72"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> compress_numbers();</span></li>
112
- <li><a name="a73"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['number_values'] </span></li>
113
- <li><a name="a74"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.2</span></li>
114
- <li><a name="a75"></a><span class="src-doc"> */</span></li>
115
- <li><a name="a76"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'number_values'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'line-height'</span><span class="src-sym">,</span><span class="src-str">'pitch-range'</span><span class="src-sym">,</span><span class="src-str">'richness'</span><span class="src-sym">,</span><span class="src-str">'speech-rate'</span><span class="src-sym">,</span><span class="src-str">'stress'</span><span class="src-sym">,</span><span class="src-str">'volume'</span><span class="src-sym">,</span><span class="src-str">'font'</span><span class="src-sym">,</span><span class="src-str">'font-weight'</span><span class="src-sym">,</span><span class="src-str">'z-index'</span><span class="src-sym">,</span><span class="src-str">'counter-increment'</span><span class="src-sym">,</span><span class="src-str">'counter-reset'</span><span class="src-sym">,</span><span class="src-str">'orphans'</span><span class="src-sym">,</span><span class="src-str">'widows'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
116
- <li><a name="a77"></a>&nbsp;</li>
117
- <li><a name="a78"></a><span class="src-doc">/**</span></li>
118
- <li><a name="a79"></a><span class="src-doc"> * Properties that allow &lt;color&gt; as value</span></li>
119
- <li><a name="a80"></a><span class="src-doc"> *</span></li>
120
- <li><a name="a81"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@todo</span><span class="src-doc"> CSS3 properties</span></li>
121
- <li><a name="a82"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> compress_numbers();</span></li>
122
- <li><a name="a83"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['color_values'] </span></li>
123
- <li><a name="a84"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
124
- <li><a name="a85"></a><span class="src-doc"> */</span></li>
125
- <li><a name="a86"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
126
- <li><a name="a87"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'background-color'</span><span class="src-sym">;</span></li>
127
- <li><a name="a88"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'border-color'</span><span class="src-sym">;</span></li>
128
- <li><a name="a89"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'border-top-color'</span><span class="src-sym">;</span></li>
129
- <li><a name="a90"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'border-right-color'</span><span class="src-sym">;</span></li>
130
- <li><a name="a91"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'border-bottom-color'</span><span class="src-sym">;</span></li>
131
- <li><a name="a92"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'border-left-color'</span><span class="src-sym">;</span></li>
132
- <li><a name="a93"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'color'</span><span class="src-sym">;</span></li>
133
- <li><a name="a94"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color_values'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'outline-color'</span><span class="src-sym">;</span></li>
134
- <li><a name="a95"></a>&nbsp;</li>
135
- <li><a name="a96"></a>&nbsp;</li>
136
- <li><a name="a97"></a><span class="src-doc">/**</span></li>
137
- <li><a name="a98"></a><span class="src-doc"> * Default values for the background properties</span></li>
138
- <li><a name="a99"></a><span class="src-doc"> *</span></li>
139
- <li><a name="a100"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@todo</span><span class="src-doc"> Possibly property names will change during CSS3 development</span></li>
140
- <li><a name="a101"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['background_prop_default'] </span></li>
141
- <li><a name="a102"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> dissolve_short_bg()</span></li>
142
- <li><a name="a103"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> merge_bg()</span></li>
143
- <li><a name="a104"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
144
- <li><a name="a105"></a><span class="src-doc"> */</span></li>
145
- <li><a name="a106"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
146
- <li><a name="a107"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-image'</span><span class="src-sym">] </span>= <span class="src-str">'none'</span><span class="src-sym">;</span></li>
147
- <li><a name="a108"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-size'</span><span class="src-sym">] </span>= <span class="src-str">'auto'</span><span class="src-sym">;</span></li>
148
- <li><a name="a109"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-repeat'</span><span class="src-sym">] </span>= <span class="src-str">'repeat'</span><span class="src-sym">;</span></li>
149
- <li><a name="a110"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-position'</span><span class="src-sym">] </span>= <span class="src-str">'0 0'</span><span class="src-sym">;</span></li>
150
- <li><a name="a111"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-attachment'</span><span class="src-sym">] </span>= <span class="src-str">'scroll'</span><span class="src-sym">;</span></li>
151
- <li><a name="a112"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-clip'</span><span class="src-sym">] </span>= <span class="src-str">'border'</span><span class="src-sym">;</span></li>
152
- <li><a name="a113"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-origin'</span><span class="src-sym">] </span>= <span class="src-str">'padding'</span><span class="src-sym">;</span></li>
153
- <li><a name="a114"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background_prop_default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-color'</span><span class="src-sym">] </span>= <span class="src-str">'transparent'</span><span class="src-sym">;</span></li>
154
- <li><a name="a115"></a>&nbsp;</li>
155
- <li><a name="a116"></a><span class="src-doc">/**</span></li>
156
- <li><a name="a117"></a><span class="src-doc"> * A list of non-W3C color names which get replaced by their hex-codes</span></li>
157
- <li><a name="a118"></a><span class="src-doc"> *</span></li>
158
- <li><a name="a119"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['replace_colors'] </span></li>
159
- <li><a name="a120"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> cut_color()</span></li>
160
- <li><a name="a121"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
161
- <li><a name="a122"></a><span class="src-doc"> */</span></li>
162
- <li><a name="a123"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
163
- <li><a name="a124"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'aliceblue'</span><span class="src-sym">] </span>= <span class="src-str">'#F0F8FF'</span><span class="src-sym">;</span></li>
164
- <li><a name="a125"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'antiquewhite'</span><span class="src-sym">] </span>= <span class="src-str">'#FAEBD7'</span><span class="src-sym">;</span></li>
165
- <li><a name="a126"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'aquamarine'</span><span class="src-sym">] </span>= <span class="src-str">'#7FFFD4'</span><span class="src-sym">;</span></li>
166
- <li><a name="a127"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'azure'</span><span class="src-sym">] </span>= <span class="src-str">'#F0FFFF'</span><span class="src-sym">;</span></li>
167
- <li><a name="a128"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'beige'</span><span class="src-sym">] </span>= <span class="src-str">'#F5F5DC'</span><span class="src-sym">;</span></li>
168
- <li><a name="a129"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'bisque'</span><span class="src-sym">] </span>= <span class="src-str">'#FFE4C4'</span><span class="src-sym">;</span></li>
169
- <li><a name="a130"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'blanchedalmond'</span><span class="src-sym">] </span>= <span class="src-str">'#FFEBCD'</span><span class="src-sym">;</span></li>
170
- <li><a name="a131"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'blueviolet'</span><span class="src-sym">] </span>= <span class="src-str">'#8A2BE2'</span><span class="src-sym">;</span></li>
171
- <li><a name="a132"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'brown'</span><span class="src-sym">] </span>= <span class="src-str">'#A52A2A'</span><span class="src-sym">;</span></li>
172
- <li><a name="a133"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'burlywood'</span><span class="src-sym">] </span>= <span class="src-str">'#DEB887'</span><span class="src-sym">;</span></li>
173
- <li><a name="a134"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'cadetblue'</span><span class="src-sym">] </span>= <span class="src-str">'#5F9EA0'</span><span class="src-sym">;</span></li>
174
- <li><a name="a135"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'chartreuse'</span><span class="src-sym">] </span>= <span class="src-str">'#7FFF00'</span><span class="src-sym">;</span></li>
175
- <li><a name="a136"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'chocolate'</span><span class="src-sym">] </span>= <span class="src-str">'#D2691E'</span><span class="src-sym">;</span></li>
176
- <li><a name="a137"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'coral'</span><span class="src-sym">] </span>= <span class="src-str">'#FF7F50'</span><span class="src-sym">;</span></li>
177
- <li><a name="a138"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'cornflowerblue'</span><span class="src-sym">] </span>= <span class="src-str">'#6495ED'</span><span class="src-sym">;</span></li>
178
- <li><a name="a139"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'cornsilk'</span><span class="src-sym">] </span>= <span class="src-str">'#FFF8DC'</span><span class="src-sym">;</span></li>
179
- <li><a name="a140"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'crimson'</span><span class="src-sym">] </span>= <span class="src-str">'#DC143C'</span><span class="src-sym">;</span></li>
180
- <li><a name="a141"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'cyan'</span><span class="src-sym">] </span>= <span class="src-str">'#00FFFF'</span><span class="src-sym">;</span></li>
181
- <li><a name="a142"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkblue'</span><span class="src-sym">] </span>= <span class="src-str">'#00008B'</span><span class="src-sym">;</span></li>
182
- <li><a name="a143"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkcyan'</span><span class="src-sym">] </span>= <span class="src-str">'#008B8B'</span><span class="src-sym">;</span></li>
183
- <li><a name="a144"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkgoldenrod'</span><span class="src-sym">] </span>= <span class="src-str">'#B8860B'</span><span class="src-sym">;</span></li>
184
- <li><a name="a145"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkgray'</span><span class="src-sym">] </span>= <span class="src-str">'#A9A9A9'</span><span class="src-sym">;</span></li>
185
- <li><a name="a146"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkgreen'</span><span class="src-sym">] </span>= <span class="src-str">'#006400'</span><span class="src-sym">;</span></li>
186
- <li><a name="a147"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkkhaki'</span><span class="src-sym">] </span>= <span class="src-str">'#BDB76B'</span><span class="src-sym">;</span></li>
187
- <li><a name="a148"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkmagenta'</span><span class="src-sym">] </span>= <span class="src-str">'#8B008B'</span><span class="src-sym">;</span></li>
188
- <li><a name="a149"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkolivegreen'</span><span class="src-sym">] </span>= <span class="src-str">'#556B2F'</span><span class="src-sym">;</span></li>
189
- <li><a name="a150"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkorange'</span><span class="src-sym">] </span>= <span class="src-str">'#FF8C00'</span><span class="src-sym">;</span></li>
190
- <li><a name="a151"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkorchid'</span><span class="src-sym">] </span>= <span class="src-str">'#9932CC'</span><span class="src-sym">;</span></li>
191
- <li><a name="a152"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkred'</span><span class="src-sym">] </span>= <span class="src-str">'#8B0000'</span><span class="src-sym">;</span></li>
192
- <li><a name="a153"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darksalmon'</span><span class="src-sym">] </span>= <span class="src-str">'#E9967A'</span><span class="src-sym">;</span></li>
193
- <li><a name="a154"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkseagreen'</span><span class="src-sym">] </span>= <span class="src-str">'#8FBC8F'</span><span class="src-sym">;</span></li>
194
- <li><a name="a155"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkslateblue'</span><span class="src-sym">] </span>= <span class="src-str">'#483D8B'</span><span class="src-sym">;</span></li>
195
- <li><a name="a156"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkslategray'</span><span class="src-sym">] </span>= <span class="src-str">'#2F4F4F'</span><span class="src-sym">;</span></li>
196
- <li><a name="a157"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkturquoise'</span><span class="src-sym">] </span>= <span class="src-str">'#00CED1'</span><span class="src-sym">;</span></li>
197
- <li><a name="a158"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'darkviolet'</span><span class="src-sym">] </span>= <span class="src-str">'#9400D3'</span><span class="src-sym">;</span></li>
198
- <li><a name="a159"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'deeppink'</span><span class="src-sym">] </span>= <span class="src-str">'#FF1493'</span><span class="src-sym">;</span></li>
199
- <li><a name="a160"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'deepskyblue'</span><span class="src-sym">] </span>= <span class="src-str">'#00BFFF'</span><span class="src-sym">;</span></li>
200
- <li><a name="a161"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'dimgray'</span><span class="src-sym">] </span>= <span class="src-str">'#696969'</span><span class="src-sym">;</span></li>
201
- <li><a name="a162"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'dodgerblue'</span><span class="src-sym">] </span>= <span class="src-str">'#1E90FF'</span><span class="src-sym">;</span></li>
202
- <li><a name="a163"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'feldspar'</span><span class="src-sym">] </span>= <span class="src-str">'#D19275'</span><span class="src-sym">;</span></li>
203
- <li><a name="a164"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'firebrick'</span><span class="src-sym">] </span>= <span class="src-str">'#B22222'</span><span class="src-sym">;</span></li>
204
- <li><a name="a165"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'floralwhite'</span><span class="src-sym">] </span>= <span class="src-str">'#FFFAF0'</span><span class="src-sym">;</span></li>
205
- <li><a name="a166"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'forestgreen'</span><span class="src-sym">] </span>= <span class="src-str">'#228B22'</span><span class="src-sym">;</span></li>
206
- <li><a name="a167"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'gainsboro'</span><span class="src-sym">] </span>= <span class="src-str">'#DCDCDC'</span><span class="src-sym">;</span></li>
207
- <li><a name="a168"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'ghostwhite'</span><span class="src-sym">] </span>= <span class="src-str">'#F8F8FF'</span><span class="src-sym">;</span></li>
208
- <li><a name="a169"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'gold'</span><span class="src-sym">] </span>= <span class="src-str">'#FFD700'</span><span class="src-sym">;</span></li>
209
- <li><a name="a170"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'goldenrod'</span><span class="src-sym">] </span>= <span class="src-str">'#DAA520'</span><span class="src-sym">;</span></li>
210
- <li><a name="a171"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'greenyellow'</span><span class="src-sym">] </span>= <span class="src-str">'#ADFF2F'</span><span class="src-sym">;</span></li>
211
- <li><a name="a172"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'honeydew'</span><span class="src-sym">] </span>= <span class="src-str">'#F0FFF0'</span><span class="src-sym">;</span></li>
212
- <li><a name="a173"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'hotpink'</span><span class="src-sym">] </span>= <span class="src-str">'#FF69B4'</span><span class="src-sym">;</span></li>
213
- <li><a name="a174"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'indianred'</span><span class="src-sym">] </span>= <span class="src-str">'#CD5C5C'</span><span class="src-sym">;</span></li>
214
- <li><a name="a175"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'indigo'</span><span class="src-sym">] </span>= <span class="src-str">'#4B0082'</span><span class="src-sym">;</span></li>
215
- <li><a name="a176"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'ivory'</span><span class="src-sym">] </span>= <span class="src-str">'#FFFFF0'</span><span class="src-sym">;</span></li>
216
- <li><a name="a177"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'khaki'</span><span class="src-sym">] </span>= <span class="src-str">'#F0E68C'</span><span class="src-sym">;</span></li>
217
- <li><a name="a178"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lavender'</span><span class="src-sym">] </span>= <span class="src-str">'#E6E6FA'</span><span class="src-sym">;</span></li>
218
- <li><a name="a179"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lavenderblush'</span><span class="src-sym">] </span>= <span class="src-str">'#FFF0F5'</span><span class="src-sym">;</span></li>
219
- <li><a name="a180"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lawngreen'</span><span class="src-sym">] </span>= <span class="src-str">'#7CFC00'</span><span class="src-sym">;</span></li>
220
- <li><a name="a181"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lemonchiffon'</span><span class="src-sym">] </span>= <span class="src-str">'#FFFACD'</span><span class="src-sym">;</span></li>
221
- <li><a name="a182"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightblue'</span><span class="src-sym">] </span>= <span class="src-str">'#ADD8E6'</span><span class="src-sym">;</span></li>
222
- <li><a name="a183"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightcoral'</span><span class="src-sym">] </span>= <span class="src-str">'#F08080'</span><span class="src-sym">;</span></li>
223
- <li><a name="a184"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightcyan'</span><span class="src-sym">] </span>= <span class="src-str">'#E0FFFF'</span><span class="src-sym">;</span></li>
224
- <li><a name="a185"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightgoldenrodyellow'</span><span class="src-sym">] </span>= <span class="src-str">'#FAFAD2'</span><span class="src-sym">;</span></li>
225
- <li><a name="a186"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightgrey'</span><span class="src-sym">] </span>= <span class="src-str">'#D3D3D3'</span><span class="src-sym">;</span></li>
226
- <li><a name="a187"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightgreen'</span><span class="src-sym">] </span>= <span class="src-str">'#90EE90'</span><span class="src-sym">;</span></li>
227
- <li><a name="a188"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightpink'</span><span class="src-sym">] </span>= <span class="src-str">'#FFB6C1'</span><span class="src-sym">;</span></li>
228
- <li><a name="a189"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightsalmon'</span><span class="src-sym">] </span>= <span class="src-str">'#FFA07A'</span><span class="src-sym">;</span></li>
229
- <li><a name="a190"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightseagreen'</span><span class="src-sym">] </span>= <span class="src-str">'#20B2AA'</span><span class="src-sym">;</span></li>
230
- <li><a name="a191"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightskyblue'</span><span class="src-sym">] </span>= <span class="src-str">'#87CEFA'</span><span class="src-sym">;</span></li>
231
- <li><a name="a192"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightslateblue'</span><span class="src-sym">] </span>= <span class="src-str">'#8470FF'</span><span class="src-sym">;</span></li>
232
- <li><a name="a193"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightslategray'</span><span class="src-sym">] </span>= <span class="src-str">'#778899'</span><span class="src-sym">;</span></li>
233
- <li><a name="a194"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightsteelblue'</span><span class="src-sym">] </span>= <span class="src-str">'#B0C4DE'</span><span class="src-sym">;</span></li>
234
- <li><a name="a195"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'lightyellow'</span><span class="src-sym">] </span>= <span class="src-str">'#FFFFE0'</span><span class="src-sym">;</span></li>
235
- <li><a name="a196"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'limegreen'</span><span class="src-sym">] </span>= <span class="src-str">'#32CD32'</span><span class="src-sym">;</span></li>
236
- <li><a name="a197"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'linen'</span><span class="src-sym">] </span>= <span class="src-str">'#FAF0E6'</span><span class="src-sym">;</span></li>
237
- <li><a name="a198"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'magenta'</span><span class="src-sym">] </span>= <span class="src-str">'#FF00FF'</span><span class="src-sym">;</span></li>
238
- <li><a name="a199"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mediumaquamarine'</span><span class="src-sym">] </span>= <span class="src-str">'#66CDAA'</span><span class="src-sym">;</span></li>
239
- <li><a name="a200"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mediumblue'</span><span class="src-sym">] </span>= <span class="src-str">'#0000CD'</span><span class="src-sym">;</span></li>
240
- <li><a name="a201"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mediumorchid'</span><span class="src-sym">] </span>= <span class="src-str">'#BA55D3'</span><span class="src-sym">;</span></li>
241
- <li><a name="a202"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mediumpurple'</span><span class="src-sym">] </span>= <span class="src-str">'#9370D8'</span><span class="src-sym">;</span></li>
242
- <li><a name="a203"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mediumseagreen'</span><span class="src-sym">] </span>= <span class="src-str">'#3CB371'</span><span class="src-sym">;</span></li>
243
- <li><a name="a204"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mediumslateblue'</span><span class="src-sym">] </span>= <span class="src-str">'#7B68EE'</span><span class="src-sym">;</span></li>
244
- <li><a name="a205"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mediumspringgreen'</span><span class="src-sym">] </span>= <span class="src-str">'#00FA9A'</span><span class="src-sym">;</span></li>
245
- <li><a name="a206"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mediumturquoise'</span><span class="src-sym">] </span>= <span class="src-str">'#48D1CC'</span><span class="src-sym">;</span></li>
246
- <li><a name="a207"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mediumvioletred'</span><span class="src-sym">] </span>= <span class="src-str">'#C71585'</span><span class="src-sym">;</span></li>
247
- <li><a name="a208"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'midnightblue'</span><span class="src-sym">] </span>= <span class="src-str">'#191970'</span><span class="src-sym">;</span></li>
248
- <li><a name="a209"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mintcream'</span><span class="src-sym">] </span>= <span class="src-str">'#F5FFFA'</span><span class="src-sym">;</span></li>
249
- <li><a name="a210"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'mistyrose'</span><span class="src-sym">] </span>= <span class="src-str">'#FFE4E1'</span><span class="src-sym">;</span></li>
250
- <li><a name="a211"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'moccasin'</span><span class="src-sym">] </span>= <span class="src-str">'#FFE4B5'</span><span class="src-sym">;</span></li>
251
- <li><a name="a212"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'navajowhite'</span><span class="src-sym">] </span>= <span class="src-str">'#FFDEAD'</span><span class="src-sym">;</span></li>
252
- <li><a name="a213"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'oldlace'</span><span class="src-sym">] </span>= <span class="src-str">'#FDF5E6'</span><span class="src-sym">;</span></li>
253
- <li><a name="a214"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'olivedrab'</span><span class="src-sym">] </span>= <span class="src-str">'#6B8E23'</span><span class="src-sym">;</span></li>
254
- <li><a name="a215"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'orangered'</span><span class="src-sym">] </span>= <span class="src-str">'#FF4500'</span><span class="src-sym">;</span></li>
255
- <li><a name="a216"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'orchid'</span><span class="src-sym">] </span>= <span class="src-str">'#DA70D6'</span><span class="src-sym">;</span></li>
256
- <li><a name="a217"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'palegoldenrod'</span><span class="src-sym">] </span>= <span class="src-str">'#EEE8AA'</span><span class="src-sym">;</span></li>
257
- <li><a name="a218"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'palegreen'</span><span class="src-sym">] </span>= <span class="src-str">'#98FB98'</span><span class="src-sym">;</span></li>
258
- <li><a name="a219"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'paleturquoise'</span><span class="src-sym">] </span>= <span class="src-str">'#AFEEEE'</span><span class="src-sym">;</span></li>
259
- <li><a name="a220"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'palevioletred'</span><span class="src-sym">] </span>= <span class="src-str">'#D87093'</span><span class="src-sym">;</span></li>
260
- <li><a name="a221"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'papayawhip'</span><span class="src-sym">] </span>= <span class="src-str">'#FFEFD5'</span><span class="src-sym">;</span></li>
261
- <li><a name="a222"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'peachpuff'</span><span class="src-sym">] </span>= <span class="src-str">'#FFDAB9'</span><span class="src-sym">;</span></li>
262
- <li><a name="a223"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'peru'</span><span class="src-sym">] </span>= <span class="src-str">'#CD853F'</span><span class="src-sym">;</span></li>
263
- <li><a name="a224"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'pink'</span><span class="src-sym">] </span>= <span class="src-str">'#FFC0CB'</span><span class="src-sym">;</span></li>
264
- <li><a name="a225"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'plum'</span><span class="src-sym">] </span>= <span class="src-str">'#DDA0DD'</span><span class="src-sym">;</span></li>
265
- <li><a name="a226"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'powderblue'</span><span class="src-sym">] </span>= <span class="src-str">'#B0E0E6'</span><span class="src-sym">;</span></li>
266
- <li><a name="a227"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'rosybrown'</span><span class="src-sym">] </span>= <span class="src-str">'#BC8F8F'</span><span class="src-sym">;</span></li>
267
- <li><a name="a228"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'royalblue'</span><span class="src-sym">] </span>= <span class="src-str">'#4169E1'</span><span class="src-sym">;</span></li>
268
- <li><a name="a229"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'saddlebrown'</span><span class="src-sym">] </span>= <span class="src-str">'#8B4513'</span><span class="src-sym">;</span></li>
269
- <li><a name="a230"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'salmon'</span><span class="src-sym">] </span>= <span class="src-str">'#FA8072'</span><span class="src-sym">;</span></li>
270
- <li><a name="a231"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'sandybrown'</span><span class="src-sym">] </span>= <span class="src-str">'#F4A460'</span><span class="src-sym">;</span></li>
271
- <li><a name="a232"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'seagreen'</span><span class="src-sym">] </span>= <span class="src-str">'#2E8B57'</span><span class="src-sym">;</span></li>
272
- <li><a name="a233"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'seashell'</span><span class="src-sym">] </span>= <span class="src-str">'#FFF5EE'</span><span class="src-sym">;</span></li>
273
- <li><a name="a234"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'sienna'</span><span class="src-sym">] </span>= <span class="src-str">'#A0522D'</span><span class="src-sym">;</span></li>
274
- <li><a name="a235"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'skyblue'</span><span class="src-sym">] </span>= <span class="src-str">'#87CEEB'</span><span class="src-sym">;</span></li>
275
- <li><a name="a236"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'slateblue'</span><span class="src-sym">] </span>= <span class="src-str">'#6A5ACD'</span><span class="src-sym">;</span></li>
276
- <li><a name="a237"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'slategray'</span><span class="src-sym">] </span>= <span class="src-str">'#708090'</span><span class="src-sym">;</span></li>
277
- <li><a name="a238"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'snow'</span><span class="src-sym">] </span>= <span class="src-str">'#FFFAFA'</span><span class="src-sym">;</span></li>
278
- <li><a name="a239"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'springgreen'</span><span class="src-sym">] </span>= <span class="src-str">'#00FF7F'</span><span class="src-sym">;</span></li>
279
- <li><a name="a240"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'steelblue'</span><span class="src-sym">] </span>= <span class="src-str">'#4682B4'</span><span class="src-sym">;</span></li>
280
- <li><a name="a241"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'tan'</span><span class="src-sym">] </span>= <span class="src-str">'#D2B48C'</span><span class="src-sym">;</span></li>
281
- <li><a name="a242"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'thistle'</span><span class="src-sym">] </span>= <span class="src-str">'#D8BFD8'</span><span class="src-sym">;</span></li>
282
- <li><a name="a243"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'tomato'</span><span class="src-sym">] </span>= <span class="src-str">'#FF6347'</span><span class="src-sym">;</span></li>
283
- <li><a name="a244"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'turquoise'</span><span class="src-sym">] </span>= <span class="src-str">'#40E0D0'</span><span class="src-sym">;</span></li>
284
- <li><a name="a245"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'violet'</span><span class="src-sym">] </span>= <span class="src-str">'#EE82EE'</span><span class="src-sym">;</span></li>
285
- <li><a name="a246"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'violetred'</span><span class="src-sym">] </span>= <span class="src-str">'#D02090'</span><span class="src-sym">;</span></li>
286
- <li><a name="a247"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'wheat'</span><span class="src-sym">] </span>= <span class="src-str">'#F5DEB3'</span><span class="src-sym">;</span></li>
287
- <li><a name="a248"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'whitesmoke'</span><span class="src-sym">] </span>= <span class="src-str">'#F5F5F5'</span><span class="src-sym">;</span></li>
288
- <li><a name="a249"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'replace_colors'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'yellowgreen'</span><span class="src-sym">] </span>= <span class="src-str">'#9ACD32'</span><span class="src-sym">;</span></li>
289
- <li><a name="a250"></a>&nbsp;</li>
290
- <li><a name="a251"></a>&nbsp;</li>
291
- <li><a name="a252"></a><span class="src-doc">/**</span></li>
292
- <li><a name="a253"></a><span class="src-doc"> * A list of all shorthand properties that are devided into four properties and/or have four subvalues</span></li>
293
- <li><a name="a254"></a><span class="src-doc"> *</span></li>
294
- <li><a name="a255"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['shorthands'] </span></li>
295
- <li><a name="a256"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@todo</span><span class="src-doc"> Are there new ones in CSS3?</span></li>
296
- <li><a name="a257"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> dissolve_4value_shorthands()</span></li>
297
- <li><a name="a258"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> merge_4value_shorthands()</span></li>
298
- <li><a name="a259"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
299
- <li><a name="a260"></a><span class="src-doc"> */</span></li>
300
- <li><a name="a261"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
301
- <li><a name="a262"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-color'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'border-top-color'</span><span class="src-sym">,</span><span class="src-str">'border-right-color'</span><span class="src-sym">,</span><span class="src-str">'border-bottom-color'</span><span class="src-sym">,</span><span class="src-str">'border-left-color'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
302
- <li><a name="a263"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-style'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'border-top-style'</span><span class="src-sym">,</span><span class="src-str">'border-right-style'</span><span class="src-sym">,</span><span class="src-str">'border-bottom-style'</span><span class="src-sym">,</span><span class="src-str">'border-left-style'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
303
- <li><a name="a264"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-width'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'border-top-width'</span><span class="src-sym">,</span><span class="src-str">'border-right-width'</span><span class="src-sym">,</span><span class="src-str">'border-bottom-width'</span><span class="src-sym">,</span><span class="src-str">'border-left-width'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
304
- <li><a name="a265"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'margin'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'margin-top'</span><span class="src-sym">,</span><span class="src-str">'margin-right'</span><span class="src-sym">,</span><span class="src-str">'margin-bottom'</span><span class="src-sym">,</span><span class="src-str">'margin-left'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
305
- <li><a name="a266"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'padding'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'padding-top'</span><span class="src-sym">,</span><span class="src-str">'padding-right'</span><span class="src-sym">,</span><span class="src-str">'padding-bottom'</span><span class="src-sym">,</span><span class="src-str">'padding-left'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
306
- <li><a name="a267"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'shorthands'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'-moz-border-radius'</span><span class="src-sym">] </span>= <span class="src-num">0</span><span class="src-sym">;</span></li>
307
- <li><a name="a268"></a>&nbsp;</li>
308
- <li><a name="a269"></a><span class="src-doc">/**</span></li>
309
- <li><a name="a270"></a><span class="src-doc"> * All CSS Properties. Needed for csstidy::property_is_next()</span></li>
310
- <li><a name="a271"></a><span class="src-doc"> *</span></li>
311
- <li><a name="a272"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['all_properties'] </span></li>
312
- <li><a name="a273"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@todo</span><span class="src-doc"> Add CSS3 properties</span></li>
313
- <li><a name="a274"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
314
- <li><a name="a275"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> csstidy::property_is_next()</span></li>
315
- <li><a name="a276"></a><span class="src-doc"> */</span></li>
316
- <li><a name="a277"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">] </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
317
- <li><a name="a278"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
318
- <li><a name="a279"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-color'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
319
- <li><a name="a280"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-image'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
320
- <li><a name="a281"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-repeat'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
321
- <li><a name="a282"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-attachment'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
322
- <li><a name="a283"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'background-position'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
323
- <li><a name="a284"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
324
- <li><a name="a285"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-top'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
325
- <li><a name="a286"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-right'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
326
- <li><a name="a287"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-bottom'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
327
- <li><a name="a288"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-left'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
328
- <li><a name="a289"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-color'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
329
- <li><a name="a290"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-top-color'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
330
- <li><a name="a291"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-bottom-color'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
331
- <li><a name="a292"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-left-color'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
332
- <li><a name="a293"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-right-color'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
333
- <li><a name="a294"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-style'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
334
- <li><a name="a295"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-top-style'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
335
- <li><a name="a296"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-right-style'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
336
- <li><a name="a297"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-left-style'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
337
- <li><a name="a298"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-bottom-style'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
338
- <li><a name="a299"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-width'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
339
- <li><a name="a300"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-top-width'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
340
- <li><a name="a301"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-right-width'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
341
- <li><a name="a302"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-left-width'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
342
- <li><a name="a303"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-bottom-width'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
343
- <li><a name="a304"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-collapse'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
344
- <li><a name="a305"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'border-spacing'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
345
- <li><a name="a306"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'bottom'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
346
- <li><a name="a307"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'caption-side'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
347
- <li><a name="a308"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'content'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
348
- <li><a name="a309"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'clear'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
349
- <li><a name="a310"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'clip'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
350
- <li><a name="a311"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'color'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
351
- <li><a name="a312"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'counter-reset'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
352
- <li><a name="a313"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'counter-increment'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
353
- <li><a name="a314"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'cursor'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
354
- <li><a name="a315"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'empty-cells'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
355
- <li><a name="a316"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'display'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
356
- <li><a name="a317"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'direction'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
357
- <li><a name="a318"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'float'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
358
- <li><a name="a319"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'font'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
359
- <li><a name="a320"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'font-family'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
360
- <li><a name="a321"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'font-style'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
361
- <li><a name="a322"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'font-variant'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
362
- <li><a name="a323"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'font-weight'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
363
- <li><a name="a324"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'font-stretch'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0'</span><span class="src-sym">;</span></li>
364
- <li><a name="a325"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'font-size-adjust'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0'</span><span class="src-sym">;</span></li>
365
- <li><a name="a326"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'font-size'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
366
- <li><a name="a327"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'height'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
367
- <li><a name="a328"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'left'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
368
- <li><a name="a329"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'line-height'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
369
- <li><a name="a330"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'list-style'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
370
- <li><a name="a331"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'list-style-type'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
371
- <li><a name="a332"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'list-style-image'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
372
- <li><a name="a333"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'list-style-position'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
373
- <li><a name="a334"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'margin'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
374
- <li><a name="a335"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'margin-top'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
375
- <li><a name="a336"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'margin-right'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
376
- <li><a name="a337"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'margin-bottom'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
377
- <li><a name="a338"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'margin-left'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
378
- <li><a name="a339"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'marks'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0'</span><span class="src-sym">;</span></li>
379
- <li><a name="a340"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'marker-offset'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0'</span><span class="src-sym">;</span></li>
380
- <li><a name="a341"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'max-height'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
381
- <li><a name="a342"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'max-width'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
382
- <li><a name="a343"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'min-height'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
383
- <li><a name="a344"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'min-width'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
384
- <li><a name="a345"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'overflow'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
385
- <li><a name="a346"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'orphans'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
386
- <li><a name="a347"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'outline'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
387
- <li><a name="a348"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'outline-width'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
388
- <li><a name="a349"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'outline-style'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
389
- <li><a name="a350"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'outline-color'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
390
- <li><a name="a351"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'padding'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
391
- <li><a name="a352"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'padding-top'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
392
- <li><a name="a353"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'padding-right'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
393
- <li><a name="a354"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'padding-bottom'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
394
- <li><a name="a355"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'padding-left'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
395
- <li><a name="a356"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'page-break-before'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
396
- <li><a name="a357"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'page-break-after'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
397
- <li><a name="a358"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'page-break-inside'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
398
- <li><a name="a359"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'page'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0'</span><span class="src-sym">;</span></li>
399
- <li><a name="a360"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'position'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
400
- <li><a name="a361"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'quotes'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
401
- <li><a name="a362"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'right'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
402
- <li><a name="a363"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0'</span><span class="src-sym">;</span></li>
403
- <li><a name="a364"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'speak-header'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
404
- <li><a name="a365"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'table-layout'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
405
- <li><a name="a366"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'top'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
406
- <li><a name="a367"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'text-indent'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
407
- <li><a name="a368"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'text-align'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
408
- <li><a name="a369"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'text-decoration'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
409
- <li><a name="a370"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'text-shadow'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0'</span><span class="src-sym">;</span></li>
410
- <li><a name="a371"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'letter-spacing'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
411
- <li><a name="a372"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'word-spacing'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
412
- <li><a name="a373"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'text-transform'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
413
- <li><a name="a374"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'white-space'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
414
- <li><a name="a375"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'unicode-bidi'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
415
- <li><a name="a376"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'vertical-align'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
416
- <li><a name="a377"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'visibility'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
417
- <li><a name="a378"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'width'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
418
- <li><a name="a379"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'widows'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
419
- <li><a name="a380"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'z-index'</span><span class="src-sym">] </span>= <span class="src-str">'CSS1.0,CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
420
- <li><a name="a381"></a><span class="src-comm">/* Speech */</span></li>
421
- <li><a name="a382"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'volume'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
422
- <li><a name="a383"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'speak'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
423
- <li><a name="a384"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'pause'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
424
- <li><a name="a385"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'pause-before'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
425
- <li><a name="a386"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'pause-after'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
426
- <li><a name="a387"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'cue'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
427
- <li><a name="a388"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'cue-before'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
428
- <li><a name="a389"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'cue-after'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
429
- <li><a name="a390"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'play-during'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
430
- <li><a name="a391"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'azimuth'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
431
- <li><a name="a392"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'elevation'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
432
- <li><a name="a393"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'speech-rate'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
433
- <li><a name="a394"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'voice-family'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
434
- <li><a name="a395"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'pitch'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
435
- <li><a name="a396"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'pitch-range'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
436
- <li><a name="a397"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'stress'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
437
- <li><a name="a398"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'richness'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
438
- <li><a name="a399"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'speak-punctuation'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
439
- <li><a name="a400"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'all_properties'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'speak-numeral'</span><span class="src-sym">] </span>= <span class="src-str">'CSS2.0,CSS2.1'</span><span class="src-sym">;</span></li>
440
- <li><a name="a401"></a>&nbsp;</li>
441
- <li><a name="a402"></a><span class="src-doc">/**</span></li>
442
- <li><a name="a403"></a><span class="src-doc"> * An array containing all predefined templates.</span></li>
443
- <li><a name="a404"></a><span class="src-doc"> *</span></li>
444
- <li><a name="a405"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@global </span><span class="src-doc-type">array </span><span class="src-doc-var">$GLOBALS['csstidy']['predefined_templates'] </span></li>
445
- <li><a name="a406"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@version</span><span class="src-doc"> 1.0</span></li>
446
- <li><a name="a407"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@see</span><span class="src-doc"> csstidy::load_template()</span></li>
447
- <li><a name="a408"></a><span class="src-doc"> */</span></li>
448
- <li><a name="a409"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;at&quot;&gt;'</span><span class="src-sym">; </span><span class="src-comm">//string before @rule</span></li>
449
- <li><a name="a410"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt; &lt;span class=&quot;format&quot;&gt;{&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">; </span><span class="src-comm">//bracket after @-rule</span></li>
450
- <li><a name="a411"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;selector&quot;&gt;'</span><span class="src-sym">; </span><span class="src-comm">//string before selector</span></li>
451
- <li><a name="a412"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt; &lt;span class=&quot;format&quot;&gt;{&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">; </span><span class="src-comm">//bracket after selector</span></li>
452
- <li><a name="a413"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;property&quot;&gt;'</span><span class="src-sym">; </span><span class="src-comm">//string before property</span></li>
453
- <li><a name="a414"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;value&quot;&gt;'</span><span class="src-sym">; </span><span class="src-comm">//string after property+before value</span></li>
454
- <li><a name="a415"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;format&quot;&gt;;&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">; </span><span class="src-comm">//string after value</span></li>
455
- <li><a name="a416"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;format&quot;&gt;}&lt;/span&gt;'</span><span class="src-sym">; </span><span class="src-comm">//closing bracket - selector</span></li>
456
- <li><a name="a417"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">&quot;\n\n&quot;</span><span class="src-sym">; </span><span class="src-comm">//space between blocks {...}</span></li>
457
- <li><a name="a418"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">&quot;\n&quot;</span>.<span class="src-str">'&lt;span class=&quot;format&quot;&gt;}&lt;/span&gt;'</span>. <span class="src-str">&quot;\n\n&quot;</span><span class="src-sym">; </span><span class="src-comm">//closing bracket @-rule</span></li>
458
- <li><a name="a419"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">''</span><span class="src-sym">; </span><span class="src-comm">//indent in @-rule</span></li>
459
- <li><a name="a420"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;comment&quot;&gt;'</span><span class="src-sym">; </span><span class="src-comm">// before comment</span></li>
460
- <li><a name="a421"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">; </span><span class="src-comm">// after comment</span></li>
461
- <li><a name="a422"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'default'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">&quot;\n&quot;</span><span class="src-sym">; </span><span class="src-comm">// after last line @-rule</span></li>
462
- <li><a name="a423"></a>&nbsp;</li>
463
- <li><a name="a424"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;at&quot;&gt;'</span><span class="src-sym">;</span></li>
464
- <li><a name="a425"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt; &lt;span class=&quot;format&quot;&gt;{&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></li>
465
- <li><a name="a426"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;selector&quot;&gt;'</span><span class="src-sym">;</span></li>
466
- <li><a name="a427"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;format&quot;&gt;{&lt;/span&gt;'</span><span class="src-sym">;</span></li>
467
- <li><a name="a428"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;property&quot;&gt;'</span><span class="src-sym">;</span></li>
468
- <li><a name="a429"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;value&quot;&gt;'</span><span class="src-sym">;</span></li>
469
- <li><a name="a430"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;format&quot;&gt;;&lt;/span&gt;'</span><span class="src-sym">;</span></li>
470
- <li><a name="a431"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;format&quot;&gt;}&lt;/span&gt;'</span><span class="src-sym">;</span></li>
471
- <li><a name="a432"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></li>
472
- <li><a name="a433"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">&quot;\n&quot;</span>. <span class="src-str">'&lt;span class=&quot;format&quot;&gt;}'</span>.<span class="src-str">&quot;\n&quot;</span>.<span class="src-str">'&lt;/span&gt;'</span><span class="src-sym">;</span></li>
473
- <li><a name="a434"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
474
- <li><a name="a435"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;comment&quot;&gt;'</span><span class="src-sym">; </span><span class="src-comm">// before comment</span></li>
475
- <li><a name="a436"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;'</span><span class="src-sym">; </span><span class="src-comm">// after comment</span></li>
476
- <li><a name="a437"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'high_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></li>
477
- <li><a name="a438"></a>&nbsp;</li>
478
- <li><a name="a439"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;at&quot;&gt;'</span><span class="src-sym">;</span></li>
479
- <li><a name="a440"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;format&quot;&gt;{&lt;/span&gt;'</span><span class="src-sym">;</span></li>
480
- <li><a name="a441"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;selector&quot;&gt;'</span><span class="src-sym">;</span></li>
481
- <li><a name="a442"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;format&quot;&gt;{&lt;/span&gt;'</span><span class="src-sym">;</span></li>
482
- <li><a name="a443"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;property&quot;&gt;'</span><span class="src-sym">;</span></li>
483
- <li><a name="a444"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;value&quot;&gt;'</span><span class="src-sym">;</span></li>
484
- <li><a name="a445"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;format&quot;&gt;;&lt;/span&gt;'</span><span class="src-sym">;</span></li>
485
- <li><a name="a446"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;format&quot;&gt;}&lt;/span&gt;'</span><span class="src-sym">;</span></li>
486
- <li><a name="a447"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
487
- <li><a name="a448"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;format&quot;&gt;}&lt;/span&gt;'</span><span class="src-sym">;</span></li>
488
- <li><a name="a449"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
489
- <li><a name="a450"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;comment&quot;&gt;'</span><span class="src-sym">; </span><span class="src-comm">// before comment</span></li>
490
- <li><a name="a451"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;'</span><span class="src-sym">; </span><span class="src-comm">// after comment</span></li>
491
- <li><a name="a452"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'highest_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
492
- <li><a name="a453"></a>&nbsp;</li>
493
- <li><a name="a454"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;at&quot;&gt;'</span><span class="src-sym">;</span></li>
494
- <li><a name="a455"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt; &lt;span class=&quot;format&quot;&gt;{&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></li>
495
- <li><a name="a456"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;selector&quot;&gt;'</span><span class="src-sym">;</span></li>
496
- <li><a name="a457"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span>.<span class="src-str">'&lt;span class=&quot;format&quot;&gt;{&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></li>
497
- <li><a name="a458"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">' &lt;span class=&quot;property&quot;&gt;'</span><span class="src-sym">;</span></li>
498
- <li><a name="a459"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;value&quot;&gt;'</span><span class="src-sym">;</span></li>
499
- <li><a name="a460"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;&lt;span class=&quot;format&quot;&gt;;&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></li>
500
- <li><a name="a461"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;format&quot;&gt;}&lt;/span&gt;'</span><span class="src-sym">;</span></li>
501
- <li><a name="a462"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">&quot;\n\n&quot;</span><span class="src-sym">;</span></li>
502
- <li><a name="a463"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">&quot;\n&quot;</span>.<span class="src-str">'&lt;span class=&quot;format&quot;&gt;}&lt;/span&gt;'</span>.<span class="src-str">&quot;\n\n&quot;</span><span class="src-sym">;</span></li>
503
- <li><a name="a464"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">' '</span><span class="src-sym">;</span></li>
504
- <li><a name="a465"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;span class=&quot;comment&quot;&gt;'</span><span class="src-sym">; </span><span class="src-comm">// before comment</span></li>
505
- <li><a name="a466"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">'&lt;/span&gt;'</span>.<span class="src-str">&quot;\n&quot;</span><span class="src-sym">; </span><span class="src-comm">// after comment</span></li>
506
- <li><a name="a467"></a><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-str">'csstidy'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'predefined_templates'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'low_compression'</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></li>
507
- <li><a name="a468"></a>&nbsp;</li>
508
- <li><a name="a469"></a><span class="src-php">?&gt;</span></li>
509
- </ol></pre></div>
510
- </div>
511
- <div class="credit">
512
- <hr />
513
- Documentation generated on Mon, 15 May 2006 22:56:01 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
514
- </div>
515
- </td></tr></table>
516
- </td>
517
- </tr>
518
- </table>
519
-
520
- </body>
521
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/__filesource/index.php DELETED
File without changes
vendor/cerdic/css-tidy/Docs/classtrees_csstidy.html DELETED
@@ -1,62 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Class Trees for Package csstidy</title>
4
- <link rel="stylesheet" type="text/css" href="media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- </td>
33
- <td>
34
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
35
-
36
- <h1>Class Trees for Package csstidy</h1>
37
- <hr />
38
- <div class="classtree">Root class csstidy</div><br>
39
- <ul>
40
- <li><a href="csstidy/csstidy.html">csstidy</a></li></ul>
41
-
42
- <hr />
43
- <div class="classtree">Root class csstidy_optimise</div><br>
44
- <ul>
45
- <li><a href="csstidy/csstidy_optimise.html">csstidy_optimise</a></li></ul>
46
-
47
- <hr />
48
- <div class="classtree">Root class csstidy_print</div><br>
49
- <ul>
50
- <li><a href="csstidy/csstidy_print.html">csstidy_print</a></li></ul>
51
-
52
- <div class="credit">
53
- <hr />
54
- Documentation generated on Mon, 15 May 2006 22:54:54 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
55
- </div>
56
- </td></tr></table>
57
- </td>
58
- </tr>
59
- </table>
60
-
61
- </body>
62
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/csstidy/_class_csstidy_optimise_php.html DELETED
@@ -1,97 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Docs for page class.csstidy_optimise.php</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="../csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="../csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="../csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="../csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="../csstidy/csstidy.html">csstidy</a><br />
47
- <a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="../csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <h1>Procedural File: class.csstidy_optimise.php</h1>
55
- Source Location: /class.csstidy_optimise.php<br /><br />
56
-
57
- <br>
58
- <br>
59
-
60
- <div class="contents">
61
- <h2>Classes:</h2>
62
- <dt><a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a></dt>
63
- <dd>CSS Optimising Class</dd>
64
- </div><br /><br />
65
-
66
- <h2>Page Details:</h2>
67
- CSSTidy - CSS Parser and Optimiser<br /><br /><p>CSS Optimising Class This class optimises CSS data generated by csstidy.</p><p>This file is part of CSSTidy.</p><p>CSSTidy is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.</p><p>CSSTidy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p><p>You should have received a copy of the GNU General Public License along with CSSTidy; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br />
68
- <h4>Tags:</h4>
69
- <div class="tags">
70
- <table border="0" cellspacing="0" cellpadding="0">
71
- <tr>
72
- <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html">Source Code for this file</a></td>
73
- </tr>
74
- <tr>
75
- <td><b>author:</b>&nbsp;&nbsp;</td><td>Florian Schmitz (floele at gmail dot com) 2005-2006</td>
76
- </tr>
77
- <tr>
78
- <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://opensource.org/licenses/gpl-license.php">GNU Public License</a></td>
79
- </tr>
80
- </table>
81
- </div>
82
- <br /><br />
83
- <br /><br />
84
- <br /><br />
85
- <br />
86
-
87
- <div class="credit">
88
- <hr />
89
- Documentation generated on Mon, 15 May 2006 22:55:16 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
90
- </div>
91
- </td></tr></table>
92
- </td>
93
- </tr>
94
- </table>
95
-
96
- </body>
97
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/csstidy/_class_csstidy_php.html DELETED
@@ -1,130 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Docs for page class.csstidy.php</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="../csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="../csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="../csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="../csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="../csstidy/csstidy.html">csstidy</a><br />
47
- <a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="../csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <h1>Procedural File: class.csstidy.php</h1>
55
- Source Location: /class.csstidy.php<br /><br />
56
-
57
- <br>
58
- <br>
59
-
60
- <div class="contents">
61
- <h2>Classes:</h2>
62
- <dt><a href="../csstidy/csstidy.html">csstidy</a></dt>
63
- <dd>CSS Parser class</dd>
64
- </div><br /><br />
65
-
66
- <h2>Page Details:</h2>
67
- CSSTidy - CSS Parser and Optimiser<br /><br /><p>CSS Parser class</p><p>This file is part of CSSTidy.</p><p>CSSTidy is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.</p><p>CSSTidy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p><p>You should have received a copy of the GNU General Public License along with CSSTidy; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br />
68
- <h4>Tags:</h4>
69
- <div class="tags">
70
- <table border="0" cellspacing="0" cellpadding="0">
71
- <tr>
72
- <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="..//__filesource/fsource_csstidy__class.csstidy.php.html">Source Code for this file</a></td>
73
- </tr>
74
- <tr>
75
- <td><b>author:</b>&nbsp;&nbsp;</td><td>Florian Schmitz (floele at gmail dot com) 2005-2006</td>
76
- </tr>
77
- <tr>
78
- <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://opensource.org/licenses/gpl-license.php">GNU Public License</a></td>
79
- </tr>
80
- </table>
81
- </div>
82
- <br /><br />
83
- <h4>Includes:</h4>
84
- <div class="tags">
85
- require(<a href="../csstidy/_data_inc_php.html">'data.inc.php'</a>) [line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a33">33</a>]<br />
86
- Various CSS data needed for correct optimisations etc.<br /><br /><br /><br />
87
- <h4>Tags:</h4>
88
- <div class="tags">
89
- <table border="0" cellspacing="0" cellpadding="0">
90
- <tr>
91
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
92
- </tr>
93
- </table>
94
- </div>
95
- require(<a href="../csstidy/_class_csstidy_print_php.html">'class.csstidy_print.php'</a>) [line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a40">40</a>]<br />
96
- Contains a class for printing CSS code<br /><br /><br /><br />
97
- <h4>Tags:</h4>
98
- <div class="tags">
99
- <table border="0" cellspacing="0" cellpadding="0">
100
- <tr>
101
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
102
- </tr>
103
- </table>
104
- </div>
105
- require(<a href="../csstidy/_class_csstidy_optimise_php.html">'class.csstidy_optimise.php'</a>) [line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a47">47</a>]<br />
106
- Contains a class for optimising CSS code<br /><br /><br /><br />
107
- <h4>Tags:</h4>
108
- <div class="tags">
109
- <table border="0" cellspacing="0" cellpadding="0">
110
- <tr>
111
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
112
- </tr>
113
- </table>
114
- </div>
115
- </div>
116
- <br /><br />
117
- <br /><br />
118
- <br />
119
-
120
- <div class="credit">
121
- <hr />
122
- Documentation generated on Mon, 15 May 2006 22:54:54 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
123
- </div>
124
- </td></tr></table>
125
- </td>
126
- </tr>
127
- </table>
128
-
129
- </body>
130
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/csstidy/_class_csstidy_print_php.html DELETED
@@ -1,97 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Docs for page class.csstidy_print.php</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="../csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="../csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="../csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="../csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="../csstidy/csstidy.html">csstidy</a><br />
47
- <a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="../csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <h1>Procedural File: class.csstidy_print.php</h1>
55
- Source Location: /class.csstidy_print.php<br /><br />
56
-
57
- <br>
58
- <br>
59
-
60
- <div class="contents">
61
- <h2>Classes:</h2>
62
- <dt><a href="../csstidy/csstidy_print.html">csstidy_print</a></dt>
63
- <dd>CSS Printing class</dd>
64
- </div><br /><br />
65
-
66
- <h2>Page Details:</h2>
67
- CSSTidy - CSS Parser and Optimiser<br /><br /><p>CSS Printing class This class prints CSS data generated by csstidy.</p><p>This file is part of CSSTidy.</p><p>CSSTidy is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.</p><p>CSSTidy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p><p>You should have received a copy of the GNU General Public License along with CSSTidy; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br />
68
- <h4>Tags:</h4>
69
- <div class="tags">
70
- <table border="0" cellspacing="0" cellpadding="0">
71
- <tr>
72
- <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html">Source Code for this file</a></td>
73
- </tr>
74
- <tr>
75
- <td><b>author:</b>&nbsp;&nbsp;</td><td>Florian Schmitz (floele at gmail dot com) 2005-2006</td>
76
- </tr>
77
- <tr>
78
- <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://opensource.org/licenses/gpl-license.php">GNU Public License</a></td>
79
- </tr>
80
- </table>
81
- </div>
82
- <br /><br />
83
- <br /><br />
84
- <br /><br />
85
- <br />
86
-
87
- <div class="credit">
88
- <hr />
89
- Documentation generated on Mon, 15 May 2006 22:55:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
90
- </div>
91
- </td></tr></table>
92
- </td>
93
- </tr>
94
- </table>
95
-
96
- </body>
97
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/csstidy/_data_inc_php.html DELETED
@@ -1,483 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Docs for page data.inc.php</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="../csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="../csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="../csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="../csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="../csstidy/csstidy.html">csstidy</a><br />
47
- <a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="../csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <h1>Procedural File: data.inc.php</h1>
55
- Source Location: /data.inc.php<br /><br />
56
-
57
- <br>
58
- <br>
59
-
60
-
61
- <h2>Page Details:</h2>
62
- Various CSS Data for CSSTidy<br /><br /><p>This file is part of CSSTidy.</p><p>CSSTidy is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.</p><p>CSSTidy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p><p>You should have received a copy of the GNU General Public License along with CSSTidy; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br />
63
- <h4>Tags:</h4>
64
- <div class="tags">
65
- <table border="0" cellspacing="0" cellpadding="0">
66
- <tr>
67
- <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="..//__filesource/fsource_csstidy__data.inc.php.html">Source Code for this file</a></td>
68
- </tr>
69
- <tr>
70
- <td><b>author:</b>&nbsp;&nbsp;</td><td>Florian Schmitz (floele at gmail dot com) 2005</td>
71
- </tr>
72
- <tr>
73
- <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://opensource.org/licenses/gpl-license.php">GNU Public License</a></td>
74
- </tr>
75
- </table>
76
- </div>
77
- <br /><br />
78
- <br /><br />
79
- <hr />
80
- <a name="global$GLOBALS['csstidy']['all_properties']"></a>
81
- <h4><i>array</i> $GLOBALS['csstidy']['all_properties'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a277">277</a>]</span></h4>
82
- <div class="tags">
83
- All CSS Properties. Needed for csstidy::property_is_next()<br /><br /><br /><br />
84
- <h4>Tags:</h4>
85
- <div class="tags">
86
- <table border="0" cellspacing="0" cellpadding="0">
87
- <tr>
88
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy.html#methodproperty_is_next">csstidy::property_is_next()</a></td>
89
- </tr>
90
- <tr>
91
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
92
- </tr>
93
- <tr>
94
- <td><b>todo:</b>&nbsp;&nbsp;</td><td>Add CSS3 properties</td>
95
- </tr>
96
- </table>
97
- </div>
98
-
99
- <table border="0" cellspacing="0" cellpadding="0">
100
- <tr>
101
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
102
- <td>array()</td>
103
- </tr>
104
- </table>
105
- </div><br /><br />
106
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
107
- <hr />
108
- <a name="global$GLOBALS['csstidy']['at_rules']"></a>
109
- <h4><i>array</i> $GLOBALS['csstidy']['at_rules'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a66">66</a>]</span></h4>
110
- <div class="tags">
111
- Available at-rules<br /><br /><br /><br />
112
- <h4>Tags:</h4>
113
- <div class="tags">
114
- <table border="0" cellspacing="0" cellpadding="0">
115
- <tr>
116
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
117
- </tr>
118
- </table>
119
- </div>
120
-
121
- <table border="0" cellspacing="0" cellpadding="0">
122
- <tr>
123
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
124
- <td>array('page'&nbsp;=&gt;&nbsp;'is','font-face'&nbsp;=&gt;&nbsp;'is','charset'&nbsp;=&gt;&nbsp;'iv',&nbsp;'import'&nbsp;=&gt;&nbsp;'iv','namespace'&nbsp;=&gt;&nbsp;'iv','media'&nbsp;=&gt;&nbsp;'at')</td>
125
- </tr>
126
- </table>
127
- </div><br /><br />
128
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
129
- <hr />
130
- <a name="global$GLOBALS['csstidy']['background_prop_default']"></a>
131
- <h4><i>array</i> $GLOBALS['csstidy']['background_prop_default'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a106">106</a>]</span></h4>
132
- <div class="tags">
133
- Default values for the background properties<br /><br /><br /><br />
134
- <h4>Tags:</h4>
135
- <div class="tags">
136
- <table border="0" cellspacing="0" cellpadding="0">
137
- <tr>
138
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
139
- </tr>
140
- <tr>
141
- <td><b>see:</b>&nbsp;&nbsp;</td><td>merge_bg()</td>
142
- </tr>
143
- <tr>
144
- <td><b>see:</b>&nbsp;&nbsp;</td><td>dissolve_short_bg()</td>
145
- </tr>
146
- <tr>
147
- <td><b>todo:</b>&nbsp;&nbsp;</td><td>Possibly property names will change during CSS3 development</td>
148
- </tr>
149
- </table>
150
- </div>
151
-
152
- <table border="0" cellspacing="0" cellpadding="0">
153
- <tr>
154
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
155
- <td>array()</td>
156
- </tr>
157
- </table>
158
- </div><br /><br />
159
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
160
- <hr />
161
- <a name="global$GLOBALS['csstidy']['color_values']"></a>
162
- <h4><i>array</i> $GLOBALS['csstidy']['color_values'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a86">86</a>]</span></h4>
163
- <div class="tags">
164
- Properties that allow &lt;color&gt; as value<br /><br /><br /><br />
165
- <h4>Tags:</h4>
166
- <div class="tags">
167
- <table border="0" cellspacing="0" cellpadding="0">
168
- <tr>
169
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
170
- </tr>
171
- <tr>
172
- <td><b>see:</b>&nbsp;&nbsp;</td><td>compress_numbers();</td>
173
- </tr>
174
- <tr>
175
- <td><b>todo:</b>&nbsp;&nbsp;</td><td>CSS3 properties</td>
176
- </tr>
177
- </table>
178
- </div>
179
-
180
- <table border="0" cellspacing="0" cellpadding="0">
181
- <tr>
182
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
183
- <td>array()</td>
184
- </tr>
185
- </table>
186
- </div><br /><br />
187
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
188
- <hr />
189
- <a name="global$GLOBALS['csstidy']['number_values']"></a>
190
- <h4><i>array</i> $GLOBALS['csstidy']['number_values'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a76">76</a>]</span></h4>
191
- <div class="tags">
192
- Properties that allow &lt;number&gt; as value<br /><br /><br /><br />
193
- <h4>Tags:</h4>
194
- <div class="tags">
195
- <table border="0" cellspacing="0" cellpadding="0">
196
- <tr>
197
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
198
- </tr>
199
- <tr>
200
- <td><b>see:</b>&nbsp;&nbsp;</td><td>compress_numbers();</td>
201
- </tr>
202
- <tr>
203
- <td><b>todo:</b>&nbsp;&nbsp;</td><td>CSS3 properties</td>
204
- </tr>
205
- </table>
206
- </div>
207
-
208
- <table border="0" cellspacing="0" cellpadding="0">
209
- <tr>
210
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
211
- <td>array('line-height','pitch-range','richness','speech-rate','stress','volume','font','font-weight','z-index','counter-increment','counter-reset','orphans','widows')</td>
212
- </tr>
213
- </table>
214
- </div><br /><br />
215
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
216
- <hr />
217
- <a name="global$GLOBALS['csstidy']['predefined_templates']"></a>
218
- <h4><i>array</i> $GLOBALS['csstidy']['predefined_templates'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a409">409</a>]</span></h4>
219
- <div class="tags">
220
- An array containing all predefined templates.<br /><br /><br /><br />
221
- <h4>Tags:</h4>
222
- <div class="tags">
223
- <table border="0" cellspacing="0" cellpadding="0">
224
- <tr>
225
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy.html#methodload_template">csstidy::load_template()</a></td>
226
- </tr>
227
- <tr>
228
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
229
- </tr>
230
- </table>
231
- </div>
232
-
233
- <table border="0" cellspacing="0" cellpadding="0">
234
- <tr>
235
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
236
- <td>'&lt;span&nbsp;class=&quot;at&quot;&gt;'</td>
237
- </tr>
238
- </table>
239
- </div><br /><br />
240
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
241
- <hr />
242
- <a name="global$GLOBALS['csstidy']['replace_colors']"></a>
243
- <h4><i>array</i> $GLOBALS['csstidy']['replace_colors'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a123">123</a>]</span></h4>
244
- <div class="tags">
245
- A list of non-W3C color names which get replaced by their hex-codes<br /><br /><br /><br />
246
- <h4>Tags:</h4>
247
- <div class="tags">
248
- <table border="0" cellspacing="0" cellpadding="0">
249
- <tr>
250
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
251
- </tr>
252
- <tr>
253
- <td><b>see:</b>&nbsp;&nbsp;</td><td>cut_color()</td>
254
- </tr>
255
- </table>
256
- </div>
257
-
258
- <table border="0" cellspacing="0" cellpadding="0">
259
- <tr>
260
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
261
- <td>array()</td>
262
- </tr>
263
- </table>
264
- </div><br /><br />
265
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
266
- <hr />
267
- <a name="global$GLOBALS['csstidy']['shorthands']"></a>
268
- <h4><i>array</i> $GLOBALS['csstidy']['shorthands'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a261">261</a>]</span></h4>
269
- <div class="tags">
270
- A list of all shorthand properties that are devided into four properties and/or have four subvalues<br /><br /><br /><br />
271
- <h4>Tags:</h4>
272
- <div class="tags">
273
- <table border="0" cellspacing="0" cellpadding="0">
274
- <tr>
275
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
276
- </tr>
277
- <tr>
278
- <td><b>see:</b>&nbsp;&nbsp;</td><td>merge_4value_shorthands()</td>
279
- </tr>
280
- <tr>
281
- <td><b>see:</b>&nbsp;&nbsp;</td><td>dissolve_4value_shorthands()</td>
282
- </tr>
283
- <tr>
284
- <td><b>todo:</b>&nbsp;&nbsp;</td><td>Are there new ones in CSS3?</td>
285
- </tr>
286
- </table>
287
- </div>
288
-
289
- <table border="0" cellspacing="0" cellpadding="0">
290
- <tr>
291
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
292
- <td>array()</td>
293
- </tr>
294
- </table>
295
- </div><br /><br />
296
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
297
- <hr />
298
- <a name="global$GLOBALS['csstidy']['tokens']"></a>
299
- <h4><i>string</i> $GLOBALS['csstidy']['tokens'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a49">49</a>]</span></h4>
300
- <div class="tags">
301
- All CSS tokens used by csstidy<br /><br /><br /><br />
302
- <h4>Tags:</h4>
303
- <div class="tags">
304
- <table border="0" cellspacing="0" cellpadding="0">
305
- <tr>
306
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
307
- </tr>
308
- </table>
309
- </div>
310
-
311
- <table border="0" cellspacing="0" cellpadding="0">
312
- <tr>
313
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
314
- <td>'/@}{;:=\'&quot;(,\\!$%&amp;)*+.&lt;&gt;?[]^`|~'</td>
315
- </tr>
316
- </table>
317
- </div><br /><br />
318
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
319
- <hr />
320
- <a name="global$GLOBALS['csstidy']['units']"></a>
321
- <h4><i>array</i> $GLOBALS['csstidy']['units'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a58">58</a>]</span></h4>
322
- <div class="tags">
323
- All CSS units (CSS 3 units included)<br /><br /><br /><br />
324
- <h4>Tags:</h4>
325
- <div class="tags">
326
- <table border="0" cellspacing="0" cellpadding="0">
327
- <tr>
328
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
329
- </tr>
330
- <tr>
331
- <td><b>see:</b>&nbsp;&nbsp;</td><td>compress_numbers()</td>
332
- </tr>
333
- </table>
334
- </div>
335
-
336
- <table border="0" cellspacing="0" cellpadding="0">
337
- <tr>
338
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
339
- <td>array('in','cm','mm','pt','pc','px','rem','em','%','ex','gd','vw','vh','vm','deg','grad','rad','ms','s','khz','hz')</td>
340
- </tr>
341
- </table>
342
- </div><br /><br />
343
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
344
- <hr />
345
- <a name="global$GLOBALS['csstidy']['whitespace']"></a>
346
- <h4><i>array</i> $GLOBALS['csstidy']['whitespace'] <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a41">41</a>]</span></h4>
347
- <div class="tags">
348
- All whitespace allowed in CSS<br /><br /><br /><br />
349
- <h4>Tags:</h4>
350
- <div class="tags">
351
- <table border="0" cellspacing="0" cellpadding="0">
352
- <tr>
353
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
354
- </tr>
355
- </table>
356
- </div>
357
-
358
- <table border="0" cellspacing="0" cellpadding="0">
359
- <tr>
360
- <td><b>Default value:</b>&nbsp;&nbsp;</td>
361
- <td>array('&nbsp;',&quot;\n&quot;,&quot;\t&quot;,&quot;\r&quot;,&quot;\x0B&quot;)</td>
362
- </tr>
363
- </table>
364
- </div><br /><br />
365
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
366
- <br /><br />
367
- <hr />
368
- <a name="defineAT_END"></a>
369
- <h3>AT_END <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a27">27</a>]</span></h3>
370
- <div class="tags">
371
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
372
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
373
- <code>AT_END = 2</code>
374
- </td></tr></table>
375
- </td></tr></table>
376
-
377
- <br />
378
- </div>
379
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
380
- <hr />
381
- <a name="defineAT_START"></a>
382
- <h3>AT_START <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a26">26</a>]</span></h3>
383
- <div class="tags">
384
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
385
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
386
- <code>AT_START = 1</code>
387
- </td></tr></table>
388
- </td></tr></table>
389
-
390
- <br />
391
- </div>
392
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
393
- <hr />
394
- <a name="defineCOMMENT"></a>
395
- <h3>COMMENT <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a32">32</a>]</span></h3>
396
- <div class="tags">
397
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
398
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
399
- <code>COMMENT = 7</code>
400
- </td></tr></table>
401
- </td></tr></table>
402
-
403
- <br />
404
- </div>
405
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
406
- <hr />
407
- <a name="defineDEFAULT_AT"></a>
408
- <h3>DEFAULT_AT <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a33">33</a>]</span></h3>
409
- <div class="tags">
410
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
411
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
412
- <code>DEFAULT_AT = 41</code>
413
- </td></tr></table>
414
- </td></tr></table>
415
-
416
- <br />
417
- </div>
418
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
419
- <hr />
420
- <a name="definePROPERTY"></a>
421
- <h3>PROPERTY <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a30">30</a>]</span></h3>
422
- <div class="tags">
423
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
424
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
425
- <code>PROPERTY = 5</code>
426
- </td></tr></table>
427
- </td></tr></table>
428
-
429
- <br />
430
- </div>
431
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
432
- <hr />
433
- <a name="defineSEL_END"></a>
434
- <h3>SEL_END <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a29">29</a>]</span></h3>
435
- <div class="tags">
436
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
437
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
438
- <code>SEL_END = 4</code>
439
- </td></tr></table>
440
- </td></tr></table>
441
-
442
- <br />
443
- </div>
444
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
445
- <hr />
446
- <a name="defineSEL_START"></a>
447
- <h3>SEL_START <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a28">28</a>]</span></h3>
448
- <div class="tags">
449
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
450
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
451
- <code>SEL_START = 3</code>
452
- </td></tr></table>
453
- </td></tr></table>
454
-
455
- <br />
456
- </div>
457
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
458
- <hr />
459
- <a name="defineVALUE"></a>
460
- <h3>VALUE <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__data.inc.php.html#a31">31</a>]</span></h3>
461
- <div class="tags">
462
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
463
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
464
- <code>VALUE = 6</code>
465
- </td></tr></table>
466
- </td></tr></table>
467
-
468
- <br />
469
- </div>
470
- <div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
471
- <br />
472
-
473
- <div class="credit">
474
- <hr />
475
- Documentation generated on Mon, 15 May 2006 22:55:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
476
- </div>
477
- </td></tr></table>
478
- </td>
479
- </tr>
480
- </table>
481
-
482
- </body>
483
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/csstidy/csstidy.html DELETED
@@ -1,1550 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Docs For Class csstidy</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="../csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="../csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="../csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="../csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="../csstidy/csstidy.html">csstidy</a><br />
47
- <a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="../csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <h1>Class: csstidy</h1>
55
- Source Location: /class.csstidy.php<br /><br />
56
-
57
-
58
- <table width="100%" border="0">
59
- <tr><td valign="top">
60
-
61
- <h3><a href="#class_details">Class Overview</a></h3>
62
- <pre></pre><br />
63
- <div class="description">CSS Parser class</div><br /><br />
64
- <h4>Author(s):</h4>
65
- <ul>
66
- <li>Florian Schmitz (floele at gmail dot com) 2005-2006</li>
67
- </ul>
68
-
69
-
70
-
71
-
72
-
73
-
74
- <h4>Version:</h4>
75
- <ul>
76
- <li>1.2</li>
77
- </ul>
78
-
79
-
80
- </td>
81
-
82
- <td valign="top">
83
- <h3><a href="#class_vars">Variables</a></h3>
84
- <ul>
85
- <li><a href="../csstidy/csstidy.html#var$added">$added</a></li>
86
- <li><a href="../csstidy/csstidy.html#var$at">$at</a></li>
87
- <li><a href="../csstidy/csstidy.html#var$charset">$charset</a></li>
88
- <li><a href="../csstidy/csstidy.html#var$css">$css</a></li>
89
- <li><a href="../csstidy/csstidy.html#var$from">$from</a></li>
90
- <li><a href="../csstidy/csstidy.html#var$import">$import</a></li>
91
- <li><a href="../csstidy/csstidy.html#var$invalid_at">$invalid_at</a></li>
92
- <li><a href="../csstidy/csstidy.html#var$line">$line</a></li>
93
- <li><a href="../csstidy/csstidy.html#var$log">$log</a></li>
94
- <li><a href="../csstidy/csstidy.html#var$namespace">$namespace</a></li>
95
- <li><a href="../csstidy/csstidy.html#var$optimise">$optimise</a></li>
96
- <li><a href="../csstidy/csstidy.html#var$print">$print</a></li>
97
- <li><a href="../csstidy/csstidy.html#var$property">$property</a></li>
98
- <li><a href="../csstidy/csstidy.html#var$selector">$selector</a></li>
99
- <li><a href="../csstidy/csstidy.html#var$sel_separate">$sel_separate</a></li>
100
- <li><a href="../csstidy/csstidy.html#var$settings">$settings</a></li>
101
- <li><a href="../csstidy/csstidy.html#var$status">$status</a></li>
102
- <li><a href="../csstidy/csstidy.html#var$str_char">$str_char</a></li>
103
- <li><a href="../csstidy/csstidy.html#var$str_in_str">$str_in_str</a></li>
104
- <li><a href="../csstidy/csstidy.html#var$sub_value">$sub_value</a></li>
105
- <li><a href="../csstidy/csstidy.html#var$sub_value_arr">$sub_value_arr</a></li>
106
- <li><a href="../csstidy/csstidy.html#var$tokens">$tokens</a></li>
107
- <li><a href="../csstidy/csstidy.html#var$value">$value</a></li>
108
- <li><a href="../csstidy/csstidy.html#var$version">$version</a></li>
109
- </ul>
110
- </td>
111
-
112
-
113
- <td valign="top">
114
- <h3><a href="#class_methods">Methods</a></h3>
115
- <ul>
116
- <li><a href="../csstidy/csstidy.html#methodcsstidy">csstidy</a></li>
117
- <li><a href="../csstidy/csstidy.html#methodcss_add_property">css_add_property</a></li>
118
- <li><a href="../csstidy/csstidy.html#methodescaped">escaped</a></li>
119
- <li><a href="../csstidy/csstidy.html#methodexplode_selectors">explode_selectors</a></li>
120
- <li><a href="../csstidy/csstidy.html#methodget_cfg">get_cfg</a></li>
121
- <li><a href="../csstidy/csstidy.html#methodgvw_important">gvw_important</a></li>
122
- <li><a href="../csstidy/csstidy.html#methodis_important">is_important</a></li>
123
- <li><a href="../csstidy/csstidy.html#methodis_token">is_token</a></li>
124
- <li><a href="../csstidy/csstidy.html#methodload_template">load_template</a></li>
125
- <li><a href="../csstidy/csstidy.html#methodlog">log</a></li>
126
- <li><a href="../csstidy/csstidy.html#methodmerge_css_blocks">merge_css_blocks</a></li>
127
- <li><a href="../csstidy/csstidy.html#methodparse">parse</a></li>
128
- <li><a href="../csstidy/csstidy.html#methodparse_from_url">parse_from_url</a></li>
129
- <li><a href="../csstidy/csstidy.html#methodproperty_is_next">property_is_next</a></li>
130
- <li><a href="../csstidy/csstidy.html#methodproperty_is_valid">property_is_valid</a></li>
131
- <li><a href="../csstidy/csstidy.html#methodset_cfg">set_cfg</a></li>
132
- <li><a href="../csstidy/csstidy.html#method_add_token">_add_token</a></li>
133
- <li><a href="../csstidy/csstidy.html#method_unicode">_unicode</a></li>
134
- </ul>
135
- </td>
136
-
137
- </tr></table>
138
- <hr />
139
-
140
- <table width="100%" border="0"><tr>
141
-
142
-
143
-
144
-
145
-
146
-
147
- </tr></table>
148
- <hr />
149
-
150
- <a name="class_details"></a>
151
- <h3>Class Details</h3>
152
- <div class="tags">
153
- [line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a61">61</a>]<br />
154
- CSS Parser class<br /><br /><p>This class represents a CSS parser which reads CSS code and saves it in an array. In opposite to most other CSS parsers, it does not use regular expressions and thus has full CSS2 support and a higher reliability. Additional to that it applies some optimisations and fixes to the CSS code. An online version should be available here: http://cdburnerxp.se/cssparse/css_optimiser.php</p><br /><br /><br />
155
- <h4>Tags:</h4>
156
- <div class="tags">
157
- <table border="0" cellspacing="0" cellpadding="0">
158
- <tr>
159
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
160
- </tr>
161
- <tr>
162
- <td><b>author:</b>&nbsp;&nbsp;</td><td>Florian Schmitz (floele at gmail dot com) 2005-2006</td>
163
- </tr>
164
- </table>
165
- </div>
166
- </div><br /><br />
167
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
168
-
169
- <hr />
170
- <a name="class_vars"></a>
171
- <h3>Class Variables</h3>
172
- <div class="tags">
173
- <a name="var$added"></a>
174
- <p></p>
175
- <h4>$added = <span class="value">&nbsp;false</span></h4>
176
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a233">233</a>]</p>
177
- =true if something has been added to the current selector<br /><br /><br /><br />
178
- <h4>Tags:</h4>
179
- <div class="tags">
180
- <table border="0" cellspacing="0" cellpadding="0">
181
- <tr>
182
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
183
- </tr>
184
- </table>
185
- </div>
186
-
187
- <br />
188
- <div class="tags">
189
- <table border="0" cellspacing="0" cellpadding="0">
190
- <tr>
191
- <td><b>Type:</b>&nbsp;&nbsp;</td>
192
- <td>bool</td>
193
- </tr>
194
- </table>
195
- </div><br /><br />
196
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
197
- <a name="var$at"></a>
198
- <p></p>
199
- <h4>$at = <span class="value">&nbsp;''</span></h4>
200
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a150">150</a>]</p>
201
- Saves the current at rule (@media)<br /><br /><br /><br />
202
- <h4>Tags:</h4>
203
- <div class="tags">
204
- <table border="0" cellspacing="0" cellpadding="0">
205
- <tr>
206
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
207
- </tr>
208
- </table>
209
- </div>
210
-
211
- <br />
212
- <div class="tags">
213
- <table border="0" cellspacing="0" cellpadding="0">
214
- <tr>
215
- <td><b>Type:</b>&nbsp;&nbsp;</td>
216
- <td>string</td>
217
- </tr>
218
- </table>
219
- </div><br /><br />
220
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
221
- <a name="var$charset"></a>
222
- <p></p>
223
- <h4>$charset = <span class="value">&nbsp;''</span></h4>
224
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a98">98</a>]</p>
225
- Saves the CSS charset (@charset)<br /><br /><br /><br />
226
- <h4>Tags:</h4>
227
- <div class="tags">
228
- <table border="0" cellspacing="0" cellpadding="0">
229
- <tr>
230
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
231
- </tr>
232
- </table>
233
- </div>
234
-
235
- <br />
236
- <div class="tags">
237
- <table border="0" cellspacing="0" cellpadding="0">
238
- <tr>
239
- <td><b>Type:</b>&nbsp;&nbsp;</td>
240
- <td>string</td>
241
- </tr>
242
- </table>
243
- </div><br /><br />
244
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
245
- <a name="var$css"></a>
246
- <p></p>
247
- <h4>$css = <span class="value">array()</span></h4>
248
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a68">68</a>]</p>
249
- Saves the parsed CSS<br /><br /><br /><br />
250
- <h4>Tags:</h4>
251
- <div class="tags">
252
- <table border="0" cellspacing="0" cellpadding="0">
253
- <tr>
254
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
255
- </tr>
256
- </table>
257
- </div>
258
-
259
- <br />
260
- <div class="tags">
261
- <table border="0" cellspacing="0" cellpadding="0">
262
- <tr>
263
- <td><b>Type:</b>&nbsp;&nbsp;</td>
264
- <td>array</td>
265
- </tr>
266
- </table>
267
- </div><br /><br />
268
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
269
- <a name="var$from"></a>
270
- <p></p>
271
- <h4>$from = <span class="value">&nbsp;''</span></h4>
272
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a212">212</a>]</p>
273
- Status from which the parser switched to ic or instr<br /><br /><br /><br />
274
- <h4>Tags:</h4>
275
- <div class="tags">
276
- <table border="0" cellspacing="0" cellpadding="0">
277
- <tr>
278
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
279
- </tr>
280
- </table>
281
- </div>
282
-
283
- <br />
284
- <div class="tags">
285
- <table border="0" cellspacing="0" cellpadding="0">
286
- <tr>
287
- <td><b>Type:</b>&nbsp;&nbsp;</td>
288
- <td>string</td>
289
- </tr>
290
- </table>
291
- </div><br /><br />
292
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
293
- <a name="var$import"></a>
294
- <p></p>
295
- <h4>$import = <span class="value">array()</span></h4>
296
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a105">105</a>]</p>
297
- Saves all @import URLs<br /><br /><br /><br />
298
- <h4>Tags:</h4>
299
- <div class="tags">
300
- <table border="0" cellspacing="0" cellpadding="0">
301
- <tr>
302
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
303
- </tr>
304
- </table>
305
- </div>
306
-
307
- <br />
308
- <div class="tags">
309
- <table border="0" cellspacing="0" cellpadding="0">
310
- <tr>
311
- <td><b>Type:</b>&nbsp;&nbsp;</td>
312
- <td>array</td>
313
- </tr>
314
- </table>
315
- </div><br /><br />
316
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
317
- <a name="var$invalid_at"></a>
318
- <p></p>
319
- <h4>$invalid_at = <span class="value">&nbsp;false</span></h4>
320
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a226">226</a>]</p>
321
- =true if in invalid at-rule<br /><br /><br /><br />
322
- <h4>Tags:</h4>
323
- <div class="tags">
324
- <table border="0" cellspacing="0" cellpadding="0">
325
- <tr>
326
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
327
- </tr>
328
- </table>
329
- </div>
330
-
331
- <br />
332
- <div class="tags">
333
- <table border="0" cellspacing="0" cellpadding="0">
334
- <tr>
335
- <td><b>Type:</b>&nbsp;&nbsp;</td>
336
- <td>bool</td>
337
- </tr>
338
- </table>
339
- </div><br /><br />
340
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
341
- <a name="var$line"></a>
342
- <p></p>
343
- <h4>$line = <span class="value">&nbsp;1</span></h4>
344
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a247">247</a>]</p>
345
- Saves the line number<br /><br /><br /><br />
346
- <h4>Tags:</h4>
347
- <div class="tags">
348
- <table border="0" cellspacing="0" cellpadding="0">
349
- <tr>
350
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
351
- </tr>
352
- </table>
353
- </div>
354
-
355
- <br />
356
- <div class="tags">
357
- <table border="0" cellspacing="0" cellpadding="0">
358
- <tr>
359
- <td><b>Type:</b>&nbsp;&nbsp;</td>
360
- <td>integer</td>
361
- </tr>
362
- </table>
363
- </div><br /><br />
364
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
365
- <a name="var$log"></a>
366
- <p></p>
367
- <h4>$log = <span class="value">array()</span></h4>
368
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a240">240</a>]</p>
369
- Array which saves the message log<br /><br /><br /><br />
370
- <h4>Tags:</h4>
371
- <div class="tags">
372
- <table border="0" cellspacing="0" cellpadding="0">
373
- <tr>
374
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
375
- </tr>
376
- </table>
377
- </div>
378
-
379
- <br />
380
- <div class="tags">
381
- <table border="0" cellspacing="0" cellpadding="0">
382
- <tr>
383
- <td><b>Type:</b>&nbsp;&nbsp;</td>
384
- <td>array</td>
385
- </tr>
386
- </table>
387
- </div><br /><br />
388
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
389
- <a name="var$namespace"></a>
390
- <p></p>
391
- <h4>$namespace = <span class="value">&nbsp;''</span></h4>
392
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a112">112</a>]</p>
393
- Saves the namespace<br /><br /><br /><br />
394
- <h4>Tags:</h4>
395
- <div class="tags">
396
- <table border="0" cellspacing="0" cellpadding="0">
397
- <tr>
398
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
399
- </tr>
400
- </table>
401
- </div>
402
-
403
- <br />
404
- <div class="tags">
405
- <table border="0" cellspacing="0" cellpadding="0">
406
- <tr>
407
- <td><b>Type:</b>&nbsp;&nbsp;</td>
408
- <td>string</td>
409
- </tr>
410
- </table>
411
- </div><br /><br />
412
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
413
- <a name="var$optimise"></a>
414
- <p></p>
415
- <h4>$optimise = <span class="value"></span></h4>
416
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a91">91</a>]</p>
417
- Optimiser class<br /><br /><br /><br />
418
- <h4>Tags:</h4>
419
- <div class="tags">
420
- <table border="0" cellspacing="0" cellpadding="0">
421
- <tr>
422
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
423
- </tr>
424
- <tr>
425
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a></td>
426
- </tr>
427
- </table>
428
- </div>
429
-
430
- <br />
431
- <div class="tags">
432
- <table border="0" cellspacing="0" cellpadding="0">
433
- <tr>
434
- <td><b>Type:</b>&nbsp;&nbsp;</td>
435
- <td>object</td>
436
- </tr>
437
- </table>
438
- </div><br /><br />
439
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
440
- <a name="var$print"></a>
441
- <p></p>
442
- <h4>$print = <span class="value"></span></h4>
443
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a83">83</a>]</p>
444
- Printer class<br /><br /><br /><br />
445
- <h4>Tags:</h4>
446
- <div class="tags">
447
- <table border="0" cellspacing="0" cellpadding="0">
448
- <tr>
449
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
450
- </tr>
451
- <tr>
452
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy_print.html">csstidy_print</a></td>
453
- </tr>
454
- </table>
455
- </div>
456
-
457
- <br />
458
- <div class="tags">
459
- <table border="0" cellspacing="0" cellpadding="0">
460
- <tr>
461
- <td><b>Type:</b>&nbsp;&nbsp;</td>
462
- <td>object</td>
463
- </tr>
464
- </table>
465
- </div><br /><br />
466
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
467
- <a name="var$property"></a>
468
- <p></p>
469
- <h4>$property = <span class="value">&nbsp;''</span></h4>
470
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a164">164</a>]</p>
471
- Saves the current property<br /><br /><br /><br />
472
- <h4>Tags:</h4>
473
- <div class="tags">
474
- <table border="0" cellspacing="0" cellpadding="0">
475
- <tr>
476
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
477
- </tr>
478
- </table>
479
- </div>
480
-
481
- <br />
482
- <div class="tags">
483
- <table border="0" cellspacing="0" cellpadding="0">
484
- <tr>
485
- <td><b>Type:</b>&nbsp;&nbsp;</td>
486
- <td>string</td>
487
- </tr>
488
- </table>
489
- </div><br /><br />
490
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
491
- <a name="var$selector"></a>
492
- <p></p>
493
- <h4>$selector = <span class="value">&nbsp;''</span></h4>
494
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a157">157</a>]</p>
495
- Saves the current selector<br /><br /><br /><br />
496
- <h4>Tags:</h4>
497
- <div class="tags">
498
- <table border="0" cellspacing="0" cellpadding="0">
499
- <tr>
500
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
501
- </tr>
502
- </table>
503
- </div>
504
-
505
- <br />
506
- <div class="tags">
507
- <table border="0" cellspacing="0" cellpadding="0">
508
- <tr>
509
- <td><b>Type:</b>&nbsp;&nbsp;</td>
510
- <td>string</td>
511
- </tr>
512
- </table>
513
- </div><br /><br />
514
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
515
- <a name="var$sel_separate"></a>
516
- <p></p>
517
- <h4>$sel_separate = <span class="value">array()</span></h4>
518
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a171">171</a>]</p>
519
- Saves the position of , in selectors<br /><br /><br /><br />
520
- <h4>Tags:</h4>
521
- <div class="tags">
522
- <table border="0" cellspacing="0" cellpadding="0">
523
- <tr>
524
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
525
- </tr>
526
- </table>
527
- </div>
528
-
529
- <br />
530
- <div class="tags">
531
- <table border="0" cellspacing="0" cellpadding="0">
532
- <tr>
533
- <td><b>Type:</b>&nbsp;&nbsp;</td>
534
- <td>array</td>
535
- </tr>
536
- </table>
537
- </div><br /><br />
538
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
539
- <a name="var$settings"></a>
540
- <p></p>
541
- <h4>$settings = <span class="value">array()</span></h4>
542
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a126">126</a>]</p>
543
- Stores the settings<br /><br /><br /><br />
544
- <h4>Tags:</h4>
545
- <div class="tags">
546
- <table border="0" cellspacing="0" cellpadding="0">
547
- <tr>
548
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
549
- </tr>
550
- </table>
551
- </div>
552
-
553
- <br />
554
- <div class="tags">
555
- <table border="0" cellspacing="0" cellpadding="0">
556
- <tr>
557
- <td><b>Type:</b>&nbsp;&nbsp;</td>
558
- <td>array</td>
559
- </tr>
560
- </table>
561
- </div><br /><br />
562
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
563
- <a name="var$status"></a>
564
- <p></p>
565
- <h4>$status = <span class="value">&nbsp;'is'</span></h4>
566
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a142">142</a>]</p>
567
- Saves the parser-status.<br /><br /><p>Possible values: <ul><li>is = in selector</li><li>ip = in property</li><li>iv = in value</li><li>instr = in string (started at &quot; or ' or ( )</li><li>ic = in comment (ignore everything)</li><li>at = in @-block</li></ul></p><br /><br /><br />
568
- <h4>Tags:</h4>
569
- <div class="tags">
570
- <table border="0" cellspacing="0" cellpadding="0">
571
- <tr>
572
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
573
- </tr>
574
- </table>
575
- </div>
576
-
577
- <br />
578
- <div class="tags">
579
- <table border="0" cellspacing="0" cellpadding="0">
580
- <tr>
581
- <td><b>Type:</b>&nbsp;&nbsp;</td>
582
- <td>string</td>
583
- </tr>
584
- </table>
585
- </div><br /><br />
586
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
587
- <a name="var$str_char"></a>
588
- <p></p>
589
- <h4>$str_char = <span class="value">&nbsp;''</span></h4>
590
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a205">205</a>]</p>
591
- Saves the char which opened the last string<br /><br /><br /><br />
592
- <h4>Tags:</h4>
593
- <div class="tags">
594
- <table border="0" cellspacing="0" cellpadding="0">
595
- <tr>
596
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
597
- </tr>
598
- </table>
599
- </div>
600
-
601
- <br />
602
- <div class="tags">
603
- <table border="0" cellspacing="0" cellpadding="0">
604
- <tr>
605
- <td><b>Type:</b>&nbsp;&nbsp;</td>
606
- <td>string</td>
607
- </tr>
608
- </table>
609
- </div><br /><br />
610
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
611
- <a name="var$str_in_str"></a>
612
- <p></p>
613
- <h4>$str_in_str = <span class="value">&nbsp;false</span></h4>
614
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a219">219</a>]</p>
615
- Variable needed to manage string-in-strings, for example url(&quot;foo.png&quot;)<br /><br /><br /><br />
616
- <h4>Tags:</h4>
617
- <div class="tags">
618
- <table border="0" cellspacing="0" cellpadding="0">
619
- <tr>
620
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
621
- </tr>
622
- </table>
623
- </div>
624
-
625
- <br />
626
- <div class="tags">
627
- <table border="0" cellspacing="0" cellpadding="0">
628
- <tr>
629
- <td><b>Type:</b>&nbsp;&nbsp;</td>
630
- <td>string</td>
631
- </tr>
632
- </table>
633
- </div><br /><br />
634
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
635
- <a name="var$sub_value"></a>
636
- <p></p>
637
- <h4>$sub_value = <span class="value">&nbsp;''</span></h4>
638
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a190">190</a>]</p>
639
- Saves the current sub-value<br /><br /><p>Example for a subvalue: background:url(foo.png) red no-repeat; &quot;url(foo.png)&quot;, &quot;red&quot;, and &quot;no-repeat&quot; are subvalues, seperated by whitespace</p><br /><br /><br />
640
- <h4>Tags:</h4>
641
- <div class="tags">
642
- <table border="0" cellspacing="0" cellpadding="0">
643
- <tr>
644
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
645
- </tr>
646
- </table>
647
- </div>
648
-
649
- <br />
650
- <div class="tags">
651
- <table border="0" cellspacing="0" cellpadding="0">
652
- <tr>
653
- <td><b>Type:</b>&nbsp;&nbsp;</td>
654
- <td>string</td>
655
- </tr>
656
- </table>
657
- </div><br /><br />
658
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
659
- <a name="var$sub_value_arr"></a>
660
- <p></p>
661
- <h4>$sub_value_arr = <span class="value">array()</span></h4>
662
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a198">198</a>]</p>
663
- Array which saves all subvalues for a property.<br /><br /><br /><br />
664
- <h4>Tags:</h4>
665
- <div class="tags">
666
- <table border="0" cellspacing="0" cellpadding="0">
667
- <tr>
668
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
669
- </tr>
670
- <tr>
671
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy.html#var$sub_value">csstidy::$sub_value</a></td>
672
- </tr>
673
- </table>
674
- </div>
675
-
676
- <br />
677
- <div class="tags">
678
- <table border="0" cellspacing="0" cellpadding="0">
679
- <tr>
680
- <td><b>Type:</b>&nbsp;&nbsp;</td>
681
- <td>array</td>
682
- </tr>
683
- </table>
684
- </div><br /><br />
685
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
686
- <a name="var$tokens"></a>
687
- <p></p>
688
- <h4>$tokens = <span class="value">array()</span></h4>
689
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a75">75</a>]</p>
690
- Saves the parsed CSS (raw)<br /><br /><br /><br />
691
- <h4>Tags:</h4>
692
- <div class="tags">
693
- <table border="0" cellspacing="0" cellpadding="0">
694
- <tr>
695
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
696
- </tr>
697
- </table>
698
- </div>
699
-
700
- <br />
701
- <div class="tags">
702
- <table border="0" cellspacing="0" cellpadding="0">
703
- <tr>
704
- <td><b>Type:</b>&nbsp;&nbsp;</td>
705
- <td>array</td>
706
- </tr>
707
- </table>
708
- </div><br /><br />
709
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
710
- <a name="var$value"></a>
711
- <p></p>
712
- <h4>$value = <span class="value">&nbsp;''</span></h4>
713
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a178">178</a>]</p>
714
- Saves the current value<br /><br /><br /><br />
715
- <h4>Tags:</h4>
716
- <div class="tags">
717
- <table border="0" cellspacing="0" cellpadding="0">
718
- <tr>
719
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
720
- </tr>
721
- </table>
722
- </div>
723
-
724
- <br />
725
- <div class="tags">
726
- <table border="0" cellspacing="0" cellpadding="0">
727
- <tr>
728
- <td><b>Type:</b>&nbsp;&nbsp;</td>
729
- <td>string</td>
730
- </tr>
731
- </table>
732
- </div><br /><br />
733
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
734
- <a name="var$version"></a>
735
- <p></p>
736
- <h4>$version = <span class="value">&nbsp;'1.2'</span></h4>
737
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a119">119</a>]</p>
738
- Contains the version of csstidy<br /><br /><br /><br />
739
- <h4>Tags:</h4>
740
- <div class="tags">
741
- <table border="0" cellspacing="0" cellpadding="0">
742
- <tr>
743
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
744
- </tr>
745
- </table>
746
- </div>
747
-
748
- <br />
749
- <div class="tags">
750
- <table border="0" cellspacing="0" cellpadding="0">
751
- <tr>
752
- <td><b>Type:</b>&nbsp;&nbsp;</td>
753
- <td>string</td>
754
- </tr>
755
- </table>
756
- </div><br /><br />
757
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
758
- </div><br />
759
-
760
- <hr />
761
- <a name="class_methods"></a>
762
- <h3>Class Methods</h3>
763
- <div class="tags">
764
- <hr />
765
- <a name="methodcsstidy"></a>
766
- <h3>constructor csstidy <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a254">254</a>]</span></h3>
767
- <div class="function">
768
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
769
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
770
- <code>csstidy csstidy(
771
- )</code>
772
- </td></tr></table>
773
- </td></tr></table><br />
774
-
775
- Loads standard template and sets default settings<br /><br /><br /><br />
776
- <h4>Tags:</h4>
777
- <div class="tags">
778
- <table border="0" cellspacing="0" cellpadding="0">
779
- <tr>
780
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
781
- </tr>
782
- <tr>
783
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
784
- </tr>
785
- </table>
786
- </div>
787
- <br /><br />
788
-
789
-
790
- <div class="top">[ <a href="#top">Top</a> ]</div>
791
- </div>
792
- <hr />
793
- <a name="methodcss_add_property"></a>
794
- <h3>method css_add_property <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a877">877</a>]</span></h3>
795
- <div class="function">
796
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
797
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
798
- <code>void css_add_property(
799
- string
800
- $media, string
801
- $selector, string
802
- $property, string
803
- $new_val)</code>
804
- </td></tr></table>
805
- </td></tr></table><br />
806
-
807
- Adds a property with value to the existing CSS code<br /><br /><br /><br />
808
- <h4>Tags:</h4>
809
- <div class="tags">
810
- <table border="0" cellspacing="0" cellpadding="0">
811
- <tr>
812
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
813
- </tr>
814
- <tr>
815
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
816
- </tr>
817
- </table>
818
- </div>
819
- <br /><br />
820
-
821
-
822
- <h4>Parameters:</h4>
823
- <div class="tags">
824
- <table border="0" cellspacing="0" cellpadding="0">
825
- <tr>
826
- <td class="type">string&nbsp;&nbsp;</td>
827
- <td><b>$media</b>&nbsp;&nbsp;</td>
828
- <td></td>
829
- </tr>
830
- <tr>
831
- <td class="type">string&nbsp;&nbsp;</td>
832
- <td><b>$selector</b>&nbsp;&nbsp;</td>
833
- <td></td>
834
- </tr>
835
- <tr>
836
- <td class="type">string&nbsp;&nbsp;</td>
837
- <td><b>$property</b>&nbsp;&nbsp;</td>
838
- <td></td>
839
- </tr>
840
- <tr>
841
- <td class="type">string&nbsp;&nbsp;</td>
842
- <td><b>$new_val</b>&nbsp;&nbsp;</td>
843
- <td></td>
844
- </tr>
845
- </table>
846
- </div><br />
847
- <div class="top">[ <a href="#top">Top</a> ]</div>
848
- </div>
849
- <hr />
850
- <a name="methodescaped"></a>
851
- <h3>method escaped <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a863">863</a>]</span></h3>
852
- <div class="function">
853
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
854
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
855
- <code>bool escaped(
856
- string
857
- &$string, integer
858
- $pos)</code>
859
- </td></tr></table>
860
- </td></tr></table><br />
861
-
862
- Checks if a character is escaped (and returns true if it is)<br /><br /><br /><br />
863
- <h4>Tags:</h4>
864
- <div class="tags">
865
- <table border="0" cellspacing="0" cellpadding="0">
866
- <tr>
867
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.02</td>
868
- </tr>
869
- <tr>
870
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
871
- </tr>
872
- </table>
873
- </div>
874
- <br /><br />
875
-
876
-
877
- <h4>Parameters:</h4>
878
- <div class="tags">
879
- <table border="0" cellspacing="0" cellpadding="0">
880
- <tr>
881
- <td class="type">string&nbsp;&nbsp;</td>
882
- <td><b>$string</b>&nbsp;&nbsp;</td>
883
- <td></td>
884
- </tr>
885
- <tr>
886
- <td class="type">integer&nbsp;&nbsp;</td>
887
- <td><b>$pos</b>&nbsp;&nbsp;</td>
888
- <td></td>
889
- </tr>
890
- </table>
891
- </div><br />
892
- <div class="top">[ <a href="#top">Top</a> ]</div>
893
- </div>
894
- <hr />
895
- <a name="methodexplode_selectors"></a>
896
- <h3>method explode_selectors <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a825">825</a>]</span></h3>
897
- <div class="function">
898
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
899
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
900
- <code>void explode_selectors(
901
- )</code>
902
- </td></tr></table>
903
- </td></tr></table><br />
904
-
905
- Explodes selectors<br /><br /><br /><br />
906
- <h4>Tags:</h4>
907
- <div class="tags">
908
- <table border="0" cellspacing="0" cellpadding="0">
909
- <tr>
910
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
911
- </tr>
912
- <tr>
913
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
914
- </tr>
915
- </table>
916
- </div>
917
- <br /><br />
918
-
919
-
920
- <div class="top">[ <a href="#top">Top</a> ]</div>
921
- </div>
922
- <hr />
923
- <a name="methodget_cfg"></a>
924
- <h3>method get_cfg <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a283">283</a>]</span></h3>
925
- <div class="function">
926
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
927
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
928
- <code>mixed get_cfg(
929
- string
930
- $setting)</code>
931
- </td></tr></table>
932
- </td></tr></table><br />
933
-
934
- Get the value of a setting.<br /><br /><br /><br />
935
- <h4>Tags:</h4>
936
- <div class="tags">
937
- <table border="0" cellspacing="0" cellpadding="0">
938
- <tr>
939
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
940
- </tr>
941
- <tr>
942
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
943
- </tr>
944
- </table>
945
- </div>
946
- <br /><br />
947
-
948
-
949
- <h4>Parameters:</h4>
950
- <div class="tags">
951
- <table border="0" cellspacing="0" cellpadding="0">
952
- <tr>
953
- <td class="type">string&nbsp;&nbsp;</td>
954
- <td><b>$setting</b>&nbsp;&nbsp;</td>
955
- <td></td>
956
- </tr>
957
- </table>
958
- </div><br />
959
- <div class="top">[ <a href="#top">Top</a> ]</div>
960
- </div>
961
- <hr />
962
- <a name="methodgvw_important"></a>
963
- <h3>method gvw_important <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a933">933</a>]</span></h3>
964
- <div class="function">
965
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
966
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
967
- <code>string gvw_important(
968
- string
969
- $value)</code>
970
- </td></tr></table>
971
- </td></tr></table><br />
972
-
973
- Returns a value without !important<br /><br /><br /><br />
974
- <h4>Tags:</h4>
975
- <div class="tags">
976
- <table border="0" cellspacing="0" cellpadding="0">
977
- <tr>
978
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
979
- </tr>
980
- <tr>
981
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
982
- </tr>
983
- </table>
984
- </div>
985
- <br /><br />
986
-
987
-
988
- <h4>Parameters:</h4>
989
- <div class="tags">
990
- <table border="0" cellspacing="0" cellpadding="0">
991
- <tr>
992
- <td class="type">string&nbsp;&nbsp;</td>
993
- <td><b>$value</b>&nbsp;&nbsp;</td>
994
- <td></td>
995
- </tr>
996
- </table>
997
- </div><br />
998
- <div class="top">[ <a href="#top">Top</a> ]</div>
999
- </div>
1000
- <hr />
1001
- <a name="methodis_important"></a>
1002
- <h3>method is_important <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a921">921</a>]</span></h3>
1003
- <div class="function">
1004
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1005
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1006
- <code>bool is_important(
1007
- string
1008
- &$value)</code>
1009
- </td></tr></table>
1010
- </td></tr></table><br />
1011
-
1012
- Checks if $value is !important.<br /><br /><br /><br />
1013
- <h4>Tags:</h4>
1014
- <div class="tags">
1015
- <table border="0" cellspacing="0" cellpadding="0">
1016
- <tr>
1017
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
1018
- </tr>
1019
- <tr>
1020
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
1021
- </tr>
1022
- </table>
1023
- </div>
1024
- <br /><br />
1025
-
1026
-
1027
- <h4>Parameters:</h4>
1028
- <div class="tags">
1029
- <table border="0" cellspacing="0" cellpadding="0">
1030
- <tr>
1031
- <td class="type">string&nbsp;&nbsp;</td>
1032
- <td><b>$value</b>&nbsp;&nbsp;</td>
1033
- <td></td>
1034
- </tr>
1035
- </table>
1036
- </div><br />
1037
- <div class="top">[ <a href="#top">Top</a> ]</div>
1038
- </div>
1039
- <hr />
1040
- <a name="methodis_token"></a>
1041
- <h3>method is_token <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a444">444</a>]</span></h3>
1042
- <div class="function">
1043
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1044
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1045
- <code>void is_token(
1046
- string
1047
- &$string, integer
1048
- $i)</code>
1049
- </td></tr></table>
1050
- </td></tr></table><br />
1051
-
1052
- Checks if there is a token at the current position<br /><br /><br /><br />
1053
- <h4>Tags:</h4>
1054
- <div class="tags">
1055
- <table border="0" cellspacing="0" cellpadding="0">
1056
- <tr>
1057
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.11</td>
1058
- </tr>
1059
- <tr>
1060
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
1061
- </tr>
1062
- </table>
1063
- </div>
1064
- <br /><br />
1065
-
1066
-
1067
- <h4>Parameters:</h4>
1068
- <div class="tags">
1069
- <table border="0" cellspacing="0" cellpadding="0">
1070
- <tr>
1071
- <td class="type">string&nbsp;&nbsp;</td>
1072
- <td><b>$string</b>&nbsp;&nbsp;</td>
1073
- <td></td>
1074
- </tr>
1075
- <tr>
1076
- <td class="type">integer&nbsp;&nbsp;</td>
1077
- <td><b>$i</b>&nbsp;&nbsp;</td>
1078
- <td></td>
1079
- </tr>
1080
- </table>
1081
- </div><br />
1082
- <div class="top">[ <a href="#top">Top</a> ]</div>
1083
- </div>
1084
- <hr />
1085
- <a name="methodload_template"></a>
1086
- <h3>method load_template <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a404">404</a>]</span></h3>
1087
- <div class="function">
1088
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1089
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1090
- <code>void load_template(
1091
- string
1092
- $content, [bool
1093
- $from_file = true])</code>
1094
- </td></tr></table>
1095
- </td></tr></table><br />
1096
-
1097
- Loads a new template<br /><br /><br /><br />
1098
- <h4>Tags:</h4>
1099
- <div class="tags">
1100
- <table border="0" cellspacing="0" cellpadding="0">
1101
- <tr>
1102
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="http://csstidy.sourceforge.net/templates.php">http://csstidy.sourceforge.net/templates.php</a></td>
1103
- </tr>
1104
- <tr>
1105
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td>
1106
- </tr>
1107
- <tr>
1108
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
1109
- </tr>
1110
- </table>
1111
- </div>
1112
- <br /><br />
1113
-
1114
-
1115
- <h4>Parameters:</h4>
1116
- <div class="tags">
1117
- <table border="0" cellspacing="0" cellpadding="0">
1118
- <tr>
1119
- <td class="type">string&nbsp;&nbsp;</td>
1120
- <td><b>$content</b>&nbsp;&nbsp;</td>
1121
- <td>either filename (if $from_file == true), content of a template file, &quot;high_compression&quot;, &quot;highest_compression&quot;, &quot;low_compression&quot;, or &quot;default&quot;</td>
1122
- </tr>
1123
- <tr>
1124
- <td class="type">bool&nbsp;&nbsp;</td>
1125
- <td><b>$from_file</b>&nbsp;&nbsp;</td>
1126
- <td>uses $content as filename if true</td>
1127
- </tr>
1128
- </table>
1129
- </div><br />
1130
- <div class="top">[ <a href="#top">Top</a> ]</div>
1131
- </div>
1132
- <hr />
1133
- <a name="methodlog"></a>
1134
- <h3>method log <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a332">332</a>]</span></h3>
1135
- <div class="function">
1136
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1137
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1138
- <code>void log(
1139
- string
1140
- $message, string
1141
- $type, [integer
1142
- $line = -1])</code>
1143
- </td></tr></table>
1144
- </td></tr></table><br />
1145
-
1146
- Add a message to the message log<br /><br /><br /><br />
1147
- <h4>Tags:</h4>
1148
- <div class="tags">
1149
- <table border="0" cellspacing="0" cellpadding="0">
1150
- <tr>
1151
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
1152
- </tr>
1153
- <tr>
1154
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
1155
- </tr>
1156
- </table>
1157
- </div>
1158
- <br /><br />
1159
-
1160
-
1161
- <h4>Parameters:</h4>
1162
- <div class="tags">
1163
- <table border="0" cellspacing="0" cellpadding="0">
1164
- <tr>
1165
- <td class="type">string&nbsp;&nbsp;</td>
1166
- <td><b>$message</b>&nbsp;&nbsp;</td>
1167
- <td></td>
1168
- </tr>
1169
- <tr>
1170
- <td class="type">string&nbsp;&nbsp;</td>
1171
- <td><b>$type</b>&nbsp;&nbsp;</td>
1172
- <td></td>
1173
- </tr>
1174
- <tr>
1175
- <td class="type">integer&nbsp;&nbsp;</td>
1176
- <td><b>$line</b>&nbsp;&nbsp;</td>
1177
- <td></td>
1178
- </tr>
1179
- </table>
1180
- </div><br />
1181
- <div class="top">[ <a href="#top">Top</a> ]</div>
1182
- </div>
1183
- <hr />
1184
- <a name="methodmerge_css_blocks"></a>
1185
- <h3>method merge_css_blocks <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a906">906</a>]</span></h3>
1186
- <div class="function">
1187
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1188
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1189
- <code>void merge_css_blocks(
1190
- string
1191
- $media, string
1192
- $selector, array
1193
- $css_add)</code>
1194
- </td></tr></table>
1195
- </td></tr></table><br />
1196
-
1197
- Adds CSS to an existing media/selector<br /><br /><br /><br />
1198
- <h4>Tags:</h4>
1199
- <div class="tags">
1200
- <table border="0" cellspacing="0" cellpadding="0">
1201
- <tr>
1202
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td>
1203
- </tr>
1204
- <tr>
1205
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
1206
- </tr>
1207
- </table>
1208
- </div>
1209
- <br /><br />
1210
-
1211
-
1212
- <h4>Parameters:</h4>
1213
- <div class="tags">
1214
- <table border="0" cellspacing="0" cellpadding="0">
1215
- <tr>
1216
- <td class="type">string&nbsp;&nbsp;</td>
1217
- <td><b>$media</b>&nbsp;&nbsp;</td>
1218
- <td></td>
1219
- </tr>
1220
- <tr>
1221
- <td class="type">string&nbsp;&nbsp;</td>
1222
- <td><b>$selector</b>&nbsp;&nbsp;</td>
1223
- <td></td>
1224
- </tr>
1225
- <tr>
1226
- <td class="type">array&nbsp;&nbsp;</td>
1227
- <td><b>$css_add</b>&nbsp;&nbsp;</td>
1228
- <td></td>
1229
- </tr>
1230
- </table>
1231
- </div><br />
1232
- <div class="top">[ <a href="#top">Top</a> ]</div>
1233
- </div>
1234
- <hr />
1235
- <a name="methodparse"></a>
1236
- <h3>method parse <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a458">458</a>]</span></h3>
1237
- <div class="function">
1238
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1239
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1240
- <code>bool parse(
1241
- string
1242
- $string)</code>
1243
- </td></tr></table>
1244
- </td></tr></table><br />
1245
-
1246
- Parses CSS in $string. The code is saved as array in $this-&gt;css<br /><br /><br /><br />
1247
- <h4>Tags:</h4>
1248
- <div class="tags">
1249
- <table border="0" cellspacing="0" cellpadding="0">
1250
- <tr>
1251
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td>
1252
- </tr>
1253
- <tr>
1254
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
1255
- </tr>
1256
- </table>
1257
- </div>
1258
- <br /><br />
1259
-
1260
-
1261
- <h4>Parameters:</h4>
1262
- <div class="tags">
1263
- <table border="0" cellspacing="0" cellpadding="0">
1264
- <tr>
1265
- <td class="type">string&nbsp;&nbsp;</td>
1266
- <td><b>$string</b>&nbsp;&nbsp;</td>
1267
- <td>the CSS code</td>
1268
- </tr>
1269
- </table>
1270
- </div><br />
1271
- <div class="top">[ <a href="#top">Top</a> ]</div>
1272
- </div>
1273
- <hr />
1274
- <a name="methodparse_from_url"></a>
1275
- <h3>method parse_from_url <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a432">432</a>]</span></h3>
1276
- <div class="function">
1277
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1278
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1279
- <code>void parse_from_url(
1280
- string
1281
- $url)</code>
1282
- </td></tr></table>
1283
- </td></tr></table><br />
1284
-
1285
- Starts parsing from URL<br /><br /><br /><br />
1286
- <h4>Tags:</h4>
1287
- <div class="tags">
1288
- <table border="0" cellspacing="0" cellpadding="0">
1289
- <tr>
1290
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
1291
- </tr>
1292
- <tr>
1293
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
1294
- </tr>
1295
- </table>
1296
- </div>
1297
- <br /><br />
1298
-
1299
-
1300
- <h4>Parameters:</h4>
1301
- <div class="tags">
1302
- <table border="0" cellspacing="0" cellpadding="0">
1303
- <tr>
1304
- <td class="type">string&nbsp;&nbsp;</td>
1305
- <td><b>$url</b>&nbsp;&nbsp;</td>
1306
- <td></td>
1307
- </tr>
1308
- </table>
1309
- </div><br />
1310
- <div class="top">[ <a href="#top">Top</a> ]</div>
1311
- </div>
1312
- <hr />
1313
- <a name="methodproperty_is_next"></a>
1314
- <h3>method property_is_next <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a955">955</a>]</span></h3>
1315
- <div class="function">
1316
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1317
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1318
- <code>bool property_is_next(
1319
- string
1320
- $istring, integer
1321
- $pos)</code>
1322
- </td></tr></table>
1323
- </td></tr></table><br />
1324
-
1325
- Checks if the next word in a string from pos is a CSS property<br /><br /><br /><br />
1326
- <h4>Tags:</h4>
1327
- <div class="tags">
1328
- <table border="0" cellspacing="0" cellpadding="0">
1329
- <tr>
1330
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
1331
- </tr>
1332
- <tr>
1333
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
1334
- </tr>
1335
- </table>
1336
- </div>
1337
- <br /><br />
1338
-
1339
-
1340
- <h4>Parameters:</h4>
1341
- <div class="tags">
1342
- <table border="0" cellspacing="0" cellpadding="0">
1343
- <tr>
1344
- <td class="type">string&nbsp;&nbsp;</td>
1345
- <td><b>$istring</b>&nbsp;&nbsp;</td>
1346
- <td></td>
1347
- </tr>
1348
- <tr>
1349
- <td class="type">integer&nbsp;&nbsp;</td>
1350
- <td><b>$pos</b>&nbsp;&nbsp;</td>
1351
- <td></td>
1352
- </tr>
1353
- </table>
1354
- </div><br />
1355
- <div class="top">[ <a href="#top">Top</a> ]</div>
1356
- </div>
1357
- <hr />
1358
- <a name="methodproperty_is_valid"></a>
1359
- <h3>method property_is_valid <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a980">980</a>]</span></h3>
1360
- <div class="function">
1361
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1362
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1363
- <code>bool; property_is_valid(
1364
- string
1365
- $property)</code>
1366
- </td></tr></table>
1367
- </td></tr></table><br />
1368
-
1369
- Checks if a property is valid<br /><br /><br /><br />
1370
- <h4>Tags:</h4>
1371
- <div class="tags">
1372
- <table border="0" cellspacing="0" cellpadding="0">
1373
- <tr>
1374
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
1375
- </tr>
1376
- <tr>
1377
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
1378
- </tr>
1379
- </table>
1380
- </div>
1381
- <br /><br />
1382
-
1383
-
1384
- <h4>Parameters:</h4>
1385
- <div class="tags">
1386
- <table border="0" cellspacing="0" cellpadding="0">
1387
- <tr>
1388
- <td class="type">string&nbsp;&nbsp;</td>
1389
- <td><b>$property</b>&nbsp;&nbsp;</td>
1390
- <td></td>
1391
- </tr>
1392
- </table>
1393
- </div><br />
1394
- <div class="top">[ <a href="#top">Top</a> ]</div>
1395
- </div>
1396
- <hr />
1397
- <a name="methodset_cfg"></a>
1398
- <h3>method set_cfg <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a300">300</a>]</span></h3>
1399
- <div class="function">
1400
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1401
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1402
- <code>bool set_cfg(
1403
- string
1404
- $setting, mixed
1405
- $value)</code>
1406
- </td></tr></table>
1407
- </td></tr></table><br />
1408
-
1409
- Set the value of a setting.<br /><br /><br /><br />
1410
- <h4>Tags:</h4>
1411
- <div class="tags">
1412
- <table border="0" cellspacing="0" cellpadding="0">
1413
- <tr>
1414
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
1415
- </tr>
1416
- <tr>
1417
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
1418
- </tr>
1419
- </table>
1420
- </div>
1421
- <br /><br />
1422
-
1423
-
1424
- <h4>Parameters:</h4>
1425
- <div class="tags">
1426
- <table border="0" cellspacing="0" cellpadding="0">
1427
- <tr>
1428
- <td class="type">string&nbsp;&nbsp;</td>
1429
- <td><b>$setting</b>&nbsp;&nbsp;</td>
1430
- <td></td>
1431
- </tr>
1432
- <tr>
1433
- <td class="type">mixed&nbsp;&nbsp;</td>
1434
- <td><b>$value</b>&nbsp;&nbsp;</td>
1435
- <td></td>
1436
- </tr>
1437
- </table>
1438
- </div><br />
1439
- <div class="top">[ <a href="#top">Top</a> ]</div>
1440
- </div>
1441
- <hr />
1442
- <a name="method_add_token"></a>
1443
- <h3>method _add_token <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a318">318</a>]</span></h3>
1444
- <div class="function">
1445
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1446
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1447
- <code>void _add_token(
1448
- mixed
1449
- $type, string
1450
- $data, [bool
1451
- $do = false])</code>
1452
- </td></tr></table>
1453
- </td></tr></table><br />
1454
-
1455
- Adds a token to $this-&gt;tokens<br /><br /><br /><br />
1456
- <h4>Tags:</h4>
1457
- <div class="tags">
1458
- <table border="0" cellspacing="0" cellpadding="0">
1459
- <tr>
1460
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
1461
- </tr>
1462
- <tr>
1463
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
1464
- </tr>
1465
- </table>
1466
- </div>
1467
- <br /><br />
1468
-
1469
-
1470
- <h4>Parameters:</h4>
1471
- <div class="tags">
1472
- <table border="0" cellspacing="0" cellpadding="0">
1473
- <tr>
1474
- <td class="type">mixed&nbsp;&nbsp;</td>
1475
- <td><b>$type</b>&nbsp;&nbsp;</td>
1476
- <td></td>
1477
- </tr>
1478
- <tr>
1479
- <td class="type">string&nbsp;&nbsp;</td>
1480
- <td><b>$data</b>&nbsp;&nbsp;</td>
1481
- <td></td>
1482
- </tr>
1483
- <tr>
1484
- <td class="type">bool&nbsp;&nbsp;</td>
1485
- <td><b>$do</b>&nbsp;&nbsp;</td>
1486
- <td>add a token even if preserve_css is off</td>
1487
- </tr>
1488
- </table>
1489
- </div><br />
1490
- <div class="top">[ <a href="#top">Top</a> ]</div>
1491
- </div>
1492
- <hr />
1493
- <a name="method_unicode"></a>
1494
- <h3>method _unicode <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy.php.html#a354">354</a>]</span></h3>
1495
- <div class="function">
1496
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
1497
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
1498
- <code>string _unicode(
1499
- string
1500
- &$string, integer
1501
- &$i)</code>
1502
- </td></tr></table>
1503
- </td></tr></table><br />
1504
-
1505
- Parse unicode notations and find a replacement character<br /><br /><br /><br />
1506
- <h4>Tags:</h4>
1507
- <div class="tags">
1508
- <table border="0" cellspacing="0" cellpadding="0">
1509
- <tr>
1510
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
1511
- </tr>
1512
- <tr>
1513
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
1514
- </tr>
1515
- </table>
1516
- </div>
1517
- <br /><br />
1518
-
1519
-
1520
- <h4>Parameters:</h4>
1521
- <div class="tags">
1522
- <table border="0" cellspacing="0" cellpadding="0">
1523
- <tr>
1524
- <td class="type">string&nbsp;&nbsp;</td>
1525
- <td><b>$string</b>&nbsp;&nbsp;</td>
1526
- <td></td>
1527
- </tr>
1528
- <tr>
1529
- <td class="type">integer&nbsp;&nbsp;</td>
1530
- <td><b>$i</b>&nbsp;&nbsp;</td>
1531
- <td></td>
1532
- </tr>
1533
- </table>
1534
- </div><br />
1535
- <div class="top">[ <a href="#top">Top</a> ]</div>
1536
- </div>
1537
- </div><br />
1538
-
1539
-
1540
- <div class="credit">
1541
- <hr />
1542
- Documentation generated on Mon, 15 May 2006 22:55:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
1543
- </div>
1544
- </td></tr></table>
1545
- </td>
1546
- </tr>
1547
- </table>
1548
-
1549
- </body>
1550
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/csstidy/csstidy_optimise.html DELETED
@@ -1,705 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Docs For Class csstidy_optimise</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="../csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="../csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="../csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="../csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="../csstidy/csstidy.html">csstidy</a><br />
47
- <a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="../csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <h1>Class: csstidy_optimise</h1>
55
- Source Location: /class.csstidy_optimise.php<br /><br />
56
-
57
-
58
- <table width="100%" border="0">
59
- <tr><td valign="top">
60
-
61
- <h3><a href="#class_details">Class Overview</a></h3>
62
- <pre></pre><br />
63
- <div class="description">CSS Optimising Class</div><br /><br />
64
- <h4>Author(s):</h4>
65
- <ul>
66
- <li>Florian Schmitz (floele at gmail dot com) 2005-2006</li>
67
- </ul>
68
-
69
-
70
-
71
-
72
-
73
-
74
- <h4>Version:</h4>
75
- <ul>
76
- <li>1.0</li>
77
- </ul>
78
-
79
-
80
- </td>
81
-
82
-
83
-
84
- <td valign="top">
85
- <h3><a href="#class_methods">Methods</a></h3>
86
- <ul>
87
- <li><a href="../csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise</a></li>
88
- <li><a href="../csstidy/csstidy_optimise.html#methodcompress_important">compress_important</a></li>
89
- <li><a href="../csstidy/csstidy_optimise.html#methodcompress_numbers">compress_numbers</a></li>
90
- <li><a href="../csstidy/csstidy_optimise.html#methodcut_color">cut_color</a></li>
91
- <li><a href="../csstidy/csstidy_optimise.html#methoddissolve_4value_shorthands">dissolve_4value_shorthands</a></li>
92
- <li><a href="../csstidy/csstidy_optimise.html#methoddissolve_short_bg">dissolve_short_bg</a></li>
93
- <li><a href="../csstidy/csstidy_optimise.html#methodexplode_ws">explode_ws</a></li>
94
- <li><a href="../csstidy/csstidy_optimise.html#methodmerge_4value_shorthands">merge_4value_shorthands</a></li>
95
- <li><a href="../csstidy/csstidy_optimise.html#methodmerge_bg">merge_bg</a></li>
96
- <li><a href="../csstidy/csstidy_optimise.html#methodmerge_selectors">merge_selectors</a></li>
97
- <li><a href="../csstidy/csstidy_optimise.html#methodpostparse">postparse</a></li>
98
- <li><a href="../csstidy/csstidy_optimise.html#methodshorthand">shorthand</a></li>
99
- <li><a href="../csstidy/csstidy_optimise.html#methodshorthands">shorthands</a></li>
100
- <li><a href="../csstidy/csstidy_optimise.html#methodsubvalue">subvalue</a></li>
101
- <li><a href="../csstidy/csstidy_optimise.html#methodvalue">value</a></li>
102
- </ul>
103
- </td>
104
-
105
- </tr></table>
106
- <hr />
107
-
108
- <table width="100%" border="0"><tr>
109
-
110
-
111
-
112
-
113
-
114
-
115
- </tr></table>
116
- <hr />
117
-
118
- <a name="class_details"></a>
119
- <h3>Class Details</h3>
120
- <div class="tags">
121
- [line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a39">39</a>]<br />
122
- CSS Optimising Class<br /><br /><p>This class optimises CSS data generated by csstidy.</p><br /><br /><br />
123
- <h4>Tags:</h4>
124
- <div class="tags">
125
- <table border="0" cellspacing="0" cellpadding="0">
126
- <tr>
127
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
128
- </tr>
129
- <tr>
130
- <td><b>author:</b>&nbsp;&nbsp;</td><td>Florian Schmitz (floele at gmail dot com) 2005-2006</td>
131
- </tr>
132
- </table>
133
- </div>
134
- </div><br /><br />
135
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
136
-
137
-
138
- <hr />
139
- <a name="class_methods"></a>
140
- <h3>Class Methods</h3>
141
- <div class="tags">
142
- <hr />
143
- <a name="methodcsstidy_optimise"></a>
144
- <h3>constructor csstidy_optimise <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a47">47</a>]</span></h3>
145
- <div class="function">
146
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
147
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
148
- <code>csstidy_optimise csstidy_optimise(
149
- array
150
- &$css)</code>
151
- </td></tr></table>
152
- </td></tr></table><br />
153
-
154
- Constructor<br /><br /><br /><br />
155
- <h4>Tags:</h4>
156
- <div class="tags">
157
- <table border="0" cellspacing="0" cellpadding="0">
158
- <tr>
159
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
160
- </tr>
161
- <tr>
162
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
163
- </tr>
164
- </table>
165
- </div>
166
- <br /><br />
167
-
168
-
169
- <h4>Parameters:</h4>
170
- <div class="tags">
171
- <table border="0" cellspacing="0" cellpadding="0">
172
- <tr>
173
- <td class="type">array&nbsp;&nbsp;</td>
174
- <td><b>$css</b>&nbsp;&nbsp;</td>
175
- <td>contains the class csstidy</td>
176
- </tr>
177
- </table>
178
- </div><br />
179
- <div class="top">[ <a href="#top">Top</a> ]</div>
180
- </div>
181
- <hr />
182
- <a name="methodcompress_important"></a>
183
- <h3>method compress_important <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a278">278</a>]</span></h3>
184
- <div class="function">
185
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
186
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
187
- <code>string compress_important(
188
- string
189
- &$string)</code>
190
- </td></tr></table>
191
- </td></tr></table><br />
192
-
193
- Removes unnecessary whitespace in ! important<br /><br /><br /><br />
194
- <h4>Tags:</h4>
195
- <div class="tags">
196
- <table border="0" cellspacing="0" cellpadding="0">
197
- <tr>
198
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td>
199
- </tr>
200
- <tr>
201
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
202
- </tr>
203
- </table>
204
- </div>
205
- <br /><br />
206
-
207
-
208
- <h4>Parameters:</h4>
209
- <div class="tags">
210
- <table border="0" cellspacing="0" cellpadding="0">
211
- <tr>
212
- <td class="type">string&nbsp;&nbsp;</td>
213
- <td><b>$string</b>&nbsp;&nbsp;</td>
214
- <td></td>
215
- </tr>
216
- </table>
217
- </div><br />
218
- <div class="top">[ <a href="#top">Top</a> ]</div>
219
- </div>
220
- <hr />
221
- <a name="methodcompress_numbers"></a>
222
- <h3>method compress_numbers <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a368">368</a>]</span></h3>
223
- <div class="function">
224
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
225
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
226
- <code>string compress_numbers(
227
- string
228
- $subvalue)</code>
229
- </td></tr></table>
230
- </td></tr></table><br />
231
-
232
- Compresses numbers (ie. 1.0 becomes 1 or 1.100 becomes 1.1 )<br /><br /><br /><br />
233
- <h4>Tags:</h4>
234
- <div class="tags">
235
- <table border="0" cellspacing="0" cellpadding="0">
236
- <tr>
237
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
238
- </tr>
239
- </table>
240
- </div>
241
- <br /><br />
242
-
243
-
244
- <h4>Parameters:</h4>
245
- <div class="tags">
246
- <table border="0" cellspacing="0" cellpadding="0">
247
- <tr>
248
- <td class="type">string&nbsp;&nbsp;</td>
249
- <td><b>$subvalue</b>&nbsp;&nbsp;</td>
250
- <td></td>
251
- </tr>
252
- </table>
253
- </div><br />
254
- <div class="top">[ <a href="#top">Top</a> ]</div>
255
- </div>
256
- <hr />
257
- <a name="methodcut_color"></a>
258
- <h3>method cut_color <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a293">293</a>]</span></h3>
259
- <div class="function">
260
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
261
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
262
- <code>string cut_color(
263
- string
264
- $color)</code>
265
- </td></tr></table>
266
- </td></tr></table><br />
267
-
268
- Color compression function. Converts all rgb() values to #-values and uses the short-form if possible. Also replaces 4 color names by #-values.<br /><br /><br /><br />
269
- <h4>Tags:</h4>
270
- <div class="tags">
271
- <table border="0" cellspacing="0" cellpadding="0">
272
- <tr>
273
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td>
274
- </tr>
275
- </table>
276
- </div>
277
- <br /><br />
278
-
279
-
280
- <h4>Parameters:</h4>
281
- <div class="tags">
282
- <table border="0" cellspacing="0" cellpadding="0">
283
- <tr>
284
- <td class="type">string&nbsp;&nbsp;</td>
285
- <td><b>$color</b>&nbsp;&nbsp;</td>
286
- <td></td>
287
- </tr>
288
- </table>
289
- </div><br />
290
- <div class="top">[ <a href="#top">Top</a> ]</div>
291
- </div>
292
- <hr />
293
- <a name="methoddissolve_4value_shorthands"></a>
294
- <h3>method dissolve_4value_shorthands <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a485">485</a>]</span></h3>
295
- <div class="function">
296
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
297
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
298
- <code>array dissolve_4value_shorthands(
299
- string
300
- $property, string
301
- $value)</code>
302
- </td></tr></table>
303
- </td></tr></table><br />
304
-
305
- Dissolves properties like padding:10px 10px 10px to padding-top:10px;padding-bottom:10px;...<br /><br /><br /><br />
306
- <h4>Tags:</h4>
307
- <div class="tags">
308
- <table border="0" cellspacing="0" cellpadding="0">
309
- <tr>
310
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy_optimise.html#methodmerge_4value_shorthands">csstidy_optimise::merge_4value_shorthands()</a></td>
311
- </tr>
312
- <tr>
313
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
314
- </tr>
315
- </table>
316
- </div>
317
- <br /><br />
318
-
319
-
320
- <h4>Parameters:</h4>
321
- <div class="tags">
322
- <table border="0" cellspacing="0" cellpadding="0">
323
- <tr>
324
- <td class="type">string&nbsp;&nbsp;</td>
325
- <td><b>$property</b>&nbsp;&nbsp;</td>
326
- <td></td>
327
- </tr>
328
- <tr>
329
- <td class="type">string&nbsp;&nbsp;</td>
330
- <td><b>$value</b>&nbsp;&nbsp;</td>
331
- <td></td>
332
- </tr>
333
- </table>
334
- </div><br />
335
- <div class="top">[ <a href="#top">Top</a> ]</div>
336
- </div>
337
- <hr />
338
- <a name="methoddissolve_short_bg"></a>
339
- <h3>method dissolve_short_bg <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a639">639</a>]</span></h3>
340
- <div class="function">
341
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
342
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
343
- <code>array dissolve_short_bg(
344
- string
345
- $str_value)</code>
346
- </td></tr></table>
347
- </td></tr></table><br />
348
-
349
- Dissolve background property<br /><br /><br /><br />
350
- <h4>Tags:</h4>
351
- <div class="tags">
352
- <table border="0" cellspacing="0" cellpadding="0">
353
- <tr>
354
- <td><b>todo:</b>&nbsp;&nbsp;</td><td>full CSS 3 compliance</td>
355
- </tr>
356
- <tr>
357
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy_optimise.html#methodmerge_bg">csstidy_optimise::merge_bg()</a></td>
358
- </tr>
359
- <tr>
360
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
361
- </tr>
362
- </table>
363
- </div>
364
- <br /><br />
365
-
366
-
367
- <h4>Parameters:</h4>
368
- <div class="tags">
369
- <table border="0" cellspacing="0" cellpadding="0">
370
- <tr>
371
- <td class="type">string&nbsp;&nbsp;</td>
372
- <td><b>$str_value</b>&nbsp;&nbsp;</td>
373
- <td></td>
374
- </tr>
375
- </table>
376
- </div><br />
377
- <div class="top">[ <a href="#top">Top</a> ]</div>
378
- </div>
379
- <hr />
380
- <a name="methodexplode_ws"></a>
381
- <h3>method explode_ws <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a543">543</a>]</span></h3>
382
- <div class="function">
383
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
384
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
385
- <code>array explode_ws(
386
- string
387
- $sep, string
388
- $string)</code>
389
- </td></tr></table>
390
- </td></tr></table><br />
391
-
392
- Explodes a string as explode() does, however, not if $sep is escaped or within a string.<br /><br /><br /><br />
393
- <h4>Tags:</h4>
394
- <div class="tags">
395
- <table border="0" cellspacing="0" cellpadding="0">
396
- <tr>
397
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
398
- </tr>
399
- </table>
400
- </div>
401
- <br /><br />
402
-
403
-
404
- <h4>Parameters:</h4>
405
- <div class="tags">
406
- <table border="0" cellspacing="0" cellpadding="0">
407
- <tr>
408
- <td class="type">string&nbsp;&nbsp;</td>
409
- <td><b>$sep</b>&nbsp;&nbsp;</td>
410
- <td>seperator</td>
411
- </tr>
412
- <tr>
413
- <td class="type">string&nbsp;&nbsp;</td>
414
- <td><b>$string</b>&nbsp;&nbsp;</td>
415
- <td></td>
416
- </tr>
417
- </table>
418
- </div><br />
419
- <div class="top">[ <a href="#top">Top</a> ]</div>
420
- </div>
421
- <hr />
422
- <a name="methodmerge_4value_shorthands"></a>
423
- <h3>method merge_4value_shorthands <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a598">598</a>]</span></h3>
424
- <div class="function">
425
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
426
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
427
- <code>array merge_4value_shorthands(
428
- array
429
- $array)</code>
430
- </td></tr></table>
431
- </td></tr></table><br />
432
-
433
- Merges Shorthand properties again, the opposite of dissolve_4value_shorthands()<br /><br /><br /><br />
434
- <h4>Tags:</h4>
435
- <div class="tags">
436
- <table border="0" cellspacing="0" cellpadding="0">
437
- <tr>
438
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy_optimise.html#methoddissolve_4value_shorthands">csstidy_optimise::dissolve_4value_shorthands()</a></td>
439
- </tr>
440
- <tr>
441
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
442
- </tr>
443
- </table>
444
- </div>
445
- <br /><br />
446
-
447
-
448
- <h4>Parameters:</h4>
449
- <div class="tags">
450
- <table border="0" cellspacing="0" cellpadding="0">
451
- <tr>
452
- <td class="type">array&nbsp;&nbsp;</td>
453
- <td><b>$array</b>&nbsp;&nbsp;</td>
454
- <td></td>
455
- </tr>
456
- </table>
457
- </div><br />
458
- <div class="top">[ <a href="#top">Top</a> ]</div>
459
- </div>
460
- <hr />
461
- <a name="methodmerge_bg"></a>
462
- <h3>method merge_bg <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a725">725</a>]</span></h3>
463
- <div class="function">
464
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
465
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
466
- <code>array merge_bg(
467
- array
468
- $input_css)</code>
469
- </td></tr></table>
470
- </td></tr></table><br />
471
-
472
- Merges all background properties<br /><br /><br /><br />
473
- <h4>Tags:</h4>
474
- <div class="tags">
475
- <table border="0" cellspacing="0" cellpadding="0">
476
- <tr>
477
- <td><b>todo:</b>&nbsp;&nbsp;</td><td>full CSS 3 compliance</td>
478
- </tr>
479
- <tr>
480
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy_optimise.html#methoddissolve_short_bg">csstidy_optimise::dissolve_short_bg()</a></td>
481
- </tr>
482
- <tr>
483
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
484
- </tr>
485
- </table>
486
- </div>
487
- <br /><br />
488
-
489
-
490
- <h4>Parameters:</h4>
491
- <div class="tags">
492
- <table border="0" cellspacing="0" cellpadding="0">
493
- <tr>
494
- <td class="type">array&nbsp;&nbsp;</td>
495
- <td><b>$input_css</b>&nbsp;&nbsp;</td>
496
- <td></td>
497
- </tr>
498
- </table>
499
- </div><br />
500
- <div class="top">[ <a href="#top">Top</a> ]</div>
501
- </div>
502
- <hr />
503
- <a name="methodmerge_selectors"></a>
504
- <h3>method merge_selectors <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a435">435</a>]</span></h3>
505
- <div class="function">
506
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
507
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
508
- <code>array merge_selectors(
509
- array
510
- &$array)</code>
511
- </td></tr></table>
512
- </td></tr></table><br />
513
-
514
- Merges selectors with same properties. Example: a{color:red} b{color:red} -&gt; a,b{color:red} Very basic and has at least one bug. Hopefully there is a replacement soon.<br /><br /><br /><br />
515
- <h4>Tags:</h4>
516
- <div class="tags">
517
- <table border="0" cellspacing="0" cellpadding="0">
518
- <tr>
519
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
520
- </tr>
521
- <tr>
522
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
523
- </tr>
524
- </table>
525
- </div>
526
- <br /><br />
527
-
528
-
529
- <h4>Parameters:</h4>
530
- <div class="tags">
531
- <table border="0" cellspacing="0" cellpadding="0">
532
- <tr>
533
- <td class="type">array&nbsp;&nbsp;</td>
534
- <td><b>$array</b>&nbsp;&nbsp;</td>
535
- <td></td>
536
- </tr>
537
- </table>
538
- </div><br />
539
- <div class="top">[ <a href="#top">Top</a> ]</div>
540
- </div>
541
- <hr />
542
- <a name="methodpostparse"></a>
543
- <h3>method postparse <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a63">63</a>]</span></h3>
544
- <div class="function">
545
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
546
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
547
- <code>void postparse(
548
- )</code>
549
- </td></tr></table>
550
- </td></tr></table><br />
551
-
552
- Optimises $css after parsing<br /><br /><br /><br />
553
- <h4>Tags:</h4>
554
- <div class="tags">
555
- <table border="0" cellspacing="0" cellpadding="0">
556
- <tr>
557
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
558
- </tr>
559
- <tr>
560
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
561
- </tr>
562
- </table>
563
- </div>
564
- <br /><br />
565
-
566
-
567
- <div class="top">[ <a href="#top">Top</a> ]</div>
568
- </div>
569
- <hr />
570
- <a name="methodshorthand"></a>
571
- <h3>method shorthand <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a221">221</a>]</span></h3>
572
- <div class="function">
573
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
574
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
575
- <code>string shorthand(
576
- string
577
- $value)</code>
578
- </td></tr></table>
579
- </td></tr></table><br />
580
-
581
- Compresses shorthand values. Example: margin:1px 1px 1px 1px -&gt; margin:1px<br /><br /><br /><br />
582
- <h4>Tags:</h4>
583
- <div class="tags">
584
- <table border="0" cellspacing="0" cellpadding="0">
585
- <tr>
586
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
587
- </tr>
588
- <tr>
589
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
590
- </tr>
591
- </table>
592
- </div>
593
- <br /><br />
594
-
595
-
596
- <h4>Parameters:</h4>
597
- <div class="tags">
598
- <table border="0" cellspacing="0" cellpadding="0">
599
- <tr>
600
- <td class="type">string&nbsp;&nbsp;</td>
601
- <td><b>$value</b>&nbsp;&nbsp;</td>
602
- <td></td>
603
- </tr>
604
- </table>
605
- </div><br />
606
- <div class="top">[ <a href="#top">Top</a> ]</div>
607
- </div>
608
- <hr />
609
- <a name="methodshorthands"></a>
610
- <h3>method shorthands <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a130">130</a>]</span></h3>
611
- <div class="function">
612
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
613
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
614
- <code>void shorthands(
615
- )</code>
616
- </td></tr></table>
617
- </td></tr></table><br />
618
-
619
- Optimises shorthands<br /><br /><br /><br />
620
- <h4>Tags:</h4>
621
- <div class="tags">
622
- <table border="0" cellspacing="0" cellpadding="0">
623
- <tr>
624
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
625
- </tr>
626
- <tr>
627
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
628
- </tr>
629
- </table>
630
- </div>
631
- <br /><br />
632
-
633
-
634
- <div class="top">[ <a href="#top">Top</a> ]</div>
635
- </div>
636
- <hr />
637
- <a name="methodsubvalue"></a>
638
- <h3>method subvalue <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a158">158</a>]</span></h3>
639
- <div class="function">
640
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
641
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
642
- <code>void subvalue(
643
- )</code>
644
- </td></tr></table>
645
- </td></tr></table><br />
646
-
647
- Optimises a sub-value<br /><br /><br /><br />
648
- <h4>Tags:</h4>
649
- <div class="tags">
650
- <table border="0" cellspacing="0" cellpadding="0">
651
- <tr>
652
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
653
- </tr>
654
- <tr>
655
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
656
- </tr>
657
- </table>
658
- </div>
659
- <br /><br />
660
-
661
-
662
- <div class="top">[ <a href="#top">Top</a> ]</div>
663
- </div>
664
- <hr />
665
- <a name="methodvalue"></a>
666
- <h3>method value <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_optimise.php.html#a103">103</a>]</span></h3>
667
- <div class="function">
668
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
669
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
670
- <code>void value(
671
- )</code>
672
- </td></tr></table>
673
- </td></tr></table><br />
674
-
675
- Optimises values<br /><br /><br /><br />
676
- <h4>Tags:</h4>
677
- <div class="tags">
678
- <table border="0" cellspacing="0" cellpadding="0">
679
- <tr>
680
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
681
- </tr>
682
- <tr>
683
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
684
- </tr>
685
- </table>
686
- </div>
687
- <br /><br />
688
-
689
-
690
- <div class="top">[ <a href="#top">Top</a> ]</div>
691
- </div>
692
- </div><br />
693
-
694
-
695
- <div class="credit">
696
- <hr />
697
- Documentation generated on Mon, 15 May 2006 22:55:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
698
- </div>
699
- </td></tr></table>
700
- </td>
701
- </tr>
702
- </table>
703
-
704
- </body>
705
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/csstidy/csstidy_print.html DELETED
@@ -1,617 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Docs For Class csstidy_print</title>
4
- <link rel="stylesheet" type="text/css" href="../media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="../classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="../elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="../elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="../todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="../li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="../csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="../csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="../csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="../csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="../csstidy/csstidy.html">csstidy</a><br />
47
- <a href="../csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="../csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <h1>Class: csstidy_print</h1>
55
- Source Location: /class.csstidy_print.php<br /><br />
56
-
57
-
58
- <table width="100%" border="0">
59
- <tr><td valign="top">
60
-
61
- <h3><a href="#class_details">Class Overview</a></h3>
62
- <pre></pre><br />
63
- <div class="description">CSS Printing class</div><br /><br />
64
- <h4>Author(s):</h4>
65
- <ul>
66
- <li>Florian Schmitz (floele at gmail dot com) 2005-2006</li>
67
- </ul>
68
-
69
-
70
-
71
-
72
-
73
-
74
- <h4>Version:</h4>
75
- <ul>
76
- <li>1.0</li>
77
- </ul>
78
-
79
-
80
- </td>
81
-
82
- <td valign="top">
83
- <h3><a href="#class_vars">Variables</a></h3>
84
- <ul>
85
- <li><a href="../csstidy/csstidy_print.html#var$input_css">$input_css</a></li>
86
- <li><a href="../csstidy/csstidy_print.html#var$output_css">$output_css</a></li>
87
- <li><a href="../csstidy/csstidy_print.html#var$output_css_plain">$output_css_plain</a></li>
88
- </ul>
89
- </td>
90
-
91
-
92
- <td valign="top">
93
- <h3><a href="#class_methods">Methods</a></h3>
94
- <ul>
95
- <li><a href="../csstidy/csstidy_print.html#methodcsstidy_print">csstidy_print</a></li>
96
- <li><a href="../csstidy/csstidy_print.html#methodformatted">formatted</a></li>
97
- <li><a href="../csstidy/csstidy_print.html#methodget_diff">get_diff</a></li>
98
- <li><a href="../csstidy/csstidy_print.html#methodget_ratio">get_ratio</a></li>
99
- <li><a href="../csstidy/csstidy_print.html#methodplain">plain</a></li>
100
- <li><a href="../csstidy/csstidy_print.html#methodsize">size</a></li>
101
- <li><a href="../csstidy/csstidy_print.html#method_convert_raw_css">_convert_raw_css</a></li>
102
- <li><a href="../csstidy/csstidy_print.html#method_htmlsp">_htmlsp</a></li>
103
- <li><a href="../csstidy/csstidy_print.html#method_print">_print</a></li>
104
- <li><a href="../csstidy/csstidy_print.html#method_reset">_reset</a></li>
105
- <li><a href="../csstidy/csstidy_print.html#method_seeknocomment">_seeknocomment</a></li>
106
- </ul>
107
- </td>
108
-
109
- </tr></table>
110
- <hr />
111
-
112
- <table width="100%" border="0"><tr>
113
-
114
-
115
-
116
-
117
-
118
-
119
- </tr></table>
120
- <hr />
121
-
122
- <a name="class_details"></a>
123
- <h3>Class Details</h3>
124
- <div class="tags">
125
- [line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a39">39</a>]<br />
126
- CSS Printing class<br /><br /><p>This class prints CSS data generated by csstidy.</p><br /><br /><br />
127
- <h4>Tags:</h4>
128
- <div class="tags">
129
- <table border="0" cellspacing="0" cellpadding="0">
130
- <tr>
131
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
132
- </tr>
133
- <tr>
134
- <td><b>author:</b>&nbsp;&nbsp;</td><td>Florian Schmitz (floele at gmail dot com) 2005-2006</td>
135
- </tr>
136
- </table>
137
- </div>
138
- </div><br /><br />
139
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
140
-
141
- <hr />
142
- <a name="class_vars"></a>
143
- <h3>Class Variables</h3>
144
- <div class="tags">
145
- <a name="var$input_css"></a>
146
- <p></p>
147
- <h4>$input_css = <span class="value">&nbsp;''</span></h4>
148
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a46">46</a>]</p>
149
- Saves the input CSS string<br /><br /><br /><br />
150
- <h4>Tags:</h4>
151
- <div class="tags">
152
- <table border="0" cellspacing="0" cellpadding="0">
153
- <tr>
154
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
155
- </tr>
156
- </table>
157
- </div>
158
-
159
- <br />
160
- <div class="tags">
161
- <table border="0" cellspacing="0" cellpadding="0">
162
- <tr>
163
- <td><b>Type:</b>&nbsp;&nbsp;</td>
164
- <td>string</td>
165
- </tr>
166
- </table>
167
- </div><br /><br />
168
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
169
- <a name="var$output_css"></a>
170
- <p></p>
171
- <h4>$output_css = <span class="value">&nbsp;''</span></h4>
172
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a53">53</a>]</p>
173
- Saves the formatted CSS string<br /><br /><br /><br />
174
- <h4>Tags:</h4>
175
- <div class="tags">
176
- <table border="0" cellspacing="0" cellpadding="0">
177
- <tr>
178
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
179
- </tr>
180
- </table>
181
- </div>
182
-
183
- <br />
184
- <div class="tags">
185
- <table border="0" cellspacing="0" cellpadding="0">
186
- <tr>
187
- <td><b>Type:</b>&nbsp;&nbsp;</td>
188
- <td>string</td>
189
- </tr>
190
- </table>
191
- </div><br /><br />
192
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
193
- <a name="var$output_css_plain"></a>
194
- <p></p>
195
- <h4>$output_css_plain = <span class="value">&nbsp;''</span></h4>
196
- <p>[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a60">60</a>]</p>
197
- Saves the formatted CSS string (plain text)<br /><br /><br /><br />
198
- <h4>Tags:</h4>
199
- <div class="tags">
200
- <table border="0" cellspacing="0" cellpadding="0">
201
- <tr>
202
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
203
- </tr>
204
- </table>
205
- </div>
206
-
207
- <br />
208
- <div class="tags">
209
- <table border="0" cellspacing="0" cellpadding="0">
210
- <tr>
211
- <td><b>Type:</b>&nbsp;&nbsp;</td>
212
- <td>string</td>
213
- </tr>
214
- </table>
215
- </div><br /><br />
216
- <div class="top">[ <a href="#top">Top</a> ]</div><br />
217
- </div><br />
218
-
219
- <hr />
220
- <a name="class_methods"></a>
221
- <h3>Class Methods</h3>
222
- <div class="tags">
223
- <hr />
224
- <a name="methodcsstidy_print"></a>
225
- <h3>constructor csstidy_print <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a68">68</a>]</span></h3>
226
- <div class="function">
227
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
228
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
229
- <code>csstidy_print csstidy_print(
230
- array
231
- &$css)</code>
232
- </td></tr></table>
233
- </td></tr></table><br />
234
-
235
- Constructor<br /><br /><br /><br />
236
- <h4>Tags:</h4>
237
- <div class="tags">
238
- <table border="0" cellspacing="0" cellpadding="0">
239
- <tr>
240
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
241
- </tr>
242
- <tr>
243
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
244
- </tr>
245
- </table>
246
- </div>
247
- <br /><br />
248
-
249
-
250
- <h4>Parameters:</h4>
251
- <div class="tags">
252
- <table border="0" cellspacing="0" cellpadding="0">
253
- <tr>
254
- <td class="type">array&nbsp;&nbsp;</td>
255
- <td><b>$css</b>&nbsp;&nbsp;</td>
256
- <td>contains the class csstidy</td>
257
- </tr>
258
- </table>
259
- </div><br />
260
- <div class="top">[ <a href="#top">Top</a> ]</div>
261
- </div>
262
- <hr />
263
- <a name="methodformatted"></a>
264
- <h3>method formatted <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a108">108</a>]</span></h3>
265
- <div class="function">
266
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
267
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
268
- <code>string formatted(
269
- )</code>
270
- </td></tr></table>
271
- </td></tr></table><br />
272
-
273
- Returns the formatted CSS code<br /><br /><br /><br />
274
- <h4>Tags:</h4>
275
- <div class="tags">
276
- <table border="0" cellspacing="0" cellpadding="0">
277
- <tr>
278
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
279
- </tr>
280
- <tr>
281
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
282
- </tr>
283
- </table>
284
- </div>
285
- <br /><br />
286
-
287
-
288
- <div class="top">[ <a href="#top">Top</a> ]</div>
289
- </div>
290
- <hr />
291
- <a name="methodget_diff"></a>
292
- <h3>method get_diff <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a313">313</a>]</span></h3>
293
- <div class="function">
294
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
295
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
296
- <code>string get_diff(
297
- )</code>
298
- </td></tr></table>
299
- </td></tr></table><br />
300
-
301
- Get difference between the old and new code in bytes and prints the code if necessary.<br /><br /><br /><br />
302
- <h4>Tags:</h4>
303
- <div class="tags">
304
- <table border="0" cellspacing="0" cellpadding="0">
305
- <tr>
306
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td>
307
- </tr>
308
- <tr>
309
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
310
- </tr>
311
- </table>
312
- </div>
313
- <br /><br />
314
-
315
-
316
- <div class="top">[ <a href="#top">Top</a> ]</div>
317
- </div>
318
- <hr />
319
- <a name="methodget_ratio"></a>
320
- <h3>method get_ratio <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a299">299</a>]</span></h3>
321
- <div class="function">
322
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
323
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
324
- <code>float get_ratio(
325
- )</code>
326
- </td></tr></table>
327
- </td></tr></table><br />
328
-
329
- Get compression ratio<br /><br /><br /><br />
330
- <h4>Tags:</h4>
331
- <div class="tags">
332
- <table border="0" cellspacing="0" cellpadding="0">
333
- <tr>
334
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td>
335
- </tr>
336
- <tr>
337
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
338
- </tr>
339
- </table>
340
- </div>
341
- <br /><br />
342
-
343
-
344
- <div class="top">[ <a href="#top">Top</a> ]</div>
345
- </div>
346
- <hr />
347
- <a name="methodplain"></a>
348
- <h3>method plain <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a96">96</a>]</span></h3>
349
- <div class="function">
350
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
351
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
352
- <code>string plain(
353
- )</code>
354
- </td></tr></table>
355
- </td></tr></table><br />
356
-
357
- Returns the CSS code as plain text<br /><br /><br /><br />
358
- <h4>Tags:</h4>
359
- <div class="tags">
360
- <table border="0" cellspacing="0" cellpadding="0">
361
- <tr>
362
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
363
- </tr>
364
- <tr>
365
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
366
- </tr>
367
- </table>
368
- </div>
369
- <br /><br />
370
-
371
-
372
- <div class="top">[ <a href="#top">Top</a> ]</div>
373
- </div>
374
- <hr />
375
- <a name="methodsize"></a>
376
- <h3>method size <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a337">337</a>]</span></h3>
377
- <div class="function">
378
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
379
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
380
- <code>integer size(
381
- [string
382
- $loc = 'output'])</code>
383
- </td></tr></table>
384
- </td></tr></table><br />
385
-
386
- Get the size of either input or output CSS in KB<br /><br /><br /><br />
387
- <h4>Tags:</h4>
388
- <div class="tags">
389
- <table border="0" cellspacing="0" cellpadding="0">
390
- <tr>
391
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
392
- </tr>
393
- <tr>
394
- <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td>
395
- </tr>
396
- </table>
397
- </div>
398
- <br /><br />
399
-
400
-
401
- <h4>Parameters:</h4>
402
- <div class="tags">
403
- <table border="0" cellspacing="0" cellpadding="0">
404
- <tr>
405
- <td class="type">string&nbsp;&nbsp;</td>
406
- <td><b>$loc</b>&nbsp;&nbsp;</td>
407
- <td>default is &quot;output&quot;</td>
408
- </tr>
409
- </table>
410
- </div><br />
411
- <div class="top">[ <a href="#top">Top</a> ]</div>
412
- </div>
413
- <hr />
414
- <a name="method_convert_raw_css"></a>
415
- <h3>method _convert_raw_css <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a244">244</a>]</span></h3>
416
- <div class="function">
417
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
418
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
419
- <code>void _convert_raw_css(
420
- )</code>
421
- </td></tr></table>
422
- </td></tr></table><br />
423
-
424
- Converts $this-&gt;css array to a raw array ($this-&gt;tokens)<br /><br /><br /><br />
425
- <h4>Tags:</h4>
426
- <div class="tags">
427
- <table border="0" cellspacing="0" cellpadding="0">
428
- <tr>
429
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
430
- </tr>
431
- <tr>
432
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
433
- </tr>
434
- </table>
435
- </div>
436
- <br /><br />
437
-
438
-
439
- <div class="top">[ <a href="#top">Top</a> ]</div>
440
- </div>
441
- <hr />
442
- <a name="method_htmlsp"></a>
443
- <h3>method _htmlsp <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a285">285</a>]</span></h3>
444
- <div class="function">
445
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
446
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
447
- <code>string _htmlsp(
448
- string
449
- $string, bool
450
- $plain)</code>
451
- </td></tr></table>
452
- </td></tr></table><br />
453
-
454
- Same as htmlspecialchars, only that chars are not replaced if $plain !== true. This makes print_code() cleaner.<br /><br /><br /><br />
455
- <h4>Tags:</h4>
456
- <div class="tags">
457
- <table border="0" cellspacing="0" cellpadding="0">
458
- <tr>
459
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
460
- </tr>
461
- <tr>
462
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
463
- </tr>
464
- <tr>
465
- <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../csstidy/csstidy_print.html#method_print">csstidy_print::_print()</a></td>
466
- </tr>
467
- </table>
468
- </div>
469
- <br /><br />
470
-
471
-
472
- <h4>Parameters:</h4>
473
- <div class="tags">
474
- <table border="0" cellspacing="0" cellpadding="0">
475
- <tr>
476
- <td class="type">string&nbsp;&nbsp;</td>
477
- <td><b>$string</b>&nbsp;&nbsp;</td>
478
- <td></td>
479
- </tr>
480
- <tr>
481
- <td class="type">bool&nbsp;&nbsp;</td>
482
- <td><b>$plain</b>&nbsp;&nbsp;</td>
483
- <td></td>
484
- </tr>
485
- </table>
486
- </div><br />
487
- <div class="top">[ <a href="#top">Top</a> ]</div>
488
- </div>
489
- <hr />
490
- <a name="method_print"></a>
491
- <h3>method _print <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a120">120</a>]</span></h3>
492
- <div class="function">
493
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
494
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
495
- <code>void _print(
496
- [bool
497
- $plain = false])</code>
498
- </td></tr></table>
499
- </td></tr></table><br />
500
-
501
- Returns the formatted CSS Code and saves it into $this-&gt;output_css and $this-&gt;output_css_plain<br /><br /><br /><br />
502
- <h4>Tags:</h4>
503
- <div class="tags">
504
- <table border="0" cellspacing="0" cellpadding="0">
505
- <tr>
506
- <td><b>version:</b>&nbsp;&nbsp;</td><td>2.0</td>
507
- </tr>
508
- <tr>
509
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
510
- </tr>
511
- </table>
512
- </div>
513
- <br /><br />
514
-
515
-
516
- <h4>Parameters:</h4>
517
- <div class="tags">
518
- <table border="0" cellspacing="0" cellpadding="0">
519
- <tr>
520
- <td class="type">bool&nbsp;&nbsp;</td>
521
- <td><b>$plain</b>&nbsp;&nbsp;</td>
522
- <td>plain text or not</td>
523
- </tr>
524
- </table>
525
- </div><br />
526
- <div class="top">[ <a href="#top">Top</a> ]</div>
527
- </div>
528
- <hr />
529
- <a name="method_reset"></a>
530
- <h3>method _reset <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a84">84</a>]</span></h3>
531
- <div class="function">
532
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
533
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
534
- <code>void _reset(
535
- )</code>
536
- </td></tr></table>
537
- </td></tr></table><br />
538
-
539
- Resets output_css and output_css_plain (new css code)<br /><br /><br /><br />
540
- <h4>Tags:</h4>
541
- <div class="tags">
542
- <table border="0" cellspacing="0" cellpadding="0">
543
- <tr>
544
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
545
- </tr>
546
- <tr>
547
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
548
- </tr>
549
- </table>
550
- </div>
551
- <br /><br />
552
-
553
-
554
- <div class="top">[ <a href="#top">Top</a> ]</div>
555
- </div>
556
- <hr />
557
- <a name="method_seeknocomment"></a>
558
- <h3>method _seeknocomment <span class="smalllinenumber">[line <a href="..//__filesource/fsource_csstidy__class.csstidy_print.php.html#a225">225</a>]</span></h3>
559
- <div class="function">
560
- <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
561
- <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
562
- <code>mixed _seeknocomment(
563
- integer
564
- $key, integer
565
- $move)</code>
566
- </td></tr></table>
567
- </td></tr></table><br />
568
-
569
- Gets the next token type which is $move away from $key, excluding comments<br /><br /><br /><br />
570
- <h4>Tags:</h4>
571
- <div class="tags">
572
- <table border="0" cellspacing="0" cellpadding="0">
573
- <tr>
574
- <td><b>return:</b>&nbsp;&nbsp;</td><td>a token type</td>
575
- </tr>
576
- <tr>
577
- <td><b>version:</b>&nbsp;&nbsp;</td><td>1.0</td>
578
- </tr>
579
- <tr>
580
- <td><b>access:</b>&nbsp;&nbsp;</td><td>private</td>
581
- </tr>
582
- </table>
583
- </div>
584
- <br /><br />
585
-
586
-
587
- <h4>Parameters:</h4>
588
- <div class="tags">
589
- <table border="0" cellspacing="0" cellpadding="0">
590
- <tr>
591
- <td class="type">integer&nbsp;&nbsp;</td>
592
- <td><b>$key</b>&nbsp;&nbsp;</td>
593
- <td>current position</td>
594
- </tr>
595
- <tr>
596
- <td class="type">integer&nbsp;&nbsp;</td>
597
- <td><b>$move</b>&nbsp;&nbsp;</td>
598
- <td>move this far</td>
599
- </tr>
600
- </table>
601
- </div><br />
602
- <div class="top">[ <a href="#top">Top</a> ]</div>
603
- </div>
604
- </div><br />
605
-
606
-
607
- <div class="credit">
608
- <hr />
609
- Documentation generated on Mon, 15 May 2006 22:55:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
610
- </div>
611
- </td></tr></table>
612
- </td>
613
- </tr>
614
- </table>
615
-
616
- </body>
617
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/csstidy/index.php DELETED
File without changes
vendor/cerdic/css-tidy/Docs/elementindex.html DELETED
@@ -1,386 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Element Index</title>
4
- <link rel="stylesheet" type="text/css" href="media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- </td>
33
- <td>
34
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
35
-
36
- <a name="top"></a>
37
- <h1>Index of all elements</h1>
38
- [ <a href="elementindex.html#a">a</a> ]
39
- [ <a href="elementindex.html#c">c</a> ]
40
- [ <a href="elementindex.html#d">d</a> ]
41
- [ <a href="elementindex.html#e">e</a> ]
42
- [ <a href="elementindex.html#f">f</a> ]
43
- [ <a href="elementindex.html#g">g</a> ]
44
- [ <a href="elementindex.html#i">i</a> ]
45
- [ <a href="elementindex.html#l">l</a> ]
46
- [ <a href="elementindex.html#m">m</a> ]
47
- [ <a href="elementindex.html#n">n</a> ]
48
- [ <a href="elementindex.html#o">o</a> ]
49
- [ <a href="elementindex.html#"></a> ]
50
- [ <a href="elementindex.html#s">s</a> ]
51
- [ <a href="elementindex.html#t">t</a> ]
52
- [ <a href="elementindex.html#v">v</a> ]
53
-
54
- <hr />
55
- <a name="a"></a>
56
- <div>
57
- <h2>a</h2>
58
- <dl>
59
- <dt><b>$added</b></dt>
60
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$added">csstidy::$added</a><br>&nbsp;&nbsp;&nbsp;&nbsp;=true if something has been added to the current selector</dd>
61
- <dt><b>$at</b></dt>
62
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$at">csstidy::$at</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current at rule (@media)</dd>
63
- <dt><b>AT_END</b></dt>
64
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineAT_END">AT_END</a></dd>
65
- <dt><b>AT_START</b></dt>
66
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineAT_START">AT_START</a></dd>
67
- </dl>
68
- </div>
69
- <a href="elementindex.html#top">top</a><br>
70
- <hr />
71
- <a name="c"></a>
72
- <div>
73
- <h2>c</h2>
74
- <dl>
75
- <dt><b>$charset</b></dt>
76
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$charset">csstidy::$charset</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the CSS charset (@charset)</dd>
77
- <dt><b>$css</b></dt>
78
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$css">csstidy::$css</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the parsed CSS</dd>
79
- <dt><b>class.csstidy_optimise.php</b></dt>
80
- <dd>procedural page <a href="csstidy/_class_csstidy_optimise_php.html">class.csstidy_optimise.php</a></dd>
81
- <dt><b>class.csstidy.php</b></dt>
82
- <dd>procedural page <a href="csstidy/_class_csstidy_php.html">class.csstidy.php</a></dd>
83
- <dt><b>class.csstidy_print.php</b></dt>
84
- <dd>procedural page <a href="csstidy/_class_csstidy_print_php.html">class.csstidy_print.php</a></dd>
85
- <dt><b>COMMENT</b></dt>
86
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineCOMMENT">COMMENT</a></dd>
87
- <dt><b>compress_important</b></dt>
88
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodcompress_important">csstidy_optimise::compress_important()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Removes unnecessary whitespace in ! important</dd>
89
- <dt><b>compress_numbers</b></dt>
90
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodcompress_numbers">csstidy_optimise::compress_numbers()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Compresses numbers (ie. 1.0 becomes 1 or 1.100 becomes 1.1 )</dd>
91
- <dt><b>csstidy</b></dt>
92
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodcsstidy">csstidy::csstidy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads standard template and sets default settings</dd>
93
- <dt><b>csstidy</b></dt>
94
- <dd>in file class.csstidy.php, class <a href="csstidy/csstidy.html">csstidy</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CSS Parser class</dd>
95
- <dt><b>csstidy_optimise</b></dt>
96
- <dd>in file class.csstidy_optimise.php, class <a href="csstidy/csstidy_optimise.html">csstidy_optimise</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CSS Optimising Class</dd>
97
- <dt><b>csstidy_optimise</b></dt>
98
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise::csstidy_optimise()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd>
99
- <dt><b>csstidy_print</b></dt>
100
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodcsstidy_print">csstidy_print::csstidy_print()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd>
101
- <dt><b>csstidy_print</b></dt>
102
- <dd>in file class.csstidy_print.php, class <a href="csstidy/csstidy_print.html">csstidy_print</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CSS Printing class</dd>
103
- <dt><b>css_add_property</b></dt>
104
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodcss_add_property">csstidy::css_add_property()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Adds a property with value to the existing CSS code</dd>
105
- <dt><b>cut_color</b></dt>
106
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodcut_color">csstidy_optimise::cut_color()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color compression function. Converts all rgb() values to #-values and uses the short-form if possible. Also replaces 4 color names by #-values.</dd>
107
- </dl>
108
- </div>
109
- <a href="elementindex.html#top">top</a><br>
110
- <hr />
111
- <a name="d"></a>
112
- <div>
113
- <h2>d</h2>
114
- <dl>
115
- <dt><b>data.inc.php</b></dt>
116
- <dd>procedural page <a href="csstidy/_data_inc_php.html">data.inc.php</a></dd>
117
- <dt><b>DEFAULT_AT</b></dt>
118
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineDEFAULT_AT">DEFAULT_AT</a></dd>
119
- <dt><b>dissolve_4value_shorthands</b></dt>
120
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methoddissolve_4value_shorthands">csstidy_optimise::dissolve_4value_shorthands()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Dissolves properties like padding:10px 10px 10px to padding-top:10px;padding-bottom:10px;...</dd>
121
- <dt><b>dissolve_short_bg</b></dt>
122
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methoddissolve_short_bg">csstidy_optimise::dissolve_short_bg()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Dissolve background property</dd>
123
- </dl>
124
- </div>
125
- <a href="elementindex.html#top">top</a><br>
126
- <hr />
127
- <a name="e"></a>
128
- <div>
129
- <h2>e</h2>
130
- <dl>
131
- <dt><b>escaped</b></dt>
132
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodescaped">csstidy::escaped()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if a character is escaped (and returns true if it is)</dd>
133
- <dt><b>explode_selectors</b></dt>
134
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodexplode_selectors">csstidy::explode_selectors()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Explodes selectors</dd>
135
- <dt><b>explode_ws</b></dt>
136
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodexplode_ws">csstidy_optimise::explode_ws()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Explodes a string as explode() does, however, not if $sep is escaped or within a string.</dd>
137
- </dl>
138
- </div>
139
- <a href="elementindex.html#top">top</a><br>
140
- <hr />
141
- <a name="f"></a>
142
- <div>
143
- <h2>f</h2>
144
- <dl>
145
- <dt><b>$from</b></dt>
146
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$from">csstidy::$from</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Status from which the parser switched to ic or instr</dd>
147
- <dt><b>formatted</b></dt>
148
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodformatted">csstidy_print::formatted()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the formatted CSS code</dd>
149
- </dl>
150
- </div>
151
- <a href="elementindex.html#top">top</a><br>
152
- <hr />
153
- <a name="g"></a>
154
- <div>
155
- <h2>g</h2>
156
- <dl>
157
- <dt><b>$GLOBALS['csstidy']['all_properties']</b></dt>
158
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['all_properties']">$GLOBALS['csstidy']['all_properties']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;All CSS Properties. Needed for csstidy::property_is_next()</dd>
159
- <dt><b>$GLOBALS['csstidy']['at_rules']</b></dt>
160
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['at_rules']">$GLOBALS['csstidy']['at_rules']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Available at-rules</dd>
161
- <dt><b>$GLOBALS['csstidy']['background_prop_default']</b></dt>
162
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['background_prop_default']">$GLOBALS['csstidy']['background_prop_default']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Default values for the background properties</dd>
163
- <dt><b>$GLOBALS['csstidy']['color_values']</b></dt>
164
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['color_values']">$GLOBALS['csstidy']['color_values']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Properties that allow &lt;color&gt; as value</dd>
165
- <dt><b>$GLOBALS['csstidy']['number_values']</b></dt>
166
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['number_values']">$GLOBALS['csstidy']['number_values']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Properties that allow &lt;number&gt; as value</dd>
167
- <dt><b>$GLOBALS['csstidy']['predefined_templates']</b></dt>
168
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['predefined_templates']">$GLOBALS['csstidy']['predefined_templates']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;An array containing all predefined templates.</dd>
169
- <dt><b>$GLOBALS['csstidy']['replace_colors']</b></dt>
170
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['replace_colors']">$GLOBALS['csstidy']['replace_colors']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A list of non-W3C color names which get replaced by their hex-codes</dd>
171
- <dt><b>$GLOBALS['csstidy']['shorthands']</b></dt>
172
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['shorthands']">$GLOBALS['csstidy']['shorthands']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A list of all shorthand properties that are devided into four properties and/or have four subvalues</dd>
173
- <dt><b>$GLOBALS['csstidy']['tokens']</b></dt>
174
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['tokens']">$GLOBALS['csstidy']['tokens']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;All CSS tokens used by csstidy</dd>
175
- <dt><b>$GLOBALS['csstidy']['units']</b></dt>
176
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['units']">$GLOBALS['csstidy']['units']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;All CSS units (CSS 3 units included)</dd>
177
- <dt><b>$GLOBALS['csstidy']['whitespace']</b></dt>
178
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['whitespace']">$GLOBALS['csstidy']['whitespace']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;All whitespace allowed in CSS</dd>
179
- <dt><b>get_cfg</b></dt>
180
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodget_cfg">csstidy::get_cfg()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the value of a setting.</dd>
181
- <dt><b>get_diff</b></dt>
182
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodget_diff">csstidy_print::get_diff()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get difference between the old and new code in bytes and prints the code if necessary.</dd>
183
- <dt><b>get_ratio</b></dt>
184
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodget_ratio">csstidy_print::get_ratio()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get compression ratio</dd>
185
- <dt><b>gvw_important</b></dt>
186
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodgvw_important">csstidy::gvw_important()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a value without !important</dd>
187
- </dl>
188
- </div>
189
- <a href="elementindex.html#top">top</a><br>
190
- <hr />
191
- <a name="i"></a>
192
- <div>
193
- <h2>i</h2>
194
- <dl>
195
- <dt><b>$import</b></dt>
196
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$import">csstidy::$import</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves all @import URLs</dd>
197
- <dt><b>$input_css</b></dt>
198
- <dd>in file class.csstidy_print.php, variable <a href="csstidy/csstidy_print.html#var$input_css">csstidy_print::$input_css</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the input CSS string</dd>
199
- <dt><b>$invalid_at</b></dt>
200
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$invalid_at">csstidy::$invalid_at</a><br>&nbsp;&nbsp;&nbsp;&nbsp;=true if in invalid at-rule</dd>
201
- <dt><b>is_important</b></dt>
202
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodis_important">csstidy::is_important()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if $value is !important.</dd>
203
- <dt><b>is_token</b></dt>
204
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodis_token">csstidy::is_token()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if there is a token at the current position</dd>
205
- </dl>
206
- </div>
207
- <a href="elementindex.html#top">top</a><br>
208
- <hr />
209
- <a name="l"></a>
210
- <div>
211
- <h2>l</h2>
212
- <dl>
213
- <dt><b>$line</b></dt>
214
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$line">csstidy::$line</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the line number</dd>
215
- <dt><b>$log</b></dt>
216
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$log">csstidy::$log</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array which saves the message log</dd>
217
- <dt><b>load_template</b></dt>
218
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodload_template">csstidy::load_template()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads a new template</dd>
219
- <dt><b>log</b></dt>
220
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodlog">csstidy::log()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a message to the message log</dd>
221
- </dl>
222
- </div>
223
- <a href="elementindex.html#top">top</a><br>
224
- <hr />
225
- <a name="m"></a>
226
- <div>
227
- <h2>m</h2>
228
- <dl>
229
- <dt><b>merge_4value_shorthands</b></dt>
230
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodmerge_4value_shorthands">csstidy_optimise::merge_4value_shorthands()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Merges Shorthand properties again, the opposite of dissolve_4value_shorthands()</dd>
231
- <dt><b>merge_bg</b></dt>
232
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodmerge_bg">csstidy_optimise::merge_bg()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Merges all background properties</dd>
233
- <dt><b>merge_css_blocks</b></dt>
234
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodmerge_css_blocks">csstidy::merge_css_blocks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Adds CSS to an existing media/selector</dd>
235
- <dt><b>merge_selectors</b></dt>
236
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodmerge_selectors">csstidy_optimise::merge_selectors()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Merges selectors with same properties. Example: a{color:red} b{color:red} -&gt; a,b{color:red} Very basic and has at least one bug. Hopefully there is a replacement soon.</dd>
237
- </dl>
238
- </div>
239
- <a href="elementindex.html#top">top</a><br>
240
- <hr />
241
- <a name="n"></a>
242
- <div>
243
- <h2>n</h2>
244
- <dl>
245
- <dt><b>$namespace</b></dt>
246
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$namespace">csstidy::$namespace</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the namespace</dd>
247
- </dl>
248
- </div>
249
- <a href="elementindex.html#top">top</a><br>
250
- <hr />
251
- <a name="o"></a>
252
- <div>
253
- <h2>o</h2>
254
- <dl>
255
- <dt><b>$optimise</b></dt>
256
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$optimise">csstidy::$optimise</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimiser class</dd>
257
- <dt><b>$output_css</b></dt>
258
- <dd>in file class.csstidy_print.php, variable <a href="csstidy/csstidy_print.html#var$output_css">csstidy_print::$output_css</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the formatted CSS string</dd>
259
- <dt><b>$output_css_plain</b></dt>
260
- <dd>in file class.csstidy_print.php, variable <a href="csstidy/csstidy_print.html#var$output_css_plain">csstidy_print::$output_css_plain</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the formatted CSS string (plain text)</dd>
261
- </dl>
262
- </div>
263
- <a href="elementindex.html#top">top</a><br>
264
- <hr />
265
- <a name="p"></a>
266
- <div>
267
- <h2>p</h2>
268
- <dl>
269
- <dt><b>$print</b></dt>
270
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$print">csstidy::$print</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Printer class</dd>
271
- <dt><b>$property</b></dt>
272
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$property">csstidy::$property</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current property</dd>
273
- <dt><b>parse</b></dt>
274
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodparse">csstidy::parse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parses CSS in $string. The code is saved as array in $this-&gt;css</dd>
275
- <dt><b>parse_from_url</b></dt>
276
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodparse_from_url">csstidy::parse_from_url()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Starts parsing from URL</dd>
277
- <dt><b>plain</b></dt>
278
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodplain">csstidy_print::plain()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the CSS code as plain text</dd>
279
- <dt><b>postparse</b></dt>
280
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodpostparse">csstidy_optimise::postparse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimises $css after parsing</dd>
281
- <dt><b>PROPERTY</b></dt>
282
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#definePROPERTY">PROPERTY</a></dd>
283
- <dt><b>property_is_next</b></dt>
284
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodproperty_is_next">csstidy::property_is_next()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if the next word in a string from pos is a CSS property</dd>
285
- <dt><b>property_is_valid</b></dt>
286
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodproperty_is_valid">csstidy::property_is_valid()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if a property is valid</dd>
287
- </dl>
288
- </div>
289
- <a href="elementindex.html#top">top</a><br>
290
- <hr />
291
- <a name="s"></a>
292
- <div>
293
- <h2>s</h2>
294
- <dl>
295
- <dt><b>$selector</b></dt>
296
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$selector">csstidy::$selector</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current selector</dd>
297
- <dt><b>$sel_separate</b></dt>
298
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$sel_separate">csstidy::$sel_separate</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the position of , in selectors</dd>
299
- <dt><b>$settings</b></dt>
300
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$settings">csstidy::$settings</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Stores the settings</dd>
301
- <dt><b>$status</b></dt>
302
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$status">csstidy::$status</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the parser-status.</dd>
303
- <dt><b>$str_char</b></dt>
304
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$str_char">csstidy::$str_char</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the char which opened the last string</dd>
305
- <dt><b>$str_in_str</b></dt>
306
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$str_in_str">csstidy::$str_in_str</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Variable needed to manage string-in-strings, for example url(&quot;foo.png&quot;)</dd>
307
- <dt><b>$sub_value</b></dt>
308
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$sub_value">csstidy::$sub_value</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current sub-value</dd>
309
- <dt><b>$sub_value_arr</b></dt>
310
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$sub_value_arr">csstidy::$sub_value_arr</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array which saves all subvalues for a property.</dd>
311
- <dt><b>SEL_END</b></dt>
312
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineSEL_END">SEL_END</a></dd>
313
- <dt><b>SEL_START</b></dt>
314
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineSEL_START">SEL_START</a></dd>
315
- <dt><b>set_cfg</b></dt>
316
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodset_cfg">csstidy::set_cfg()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the value of a setting.</dd>
317
- <dt><b>shorthand</b></dt>
318
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodshorthand">csstidy_optimise::shorthand()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Compresses shorthand values. Example: margin:1px 1px 1px 1px -&gt; margin:1px</dd>
319
- <dt><b>shorthands</b></dt>
320
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodshorthands">csstidy_optimise::shorthands()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimises shorthands</dd>
321
- <dt><b>size</b></dt>
322
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodsize">csstidy_print::size()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the size of either input or output CSS in KB</dd>
323
- <dt><b>subvalue</b></dt>
324
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodsubvalue">csstidy_optimise::subvalue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimises a sub-value</dd>
325
- </dl>
326
- </div>
327
- <a href="elementindex.html#top">top</a><br>
328
- <hr />
329
- <a name="t"></a>
330
- <div>
331
- <h2>t</h2>
332
- <dl>
333
- <dt><b>$tokens</b></dt>
334
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$tokens">csstidy::$tokens</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the parsed CSS (raw)</dd>
335
- </dl>
336
- </div>
337
- <a href="elementindex.html#top">top</a><br>
338
- <hr />
339
- <a name="v"></a>
340
- <div>
341
- <h2>v</h2>
342
- <dl>
343
- <dt><b>$value</b></dt>
344
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$value">csstidy::$value</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current value</dd>
345
- <dt><b>$version</b></dt>
346
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$version">csstidy::$version</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Contains the version of csstidy</dd>
347
- <dt><b>VALUE</b></dt>
348
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineVALUE">VALUE</a></dd>
349
- <dt><b>value</b></dt>
350
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodvalue">csstidy_optimise::value()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimises values</dd>
351
- </dl>
352
- </div>
353
- <a href="elementindex.html#top">top</a><br>
354
- <hr />
355
- <a name="_"></a>
356
- <div>
357
- <h2>_</h2>
358
- <dl>
359
- <dt><b>_add_token</b></dt>
360
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#method_add_token">csstidy::_add_token()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Adds a token to $this-&gt;tokens</dd>
361
- <dt><b>_convert_raw_css</b></dt>
362
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_convert_raw_css">csstidy_print::_convert_raw_css()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Converts $this-&gt;css array to a raw array ($this-&gt;tokens)</dd>
363
- <dt><b>_htmlsp</b></dt>
364
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_htmlsp">csstidy_print::_htmlsp()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Same as htmlspecialchars, only that chars are not replaced if $plain !== true. This makes print_code() cleaner.</dd>
365
- <dt><b>_print</b></dt>
366
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_print">csstidy_print::_print()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the formatted CSS Code and saves it into $this-&gt;output_css and $this-&gt;output_css_plain</dd>
367
- <dt><b>_reset</b></dt>
368
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_reset">csstidy_print::_reset()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Resets output_css and output_css_plain (new css code)</dd>
369
- <dt><b>_seeknocomment</b></dt>
370
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_seeknocomment">csstidy_print::_seeknocomment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets the next token type which is $move away from $key, excluding comments</dd>
371
- <dt><b>_unicode</b></dt>
372
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#method_unicode">csstidy::_unicode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parse unicode notations and find a replacement character</dd>
373
- </dl>
374
- </div>
375
- <a href="elementindex.html#top">top</a><br>
376
- <div class="credit">
377
- <hr />
378
- Documentation generated on Mon, 15 May 2006 22:54:53 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
379
- </div>
380
- </td></tr></table>
381
- </td>
382
- </tr>
383
- </table>
384
-
385
- </body>
386
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/elementindex_csstidy.html DELETED
@@ -1,405 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Package csstidy Element Index</title>
4
- <link rel="stylesheet" type="text/css" href="media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="csstidy/csstidy.html">csstidy</a><br />
47
- <a href="csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <a name="top"></a>
55
- <h1>Element index for package csstidy</h1>
56
- [ <a href="elementindex_csstidy.html#a">a</a> ]
57
- [ <a href="elementindex_csstidy.html#c">c</a> ]
58
- [ <a href="elementindex_csstidy.html#d">d</a> ]
59
- [ <a href="elementindex_csstidy.html#e">e</a> ]
60
- [ <a href="elementindex_csstidy.html#f">f</a> ]
61
- [ <a href="elementindex_csstidy.html#g">g</a> ]
62
- [ <a href="elementindex_csstidy.html#i">i</a> ]
63
- [ <a href="elementindex_csstidy.html#l">l</a> ]
64
- [ <a href="elementindex_csstidy.html#m">m</a> ]
65
- [ <a href="elementindex_csstidy.html#n">n</a> ]
66
- [ <a href="elementindex_csstidy.html#o">o</a> ]
67
- [ <a href="elementindex_csstidy.html#p">p</a> ]
68
- [ <a href="elementindex_csstidy.html#s">s</a> ]
69
- [ <a href="elementindex_csstidy.html#t">t</a> ]
70
- [ <a href="elementindex_csstidy.html#v">v</a> ]
71
- [ <a href="elementindex_csstidy.html#_">_</a> ]
72
-
73
- <hr />
74
- <a name="_"></a>
75
- <div>
76
- <h2>_</h2>
77
- <dl>
78
- <dt><b>_add_token</b></dt>
79
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#method_add_token">csstidy::_add_token()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Adds a token to $this-&gt;tokens</dd>
80
- <dt><b>_convert_raw_css</b></dt>
81
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_convert_raw_css">csstidy_print::_convert_raw_css()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Converts $this-&gt;css array to a raw array ($this-&gt;tokens)</dd>
82
- <dt><b>_htmlsp</b></dt>
83
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_htmlsp">csstidy_print::_htmlsp()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Same as htmlspecialchars, only that chars are not replaced if $plain !== true. This makes print_code() cleaner.</dd>
84
- <dt><b>_print</b></dt>
85
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_print">csstidy_print::_print()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the formatted CSS Code and saves it into $this-&gt;output_css and $this-&gt;output_css_plain</dd>
86
- <dt><b>_reset</b></dt>
87
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_reset">csstidy_print::_reset()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Resets output_css and output_css_plain (new css code)</dd>
88
- <dt><b>_seeknocomment</b></dt>
89
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#method_seeknocomment">csstidy_print::_seeknocomment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets the next token type which is $move away from $key, excluding comments</dd>
90
- <dt><b>_unicode</b></dt>
91
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#method_unicode">csstidy::_unicode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parse unicode notations and find a replacement character</dd>
92
- </dl>
93
- </div>
94
- <a href="elementindex_csstidy.html#top">top</a><br>
95
- <hr />
96
- <a name="a"></a>
97
- <div>
98
- <h2>a</h2>
99
- <dl>
100
- <dt><b>$added</b></dt>
101
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$added">csstidy::$added</a><br>&nbsp;&nbsp;&nbsp;&nbsp;=true if something has been added to the current selector</dd>
102
- <dt><b>$at</b></dt>
103
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$at">csstidy::$at</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current at rule (@media)</dd>
104
- <dt><b>AT_END</b></dt>
105
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineAT_END">AT_END</a></dd>
106
- <dt><b>AT_START</b></dt>
107
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineAT_START">AT_START</a></dd>
108
- </dl>
109
- </div>
110
- <a href="elementindex_csstidy.html#top">top</a><br>
111
- <hr />
112
- <a name="c"></a>
113
- <div>
114
- <h2>c</h2>
115
- <dl>
116
- <dt><b>$charset</b></dt>
117
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$charset">csstidy::$charset</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the CSS charset (@charset)</dd>
118
- <dt><b>$css</b></dt>
119
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$css">csstidy::$css</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the parsed CSS</dd>
120
- <dt><b>class.csstidy_optimise.php</b></dt>
121
- <dd>procedural page <a href="csstidy/_class_csstidy_optimise_php.html">class.csstidy_optimise.php</a></dd>
122
- <dt><b>class.csstidy.php</b></dt>
123
- <dd>procedural page <a href="csstidy/_class_csstidy_php.html">class.csstidy.php</a></dd>
124
- <dt><b>class.csstidy_print.php</b></dt>
125
- <dd>procedural page <a href="csstidy/_class_csstidy_print_php.html">class.csstidy_print.php</a></dd>
126
- <dt><b>COMMENT</b></dt>
127
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineCOMMENT">COMMENT</a></dd>
128
- <dt><b>compress_important</b></dt>
129
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodcompress_important">csstidy_optimise::compress_important()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Removes unnecessary whitespace in ! important</dd>
130
- <dt><b>compress_numbers</b></dt>
131
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodcompress_numbers">csstidy_optimise::compress_numbers()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Compresses numbers (ie. 1.0 becomes 1 or 1.100 becomes 1.1 )</dd>
132
- <dt><b>csstidy</b></dt>
133
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodcsstidy">csstidy::csstidy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads standard template and sets default settings</dd>
134
- <dt><b>csstidy</b></dt>
135
- <dd>in file class.csstidy.php, class <a href="csstidy/csstidy.html">csstidy</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CSS Parser class</dd>
136
- <dt><b>csstidy_optimise</b></dt>
137
- <dd>in file class.csstidy_optimise.php, class <a href="csstidy/csstidy_optimise.html">csstidy_optimise</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CSS Optimising Class</dd>
138
- <dt><b>csstidy_optimise</b></dt>
139
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodcsstidy_optimise">csstidy_optimise::csstidy_optimise()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd>
140
- <dt><b>csstidy_print</b></dt>
141
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodcsstidy_print">csstidy_print::csstidy_print()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd>
142
- <dt><b>csstidy_print</b></dt>
143
- <dd>in file class.csstidy_print.php, class <a href="csstidy/csstidy_print.html">csstidy_print</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CSS Printing class</dd>
144
- <dt><b>css_add_property</b></dt>
145
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodcss_add_property">csstidy::css_add_property()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Adds a property with value to the existing CSS code</dd>
146
- <dt><b>cut_color</b></dt>
147
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodcut_color">csstidy_optimise::cut_color()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color compression function. Converts all rgb() values to #-values and uses the short-form if possible. Also replaces 4 color names by #-values.</dd>
148
- </dl>
149
- </div>
150
- <a href="elementindex_csstidy.html#top">top</a><br>
151
- <hr />
152
- <a name="d"></a>
153
- <div>
154
- <h2>d</h2>
155
- <dl>
156
- <dt><b>data.inc.php</b></dt>
157
- <dd>procedural page <a href="csstidy/_data_inc_php.html">data.inc.php</a></dd>
158
- <dt><b>DEFAULT_AT</b></dt>
159
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineDEFAULT_AT">DEFAULT_AT</a></dd>
160
- <dt><b>dissolve_4value_shorthands</b></dt>
161
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methoddissolve_4value_shorthands">csstidy_optimise::dissolve_4value_shorthands()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Dissolves properties like padding:10px 10px 10px to padding-top:10px;padding-bottom:10px;...</dd>
162
- <dt><b>dissolve_short_bg</b></dt>
163
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methoddissolve_short_bg">csstidy_optimise::dissolve_short_bg()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Dissolve background property</dd>
164
- </dl>
165
- </div>
166
- <a href="elementindex_csstidy.html#top">top</a><br>
167
- <hr />
168
- <a name="e"></a>
169
- <div>
170
- <h2>e</h2>
171
- <dl>
172
- <dt><b>escaped</b></dt>
173
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodescaped">csstidy::escaped()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if a character is escaped (and returns true if it is)</dd>
174
- <dt><b>explode_selectors</b></dt>
175
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodexplode_selectors">csstidy::explode_selectors()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Explodes selectors</dd>
176
- <dt><b>explode_ws</b></dt>
177
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodexplode_ws">csstidy_optimise::explode_ws()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Explodes a string as explode() does, however, not if $sep is escaped or within a string.</dd>
178
- </dl>
179
- </div>
180
- <a href="elementindex_csstidy.html#top">top</a><br>
181
- <hr />
182
- <a name="f"></a>
183
- <div>
184
- <h2>f</h2>
185
- <dl>
186
- <dt><b>$from</b></dt>
187
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$from">csstidy::$from</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Status from which the parser switched to ic or instr</dd>
188
- <dt><b>formatted</b></dt>
189
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodformatted">csstidy_print::formatted()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the formatted CSS code</dd>
190
- </dl>
191
- </div>
192
- <a href="elementindex_csstidy.html#top">top</a><br>
193
- <hr />
194
- <a name="g"></a>
195
- <div>
196
- <h2>g</h2>
197
- <dl>
198
- <dt><b>$GLOBALS['csstidy']['all_properties']</b></dt>
199
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['all_properties']">$GLOBALS['csstidy']['all_properties']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;All CSS Properties. Needed for csstidy::property_is_next()</dd>
200
- <dt><b>$GLOBALS['csstidy']['at_rules']</b></dt>
201
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['at_rules']">$GLOBALS['csstidy']['at_rules']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Available at-rules</dd>
202
- <dt><b>$GLOBALS['csstidy']['background_prop_default']</b></dt>
203
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['background_prop_default']">$GLOBALS['csstidy']['background_prop_default']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Default values for the background properties</dd>
204
- <dt><b>$GLOBALS['csstidy']['color_values']</b></dt>
205
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['color_values']">$GLOBALS['csstidy']['color_values']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Properties that allow &lt;color&gt; as value</dd>
206
- <dt><b>$GLOBALS['csstidy']['number_values']</b></dt>
207
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['number_values']">$GLOBALS['csstidy']['number_values']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Properties that allow &lt;number&gt; as value</dd>
208
- <dt><b>$GLOBALS['csstidy']['predefined_templates']</b></dt>
209
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['predefined_templates']">$GLOBALS['csstidy']['predefined_templates']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;An array containing all predefined templates.</dd>
210
- <dt><b>$GLOBALS['csstidy']['replace_colors']</b></dt>
211
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['replace_colors']">$GLOBALS['csstidy']['replace_colors']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A list of non-W3C color names which get replaced by their hex-codes</dd>
212
- <dt><b>$GLOBALS['csstidy']['shorthands']</b></dt>
213
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['shorthands']">$GLOBALS['csstidy']['shorthands']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A list of all shorthand properties that are devided into four properties and/or have four subvalues</dd>
214
- <dt><b>$GLOBALS['csstidy']['tokens']</b></dt>
215
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['tokens']">$GLOBALS['csstidy']['tokens']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;All CSS tokens used by csstidy</dd>
216
- <dt><b>$GLOBALS['csstidy']['units']</b></dt>
217
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['units']">$GLOBALS['csstidy']['units']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;All CSS units (CSS 3 units included)</dd>
218
- <dt><b>$GLOBALS['csstidy']['whitespace']</b></dt>
219
- <dd>in file data.inc.php, global variable <a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['whitespace']">$GLOBALS['csstidy']['whitespace']</a><br>&nbsp;&nbsp;&nbsp;&nbsp;All whitespace allowed in CSS</dd>
220
- <dt><b>get_cfg</b></dt>
221
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodget_cfg">csstidy::get_cfg()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the value of a setting.</dd>
222
- <dt><b>get_diff</b></dt>
223
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodget_diff">csstidy_print::get_diff()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get difference between the old and new code in bytes and prints the code if necessary.</dd>
224
- <dt><b>get_ratio</b></dt>
225
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodget_ratio">csstidy_print::get_ratio()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get compression ratio</dd>
226
- <dt><b>gvw_important</b></dt>
227
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodgvw_important">csstidy::gvw_important()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a value without !important</dd>
228
- </dl>
229
- </div>
230
- <a href="elementindex_csstidy.html#top">top</a><br>
231
- <hr />
232
- <a name="i"></a>
233
- <div>
234
- <h2>i</h2>
235
- <dl>
236
- <dt><b>$import</b></dt>
237
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$import">csstidy::$import</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves all @import URLs</dd>
238
- <dt><b>$input_css</b></dt>
239
- <dd>in file class.csstidy_print.php, variable <a href="csstidy/csstidy_print.html#var$input_css">csstidy_print::$input_css</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the input CSS string</dd>
240
- <dt><b>$invalid_at</b></dt>
241
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$invalid_at">csstidy::$invalid_at</a><br>&nbsp;&nbsp;&nbsp;&nbsp;=true if in invalid at-rule</dd>
242
- <dt><b>is_important</b></dt>
243
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodis_important">csstidy::is_important()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if $value is !important.</dd>
244
- <dt><b>is_token</b></dt>
245
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodis_token">csstidy::is_token()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if there is a token at the current position</dd>
246
- </dl>
247
- </div>
248
- <a href="elementindex_csstidy.html#top">top</a><br>
249
- <hr />
250
- <a name="l"></a>
251
- <div>
252
- <h2>l</h2>
253
- <dl>
254
- <dt><b>$line</b></dt>
255
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$line">csstidy::$line</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the line number</dd>
256
- <dt><b>$log</b></dt>
257
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$log">csstidy::$log</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array which saves the message log</dd>
258
- <dt><b>load_template</b></dt>
259
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodload_template">csstidy::load_template()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads a new template</dd>
260
- <dt><b>log</b></dt>
261
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodlog">csstidy::log()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a message to the message log</dd>
262
- </dl>
263
- </div>
264
- <a href="elementindex_csstidy.html#top">top</a><br>
265
- <hr />
266
- <a name="m"></a>
267
- <div>
268
- <h2>m</h2>
269
- <dl>
270
- <dt><b>merge_4value_shorthands</b></dt>
271
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodmerge_4value_shorthands">csstidy_optimise::merge_4value_shorthands()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Merges Shorthand properties again, the opposite of dissolve_4value_shorthands()</dd>
272
- <dt><b>merge_bg</b></dt>
273
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodmerge_bg">csstidy_optimise::merge_bg()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Merges all background properties</dd>
274
- <dt><b>merge_css_blocks</b></dt>
275
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodmerge_css_blocks">csstidy::merge_css_blocks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Adds CSS to an existing media/selector</dd>
276
- <dt><b>merge_selectors</b></dt>
277
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodmerge_selectors">csstidy_optimise::merge_selectors()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Merges selectors with same properties. Example: a{color:red} b{color:red} -&gt; a,b{color:red} Very basic and has at least one bug. Hopefully there is a replacement soon.</dd>
278
- </dl>
279
- </div>
280
- <a href="elementindex_csstidy.html#top">top</a><br>
281
- <hr />
282
- <a name="n"></a>
283
- <div>
284
- <h2>n</h2>
285
- <dl>
286
- <dt><b>$namespace</b></dt>
287
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$namespace">csstidy::$namespace</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the namespace</dd>
288
- </dl>
289
- </div>
290
- <a href="elementindex_csstidy.html#top">top</a><br>
291
- <hr />
292
- <a name="o"></a>
293
- <div>
294
- <h2>o</h2>
295
- <dl>
296
- <dt><b>$optimise</b></dt>
297
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$optimise">csstidy::$optimise</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimiser class</dd>
298
- <dt><b>$output_css</b></dt>
299
- <dd>in file class.csstidy_print.php, variable <a href="csstidy/csstidy_print.html#var$output_css">csstidy_print::$output_css</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the formatted CSS string</dd>
300
- <dt><b>$output_css_plain</b></dt>
301
- <dd>in file class.csstidy_print.php, variable <a href="csstidy/csstidy_print.html#var$output_css_plain">csstidy_print::$output_css_plain</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the formatted CSS string (plain text)</dd>
302
- </dl>
303
- </div>
304
- <a href="elementindex_csstidy.html#top">top</a><br>
305
- <hr />
306
- <a name="p"></a>
307
- <div>
308
- <h2>p</h2>
309
- <dl>
310
- <dt><b>$print</b></dt>
311
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$print">csstidy::$print</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Printer class</dd>
312
- <dt><b>$property</b></dt>
313
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$property">csstidy::$property</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current property</dd>
314
- <dt><b>parse</b></dt>
315
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodparse">csstidy::parse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parses CSS in $string. The code is saved as array in $this-&gt;css</dd>
316
- <dt><b>parse_from_url</b></dt>
317
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodparse_from_url">csstidy::parse_from_url()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Starts parsing from URL</dd>
318
- <dt><b>plain</b></dt>
319
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodplain">csstidy_print::plain()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the CSS code as plain text</dd>
320
- <dt><b>postparse</b></dt>
321
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodpostparse">csstidy_optimise::postparse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimises $css after parsing</dd>
322
- <dt><b>PROPERTY</b></dt>
323
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#definePROPERTY">PROPERTY</a></dd>
324
- <dt><b>property_is_next</b></dt>
325
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodproperty_is_next">csstidy::property_is_next()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if the next word in a string from pos is a CSS property</dd>
326
- <dt><b>property_is_valid</b></dt>
327
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodproperty_is_valid">csstidy::property_is_valid()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks if a property is valid</dd>
328
- </dl>
329
- </div>
330
- <a href="elementindex_csstidy.html#top">top</a><br>
331
- <hr />
332
- <a name="s"></a>
333
- <div>
334
- <h2>s</h2>
335
- <dl>
336
- <dt><b>$selector</b></dt>
337
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$selector">csstidy::$selector</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current selector</dd>
338
- <dt><b>$sel_separate</b></dt>
339
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$sel_separate">csstidy::$sel_separate</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the position of , in selectors</dd>
340
- <dt><b>$settings</b></dt>
341
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$settings">csstidy::$settings</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Stores the settings</dd>
342
- <dt><b>$status</b></dt>
343
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$status">csstidy::$status</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the parser-status.</dd>
344
- <dt><b>$str_char</b></dt>
345
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$str_char">csstidy::$str_char</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the char which opened the last string</dd>
346
- <dt><b>$str_in_str</b></dt>
347
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$str_in_str">csstidy::$str_in_str</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Variable needed to manage string-in-strings, for example url(&quot;foo.png&quot;)</dd>
348
- <dt><b>$sub_value</b></dt>
349
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$sub_value">csstidy::$sub_value</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current sub-value</dd>
350
- <dt><b>$sub_value_arr</b></dt>
351
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$sub_value_arr">csstidy::$sub_value_arr</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array which saves all subvalues for a property.</dd>
352
- <dt><b>SEL_END</b></dt>
353
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineSEL_END">SEL_END</a></dd>
354
- <dt><b>SEL_START</b></dt>
355
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineSEL_START">SEL_START</a></dd>
356
- <dt><b>set_cfg</b></dt>
357
- <dd>in file class.csstidy.php, method <a href="csstidy/csstidy.html#methodset_cfg">csstidy::set_cfg()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the value of a setting.</dd>
358
- <dt><b>shorthand</b></dt>
359
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodshorthand">csstidy_optimise::shorthand()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Compresses shorthand values. Example: margin:1px 1px 1px 1px -&gt; margin:1px</dd>
360
- <dt><b>shorthands</b></dt>
361
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodshorthands">csstidy_optimise::shorthands()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimises shorthands</dd>
362
- <dt><b>size</b></dt>
363
- <dd>in file class.csstidy_print.php, method <a href="csstidy/csstidy_print.html#methodsize">csstidy_print::size()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the size of either input or output CSS in KB</dd>
364
- <dt><b>subvalue</b></dt>
365
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodsubvalue">csstidy_optimise::subvalue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimises a sub-value</dd>
366
- </dl>
367
- </div>
368
- <a href="elementindex_csstidy.html#top">top</a><br>
369
- <hr />
370
- <a name="t"></a>
371
- <div>
372
- <h2>t</h2>
373
- <dl>
374
- <dt><b>$tokens</b></dt>
375
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$tokens">csstidy::$tokens</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the parsed CSS (raw)</dd>
376
- </dl>
377
- </div>
378
- <a href="elementindex_csstidy.html#top">top</a><br>
379
- <hr />
380
- <a name="v"></a>
381
- <div>
382
- <h2>v</h2>
383
- <dl>
384
- <dt><b>$value</b></dt>
385
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$value">csstidy::$value</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves the current value</dd>
386
- <dt><b>$version</b></dt>
387
- <dd>in file class.csstidy.php, variable <a href="csstidy/csstidy.html#var$version">csstidy::$version</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Contains the version of csstidy</dd>
388
- <dt><b>VALUE</b></dt>
389
- <dd>in file data.inc.php, constant <a href="csstidy/_data_inc_php.html#defineVALUE">VALUE</a></dd>
390
- <dt><b>value</b></dt>
391
- <dd>in file class.csstidy_optimise.php, method <a href="csstidy/csstidy_optimise.html#methodvalue">csstidy_optimise::value()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optimises values</dd>
392
- </dl>
393
- </div>
394
- <a href="elementindex_csstidy.html#top">top</a><br>
395
- <div class="credit">
396
- <hr />
397
- Documentation generated on Mon, 15 May 2006 22:54:53 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
398
- </div>
399
- </td></tr></table>
400
- </td>
401
- </tr>
402
- </table>
403
-
404
- </body>
405
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/errors.html DELETED
@@ -1,51 +0,0 @@
1
- <html>
2
- <head>
3
- <title>phpDocumentor Parser Errors and Warnings</title>
4
- <link rel="stylesheet" type="text/css" href="media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- </td>
33
- <td>
34
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
35
-
36
- <a href="#Post-parsing">Post-parsing</a><br>
37
- <a name="data.inc.php"></a>
38
- <h1>data.inc.php</h1>
39
- <h2>Warnings:</h2><br>
40
- <b>Warning on line 25</b> - Page-level DocBlock precedes "define AT_START", use another DocBlock to document the source element<br>
41
- <div class="credit">
42
- <hr />
43
- Documentation generated on Mon, 15 May 2006 22:56:01 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
44
- </div>
45
- </td></tr></table>
46
- </td>
47
- </tr>
48
- </table>
49
-
50
- </body>
51
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/index.html DELETED
@@ -1,68 +0,0 @@
1
- <html>
2
- <head>
3
- <title>CSSTidy Documentation</title>
4
- <link rel="stylesheet" type="text/css" href="media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="csstidy/csstidy.html">csstidy</a><br />
47
- <a href="csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <div align="center"><h1>CSSTidy Documentation</h1></div>
55
- <b>Welcome to csstidy!</b><br />
56
- <br />
57
- This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.3.0RC3</a><br />
58
-
59
  <div class="credit">
60
- <hr />
61
- Documentation generated on Mon, 15 May 2006 22:54:54 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
62
- </div>
63
- </td></tr></table>
64
- </td>
65
- </tr>
66
- </table>
67
-
68
- </body>
69
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
0
  <div class="credit">
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/index.php DELETED
File without changes
vendor/cerdic/css-tidy/Docs/li_csstidy.html DELETED
@@ -1,68 +0,0 @@
1
- <html>
2
- <head>
3
- <title>CSSTidy Documentation</title>
4
- <link rel="stylesheet" type="text/css" href="media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
- <b>Files:</b><br />
33
- <div class="package">
34
- <a href="csstidy/_class_csstidy_php.html"> class.csstidy.php
35
- </a><br>
36
- <a href="csstidy/_class_csstidy_optimise_php.html"> class.csstidy_optimise.php
37
- </a><br>
38
- <a href="csstidy/_class_csstidy_print_php.html"> class.csstidy_print.php
39
- </a><br>
40
- <a href="csstidy/_data_inc_php.html"> data.inc.php
41
- </a><br>
42
- </div><br />
43
-
44
- <b>Classes:</b><br />
45
- <div class="package">
46
- <a href="csstidy/csstidy.html">csstidy</a><br />
47
- <a href="csstidy/csstidy_optimise.html">csstidy_optimise</a><br />
48
- <a href="csstidy/csstidy_print.html">csstidy_print</a><br />
49
- </div>
50
- </td>
51
- <td>
52
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
53
-
54
- <div align="center"><h1>CSSTidy Documentation</h1></div>
55
- <b>Welcome to csstidy!</b><br />
56
- <br />
57
- This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.3.0RC3</a><br />
58
-
59
  <div class="credit">
60
- <hr />
61
- Documentation generated on Mon, 15 May 2006 22:54:53 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
62
- </div>
63
- </td></tr></table>
64
- </td>
65
- </tr>
66
- </table>
67
-
68
- </body>
69
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
0
  <div class="credit">
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/media/background.png DELETED
Binary file
vendor/cerdic/css-tidy/Docs/media/empty.png DELETED
Binary file
vendor/cerdic/css-tidy/Docs/media/index.php DELETED
File without changes
vendor/cerdic/css-tidy/Docs/media/style.css DELETED
@@ -1,197 +0,0 @@
1
- .php {
2
- padding: 1em;
3
- }
4
- /* This will not be executed by IE, so now we have a fix! */
5
- *[class="php-src"], *[class="php"], *[class="listing"] {
6
- line-height: 0px;
7
- }
8
-
9
- body
10
- {
11
- color: #000000;
12
- background-color: #ffffff;
13
- background-image: url("background.png");
14
- background-repeat: repeat-y;
15
- font-family: tahoma, verdana, arial, sans-serif;
16
- font-size: 10pt;
17
- margin: 0;
18
- padding: 0;
19
- }
20
-
21
- a
22
- {
23
- color: #000099;
24
- background-color: transparent;
25
- text-decoration: none;
26
- }
27
-
28
- a:hover
29
- {
30
- text-decoration: underline;
31
- }
32
-
33
- a.menu
34
- {
35
- color: #ffffff;
36
- background-color: transparent;
37
- }
38
-
39
- td
40
- {
41
- font-size: 10pt;
42
- }
43
-
44
- td.header_top
45
- {
46
- color: #ffffff;
47
- background-color: #9999cc;
48
- font-size: 16pt;
49
- font-weight: bold;
50
- text-align: right;
51
- padding: 10px;
52
- }
53
-
54
- td.header_line
55
- {
56
- color: #ffffff;
57
- background-color: #333366;
58
- }
59
-
60
- td.header_menu
61
- {
62
- color: #ffffff;
63
- background-color: #666699;
64
- font-size: 8pt;
65
- text-align: right;
66
- padding: 2px;
67
- padding-right: 5px;
68
- }
69
-
70
- td.menu
71
- {
72
- padding: 2px;
73
- padding-left: 5px;
74
- }
75
-
76
- td.code_border
77
- {
78
- color: #000000;
79
- background-color: #c0c0c0;
80
- }
81
-
82
- td.code
83
- {
84
- color: #000000;
85
- background-color: #f0f0f0;
86
- }
87
-
88
- td.type
89
- {
90
- font-style: italic;
91
- }
92
-
93
- div.credit
94
- {
95
- font-size: 8pt;
96
- text-align: center;
97
- }
98
-
99
- div.package
100
- {
101
- padding-left: 5px;
102
- }
103
-
104
- div.tags
105
- {
106
- padding-left: 15px;
107
- }
108
-
109
- div.function
110
- {
111
- padding-left: 15px;
112
- }
113
-
114
- div.top
115
- {
116
- font-size: 8pt;
117
- }
118
-
119
- div.warning
120
- {
121
- color: #ff0000;
122
- background-color: transparent;
123
- }
124
-
125
- div.description
126
- {
127
- padding-left: 15px;
128
- }
129
-
130
- hr
131
- {
132
- height: 1px;
133
- border-style: solid;
134
- border-color: #c0c0c0;
135
- margin-top: 10px;
136
- margin-bottom: 10px;
137
- }
138
-
139
- span.smalllinenumber
140
- {
141
- font-size: 8pt;
142
- }
143
-
144
- ul {
145
- margin-left: 0px;
146
- padding-left: 8px;
147
- }
148
- /* Syntax highlighting */
149
-
150
- .src-code { background-color: #f5f5f5; border: 1px solid #ccc9a4; padding: 0px; margin : 0px}
151
- /*.src-code pre { }*/
152
-
153
- .src-comm { color: green; }
154
- .src-id { }
155
- .src-inc { color: #0000FF; }
156
- .src-key { color: #0000FF; }
157
- .src-num { color: #CC0000; }
158
- .src-str { color: #66cccc; }
159
- .src-sym { font-weight: bold; }
160
- .src-var { }
161
-
162
- .src-php { font-weight: bold; }
163
-
164
- .src-doc { color: #009999 }
165
- .src-doc-close-template { color: #0000FF }
166
- .src-doc-coretag { color: #0099FF; font-weight: bold }
167
- .src-doc-inlinetag { color: #0099FF }
168
- .src-doc-internal { color: #6699cc }
169
- .src-doc-tag { color: #0080CC }
170
- .src-doc-template { color: #0000FF }
171
- .src-doc-type { font-style: italic }
172
- .src-doc-var { font-style: italic }
173
-
174
- .tute-tag { color: #009999 }
175
- .tute-attribute-name { color: #0000FF }
176
- .tute-attribute-value { color: #0099FF }
177
- .tute-entity { font-weight: bold; }
178
- .tute-comment { font-style: italic }
179
- .tute-inline-tag { color: #636311; font-weight: bold }
180
-
181
- /* tutorial */
182
-
183
- .authors { }
184
- .author { font-style: italic; font-weight: bold }
185
- .author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
186
- .example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
187
- .listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
188
- .release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
189
- .ref-title-box { }
190
- .ref-title { }
191
- .ref-purpose { font-style: italic; color: #666666 }
192
- .ref-synopsis { }
193
- .title { font-weight: bold; margin: 1em 0em 0em 0em; padding: .25em; border: 2px solid #999999; background-color: #9999CC }
194
- .cmd-synopsis { margin: 1em 0em }
195
- .cmd-title { font-weight: bold }
196
- .toc { margin-left: 2em; padding-left: 0em }
197
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/Docs/todolist.html DELETED
@@ -1,77 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Todo List</title>
4
- <link rel="stylesheet" type="text/css" href="media/style.css">
5
- </head>
6
- <body>
7
-
8
- <table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
9
- <tr>
10
- <td class="header_top">csstidy</td>
11
- </tr>
12
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
13
- <tr>
14
- <td class="header_menu">
15
- [ <a href="classtrees_csstidy.html" class="menu">class tree: csstidy</a> ]
16
- [ <a href="elementindex_csstidy.html" class="menu">index: csstidy</a> ]
17
- [ <a href="elementindex.html" class="menu">all elements</a> ]
18
- </td>
19
- </tr>
20
- <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
21
- </table>
22
-
23
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
24
- <tr valign="top">
25
- <td width="200" class="menu">
26
- <div id="todolist">
27
- <p><a href="todolist.html">Todo List</a></p>
28
- </div>
29
- <b>Packages:</b><br />
30
- <a href="li_csstidy.html">csstidy</a><br />
31
- <br /><br />
32
-
33
- </td>
34
- <td>
35
- <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
36
-
37
- <div align="center"><h1>Todo List</h1></div>
38
- <h2>csstidy</h2>
39
- <h3><a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['all_properties']">$GLOBALS['csstidy']['all_properties']</a></h3>
40
- <ul>
41
- <li>Add CSS3 properties</li>
42
- </ul>
43
- <h3><a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['background_prop_default']">$GLOBALS['csstidy']['background_prop_default']</a></h3>
44
- <ul>
45
- <li>Possibly property names will change during CSS3 development</li>
46
- </ul>
47
- <h3><a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['color_values']">$GLOBALS['csstidy']['color_values']</a></h3>
48
- <ul>
49
- <li>CSS3 properties</li>
50
- </ul>
51
- <h3><a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['number_values']">$GLOBALS['csstidy']['number_values']</a></h3>
52
- <ul>
53
- <li>CSS3 properties</li>
54
- </ul>
55
- <h3><a href="csstidy/_data_inc_php.html#global$GLOBALS['csstidy']['shorthands']">$GLOBALS['csstidy']['shorthands']</a></h3>
56
- <ul>
57
- <li>Are there new ones in CSS3?</li>
58
- </ul>
59
- <h3><a href="csstidy/csstidy_optimise.html#methoddissolve_short_bg">csstidy_optimise::dissolve_short_bg()</a></h3>
60
- <ul>
61
- <li>full CSS 3 compliance</li>
62
- </ul>
63
- <h3><a href="csstidy/csstidy_optimise.html#methodmerge_bg">csstidy_optimise::merge_bg()</a></h3>
64
- <ul>
65
- <li>full CSS 3 compliance</li>
66
- </ul>
67
- <div class="credit">
68
- <hr />
69
- Documentation generated on Mon, 15 May 2006 22:56:01 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC3</a>
70
- </div>
71
- </td></tr></table>
72
- </td>
73
- </tr>
74
- </table>
75
-
76
- </body>
77
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/cerdic/css-tidy/README DELETED
@@ -1,49 +0,0 @@
1
- CSSTidy
2
- ---
3
-
4
- CSSTidy is a CSS minifier
5
-
6
- v1.5.2
7
- is PHP 5.4+ compliant, removes use of GLOBALS, fixes some bugs, integrates CSS3 units
8
- and now available on https://packagist.org/packages/cerdic/css-tidy
9
-
10
- v1.4 is the new version coming from master branch (corresponds to the initial trunk of svn repository) after beeing stabilized
11
-
12
- v1.3 branch corresponds to the last stable relase published by the author.
13
- It integrates some bugfixes and a 1.3.1 version has been taged
14
- Since the original project (http://csstidy.sourceforge.net/index.php) has been suspended
15
- here is the import of https://csstidy.svn.sourceforge.net/svnroot/csstidy on 2010-11-14
16
-
17
- Only PHP version is here maintained
18
-
19
- ---
20
-
21
- CSSTidy
22
-
23
- Original Tracker :
24
- http://sourceforge.net/tracker/?group_id=148404&atid=771415
25
-
26
- css_optimiser.php is the web-interface, css_parser.php contains the PHP class (CSSTidy).
27
-
28
- This class represents a CSS parser which reads CSS code and saves it in an array.
29
- In opposite to most other CSS parsers, it does not use regular expressions and
30
- thus has full CSS2 support and a higher reliability. The downside of not using regular expressions
31
- is a lower speed though.
32
- Additional to that it applies some optimisations and fixes to the CSS code.
33
- An online version should be available here: http://cdburnerxp.se/cssparse/css_optimiser.php
34
-
35
-
36
- Copyright 2005, 2006, 2007 Florian Schmitz
37
-
38
- CSSTidy is free software; you can redistribute it and/or modify
39
- it under the terms of the GNU Lesser General Public License as published by
40
- the Free Software Foundation; either version 2.1 of the License, or
41
- (at your option) any later version.
42
-
43
- CSSTidy is distributed in the hope that it will be useful,
44
- but WITHOUT ANY WARRANTY; without even the implied warranty of
45
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
46
- GNU Lesser General Public License for more details.
47
-
48
- You should have received a copy of the GNU Lesser General Public License
49
- along with this program. If not, see <http://www.gnu.org/licenses/>.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/composer/ClassLoader.php CHANGED
@@ -374,13 +374,9 @@ class ClassLoader
374
 
375
  $first = $class[0];
376
  if (isset($this->prefixLengthsPsr4[$first])) {
377
- $subPath = $class;
378
- while (false !== $lastPos = strrpos($subPath, '\\')) {
379
- $subPath = substr($subPath, 0, $lastPos);
380
- $search = $subPath.'\\';
381
- if (isset($this->prefixDirsPsr4[$search])) {
382
- foreach ($this->prefixDirsPsr4[$search] as $dir) {
383
- $length = $this->prefixLengthsPsr4[$first][$search];
384
  if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
385
  return $file;
386
  }
374
 
375
  $first = $class[0];
376
  if (isset($this->prefixLengthsPsr4[$first])) {
377
+ foreach ($this->prefixLengthsPsr4[$first] as $prefix => $length) {
378
+ if (0 === strpos($class, $prefix)) {
379
+ foreach ($this->prefixDirsPsr4[$prefix] as $dir) {
 
 
 
 
380
  if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
381
  return $file;
382
  }
vendor/composer/LICENSE DELETED
@@ -1,21 +0,0 @@
1
-
2
- Copyright (c) Nils Adermann, Jordi Boggiano
3
-
4
- Permission is hereby granted, free of charge, to any person obtaining a copy
5
- of this software and associated documentation files (the "Software"), to deal
6
- in the Software without restriction, including without limitation the rights
7
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
- copies of the Software, and to permit persons to whom the Software is furnished
9
- to do so, subject to the following conditions:
10
-
11
- The above copyright notice and this permission notice shall be included in all
12
- copies or substantial portions of the Software.
13
-
14
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20
- THE SOFTWARE.
21
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInitd916a28d50ec598e94c77621f9ba06e2
6
  {
7
  private static $loader;
8
 
@@ -19,15 +19,15 @@ class ComposerAutoloaderInitd916a28d50ec598e94c77621f9ba06e2
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInitd916a28d50ec598e94c77621f9ba06e2', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInitd916a28d50ec598e94c77621f9ba06e2', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
- call_user_func(\Composer\Autoload\ComposerStaticInitd916a28d50ec598e94c77621f9ba06e2::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
@@ -48,19 +48,19 @@ class ComposerAutoloaderInitd916a28d50ec598e94c77621f9ba06e2
48
  $loader->register(true);
49
 
50
  if ($useStaticLoader) {
51
- $includeFiles = Composer\Autoload\ComposerStaticInitd916a28d50ec598e94c77621f9ba06e2::$files;
52
  } else {
53
  $includeFiles = require __DIR__ . '/autoload_files.php';
54
  }
55
  foreach ($includeFiles as $fileIdentifier => $file) {
56
- composerRequired916a28d50ec598e94c77621f9ba06e2($fileIdentifier, $file);
57
  }
58
 
59
  return $loader;
60
  }
61
  }
62
 
63
- function composerRequired916a28d50ec598e94c77621f9ba06e2($fileIdentifier, $file)
64
  {
65
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
66
  require $file;
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit140f378aef1efbd5960ba3ca5adb17f6
6
  {
7
  private static $loader;
8
 
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInit140f378aef1efbd5960ba3ca5adb17f6', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInit140f378aef1efbd5960ba3ca5adb17f6', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
+ call_user_func(\Composer\Autoload\ComposerStaticInit140f378aef1efbd5960ba3ca5adb17f6::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
48
  $loader->register(true);
49
 
50
  if ($useStaticLoader) {
51
+ $includeFiles = Composer\Autoload\ComposerStaticInit140f378aef1efbd5960ba3ca5adb17f6::$files;
52
  } else {
53
  $includeFiles = require __DIR__ . '/autoload_files.php';
54
  }
55
  foreach ($includeFiles as $fileIdentifier => $file) {
56
+ composerRequire140f378aef1efbd5960ba3ca5adb17f6($fileIdentifier, $file);
57
  }
58
 
59
  return $loader;
60
  }
61
  }
62
 
63
+ function composerRequire140f378aef1efbd5960ba3ca5adb17f6($fileIdentifier, $file)
64
  {
65
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
66
  require $file;
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInitd916a28d50ec598e94c77621f9ba06e2
8
  {
9
  public static $files = array (
10
  '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
@@ -635,10 +635,10 @@ class ComposerStaticInitd916a28d50ec598e94c77621f9ba06e2
635
  public static function getInitializer(ClassLoader $loader)
636
  {
637
  return \Closure::bind(function () use ($loader) {
638
- $loader->prefixLengthsPsr4 = ComposerStaticInitd916a28d50ec598e94c77621f9ba06e2::$prefixLengthsPsr4;
639
- $loader->prefixDirsPsr4 = ComposerStaticInitd916a28d50ec598e94c77621f9ba06e2::$prefixDirsPsr4;
640
- $loader->prefixesPsr0 = ComposerStaticInitd916a28d50ec598e94c77621f9ba06e2::$prefixesPsr0;
641
- $loader->classMap = ComposerStaticInitd916a28d50ec598e94c77621f9ba06e2::$classMap;
642
 
643
  }, null, ClassLoader::class);
644
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit140f378aef1efbd5960ba3ca5adb17f6
8
  {
9
  public static $files = array (
10
  '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
635
  public static function getInitializer(ClassLoader $loader)
636
  {
637
  return \Closure::bind(function () use ($loader) {
638
+ $loader->prefixLengthsPsr4 = ComposerStaticInit140f378aef1efbd5960ba3ca5adb17f6::$prefixLengthsPsr4;
639
+ $loader->prefixDirsPsr4 = ComposerStaticInit140f378aef1efbd5960ba3ca5adb17f6::$prefixDirsPsr4;
640
+ $loader->prefixesPsr0 = ComposerStaticInit140f378aef1efbd5960ba3ca5adb17f6::$prefixesPsr0;
641
+ $loader->classMap = ComposerStaticInit140f378aef1efbd5960ba3ca5adb17f6::$classMap;
642
 
643
  }, null, ClassLoader::class);
644
  }
vendor/j4mie/idiorm/CONTRIBUTING.md DELETED
@@ -1,16 +0,0 @@
1
- ---
2
- ### Feature complete
3
-
4
- Idiorm is now considered to be feature complete as of version 1.5.0. Whilst it will continue to be maintained with bug fixes there will be no further new features added.
5
-
6
- **Please do not submit feature requests or pull requests adding new features as they will be closed without ceremony.**
7
-
8
- ---
9
-
10
- When making a pull request please include the following aspects:
11
-
12
- - Update the changelog in the README.markdown file to include details of the pull request
13
- - If the documentation in the README or Sphinx docs needs to be amended please do so in the pull request
14
- - Include unit tests for any changes - if it is a bug include at least one regression test
15
-
16
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/README.markdown DELETED
@@ -1,205 +0,0 @@
1
- Idiorm
2
- ======
3
-
4
- [![Build Status](https://travis-ci.org/j4mie/idiorm.png?branch=master)](https://travis-ci.org/j4mie/idiorm) [![Latest Stable Version](https://poser.pugx.org/j4mie/idiorm/v/stable.png)](https://packagist.org/packages/j4mie/idiorm) [![Total Downloads](https://poser.pugx.org/j4mie/idiorm/downloads.png)](https://packagist.org/packages/j4mie/idiorm) [![Code Climate](https://codeclimate.com/github/j4mie/idiorm/badges/gpa.svg)](https://codeclimate.com/github/j4mie/idiorm)
5
-
6
- [http://j4mie.github.com/idiormandparis/](http://j4mie.github.com/idiormandparis/)
7
-
8
- ---
9
- ### Feature complete
10
-
11
- Idiorm is now considered to be feature complete as of version 1.5.0. Whilst it will continue to be maintained with bug fixes there will be no further new features added from this point on.
12
-
13
- **Please do not submit feature requests or pull requests adding new features as they will be closed without ceremony.**
14
-
15
- ---
16
-
17
- A lightweight nearly-zero-configuration object-relational mapper and fluent query builder for PHP5.
18
-
19
- Tested on PHP 5.2.0+ - may work on earlier versions with PDO and the correct database drivers.
20
-
21
- Released under a [BSD license](http://en.wikipedia.org/wiki/BSD_licenses).
22
-
23
- **See Also: [Paris](http://github.com/j4mie/paris), an Active Record implementation built on top of Idiorm.**
24
-
25
- Features
26
- --------
27
-
28
- * Makes simple queries and simple CRUD operations completely painless.
29
- * Gets out of the way when more complex SQL is required.
30
- * Built on top of [PDO](http://php.net/pdo).
31
- * Uses [prepared statements](http://uk.php.net/manual/en/pdo.prepared-statements.php) throughout to protect against [SQL injection](http://en.wikipedia.org/wiki/SQL_injection) attacks.
32
- * Requires no model classes, no XML configuration and no code generation: works out of the box, given only a connection string.
33
- * Consists of one main class called `ORM`. Additional classes are prefixed with `Idiorm`. Minimal global namespace pollution.
34
- * Database agnostic. Currently supports SQLite, MySQL, Firebird and PostgreSQL. May support others, please give it a try!
35
- * Supports collections of models with method chaining to filter or apply actions to multiple results at once.
36
- * Multiple connections supported
37
- * PSR-1 compliant methods (any method can be called in camelCase instead of underscores eg. `find_many()` becomes `findMany()`) - you'll need PHP 5.3+
38
-
39
- Documentation
40
- -------------
41
-
42
- The documentation is hosted on Read the Docs: [idiorm.rtfd.org](http://idiorm.rtfd.org)
43
-
44
- ### Building the Docs ###
45
-
46
- You will need to install [Sphinx](http://sphinx-doc.org/) and then in the docs folder run:
47
-
48
- make html
49
-
50
- The documentation will now be in docs/_build/html/index.html
51
-
52
- Let's See Some Code
53
- -------------------
54
-
55
- ```php
56
- $user = ORM::for_table('user')
57
- ->where_equal('username', 'j4mie')
58
- ->find_one();
59
-
60
- $user->first_name = 'Jamie';
61
- $user->save();
62
-
63
- $tweets = ORM::for_table('tweet')
64
- ->select('tweet.*')
65
- ->join('user', array(
66
- 'user.id', '=', 'tweet.user_id'
67
- ))
68
- ->where_equal('user.username', 'j4mie')
69
- ->find_many();
70
-
71
- foreach ($tweets as $tweet) {
72
- echo $tweet->text;
73
- }
74
- ```
75
-
76
- Changelog
77
- ---------
78
- #### 1.5.2 - released 2016-12-14
79
-
80
- * Fix autoincremented compound keys inserts [[lrlopez](https://github.com/lrlopez)] - [issue #233](https://github.com/j4mie/idiorm/issues/233) and [pull #235](https://github.com/j4mie/idiorm/pull/235)
81
- * Add @method tags for magic methods [[stellis](https://github.com/stellis)] - [issue #237](https://github.com/j4mie/idiorm/issues/237)
82
- * Ensure `is_dirty()` returns correctly when fed null or an empty string [[tentwofour](https://github.com/tentwofour)] - [issue #268](https://github.com/j4mie/idiorm/issues/268)
83
- * Adding Code Climate badge to the readme file [[e3betht](https://github.com/e3betht)] - [issue #260](https://github.com/j4mie/idiorm/issues/260)
84
- * Typo in navigation [[leongersen](https://github.com/leongersen)] - [issue #257](https://github.com/j4mie/idiorm/issues/257)
85
- * Support named placeholders logging and test [[m92o](https://github.com/m92o)] - [issue #223](https://github.com/j4mie/idiorm/issues/223)
86
- * `having_id_is()` reference undefined variable `$value` [[Treffynnon](https://github.com/treffynnon)] - [issue #224](https://github.com/j4mie/idiorm/issues/224)
87
- * Documentation fix - ORM query output for `where_any_is()` [[uovidiu](https://github.com/uovidiu)] - [issue #306](https://github.com/j4mie/idiorm/issues/306)
88
- * Code style fix preventing nested loops from using the same variable names [[mkkeck](https://github.com/mkkeck)] - [issue #301](https://github.com/j4mie/idiorm/issues/301)
89
- * Document shortcomings of the built in query logger [[Treffynnon](https://github.com/treffynnon)] - [issue #307](https://github.com/j4mie/idiorm/issues/307)
90
- * Add phpunit to dev dependencies, add `composer test` script shortcut and fix PDO mock in test bootstrap [[Treffynnon](https://github.com/treffynnon)]
91
- * New test for multiple raw where clauses [[Treffynnon](https://github.com/treffynnon)] - [issue #236](https://github.com/j4mie/idiorm/issues/236)
92
- * Remove PHP 5.2 from travis-ci containers to test against (**note** Idiorm still supports PHP 5.2 despite this) [[Treffynnon](https://github.com/treffynnon)]
93
-
94
- #### 1.5.1 - released 2014-06-23
95
-
96
- * Binding of named parameters was broken [[cainmi](https://github.com/cainmi)] - [issue #221](https://github.com/j4mie/idiorm/pull/221)
97
-
98
- #### 1.5.0 - released 2014-06-22
99
-
100
- * Multiple OR'ed conditions support [[lrlopez](https://github.com/lrlopez)] - [issue #201](https://github.com/j4mie/idiorm/issues/201)
101
- * `where_id_in()` for selecting multiple records by primary key [[lrlopez](https://github.com/lrlopez)] - [issue #202](https://github.com/j4mie/idiorm/issues/202)
102
- * Add compound primary key support [[lrlopez](https://github.com/lrlopez)] - [issue #171](https://github.com/j4mie/idiorm/issues/171)
103
- * Add a RAW JOIN source to the query [[moiseevigor](https://github.com/moiseevigor)] - [issue #163](https://github.com/j4mie/idiorm/issues/163)
104
- * offsetExists() should return true for null values, resolves [#181](https://github.com/j4mie/idiorm/issues/181) [[cainmi](https://github.com/cainmi)] - [issue #214](https://github.com/j4mie/idiorm/pull/214)
105
- * Custom cache callback functions [[peter-mw](https://github.com/peter-mw)] - [issue #216](https://github.com/j4mie/idiorm/pull/216)
106
- * Restrict null primary keys on update/delete, resolves [#203](https://github.com/j4mie/idiorm/issues/203) [[cainmi](https://github.com/cainmi)] - [issue #205](https://github.com/j4mie/idiorm/issues/205)
107
- * Ensure parameters treated by type correctly [[charsleysa](https://github.com/charsleysa)] & [[SneakyBobito](https://github.com/SneakyBobito)] - [issue #206](https://github.com/j4mie/idiorm/issues/206) & [issue #208](https://github.com/j4mie/idiorm/issues/208)
108
- * Reduce the type casting on aggregate functions to allow characters [[herroffizier](https://github.com/herroffizier)] - [issue #150](https://github.com/j4mie/idiorm/issues/150)
109
- * Prevent invalid method calls from triggering infinite recursion [[michaelward82](https://github.com/michaelward82)] - [issue #152](https://github.com/j4mie/idiorm/issues/152)
110
- * Add time to query logging - adds query time parameter to external logger callback function [[AgelxNash](https://github.com/AgelxNash)] - [issue #180](https://github.com/j4mie/idiorm/issues/180)
111
- * Changed database array access to ensure it's always properly setup [[falmp](https://github.com/falmp)] - [issue #159](https://github.com/j4mie/idiorm/issues/159)
112
- * Allow unsetting the db (`ORM::set_db(null)`) to make the test work again [[borrel](https://github.com/borrel)] - [issue #160](https://github.com/j4mie/idiorm/issues/160)
113
- * Correct [issue #176](https://github.com/j4mie/idiorm/issues/176): Ensure database setup before building select [[kendru](https://github.com/kendru)] - [issue #197](https://github.com/j4mie/idiorm/issues/197)
114
- * Add HHVM to travis-ci build matrix [[ptarjan](https://github.com/ptarjan)] - [issue #168](https://github.com/j4mie/idiorm/issues/168)
115
- * Improve where statement precendence documentation [[thomasahle](https://github.com/thomasahle)] - [issue #190](https://github.com/j4mie/idiorm/issues/190)
116
- * Improve testing checks [[charsleysa](https://github.com/charsleysa)] - [issue #173](https://github.com/j4mie/idiorm/issues/173)
117
-
118
- #### 1.4.1 - released 2013-12-12
119
-
120
- **Patch update to remove a broken pull request** - may have consequences for users of 1.4.0 that exploited the "`find_many()` now returns an associative array with the databases primary ID as the array keys" change that was merged in 1.4.0.
121
-
122
- * Back out pull request/issue [#133](https://github.com/j4mie/idiorm/pull/133) as it breaks backwards compatibility in previously unexpected ways (see [#162](https://github.com/j4mie/idiorm/pull/162), [#156](https://github.com/j4mie/idiorm/issues/156) and [#133](https://github.com/j4mie/idiorm/pull/133#issuecomment-29063108)) - sorry for merging this change into Idiorm - closes [issue 156](https://github.com/j4mie/idiorm/issues/156)
123
-
124
- #### 1.4.0 - released 2013-09-05
125
-
126
- * `find_many()` now returns an associative array with the databases primary ID as the array keys [[Surt](https://github.com/Surt)] - [issue #133](https://github.com/j4mie/idiorm/issues/133)
127
- * Calls to `set()` and `set_expr()` return `$this` allowing them to be chained [[Surt](https://github.com/Surt)]
128
- * Add PSR-1 compliant camelCase method calls to Idiorm (PHP 5.3+ required) [[crhayes](https://github.com/crhayes)] - [issue #108](https://github.com/j4mie/idiorm/issues/108)
129
- * Add static method `get_config()` to access current configuration [[javierd](https://github.com/mikejestes)] - [issue #141](https://github.com/j4mie/idiorm/issues/141)
130
- * Add logging callback functionality [[lalop](https://github.com/lalop)] - [issue #130](https://github.com/j4mie/idiorm/issues/130)
131
- * Add support for MS SQL ``TOP`` limit style (automatically used for PDO drivers: sqlsrv, dblib and mssql) [[numkem](https://github.com/numkem)] - [issue #116](https://github.com/j4mie/idiorm/issues/116)
132
- * Uses table aliases in `WHERE` clauses [[vicvicvic](https://github.com/vicvicvic)] - [issue #140](https://github.com/j4mie/idiorm/issues/140)
133
- * Ignore result columns when calling an aggregate function [[tassoevan](https://github.com/tassoevan)] - [issue #120](https://github.com/j4mie/idiorm/issues/120)
134
- * Improve documentation [[bruston](https://github.com/bruston)] - [issue #111](https://github.com/j4mie/idiorm/issues/111)
135
- * Improve PHPDoc on `get_db()` [[mailopl](https://github.com/mailopl)] - [issue #106](https://github.com/j4mie/idiorm/issues/106)
136
- * Improve documentation [[sjparsons](https://github.com/sjparsons)] - [issue #103](https://github.com/j4mie/idiorm/issues/103)
137
- * Make tests/bootstrap.php HHVM compatible [[JoelMarcey](https://github.com/JoelMarcey)] - [issue #143](https://github.com/j4mie/idiorm/issues/143)
138
- * Fix docblock [[ulrikjohansson](https://github.com/ulrikjohansson)] - [issue #147](https://github.com/j4mie/idiorm/issues/147)
139
- * Fix incorrect variable name in querying documentation [[fridde](https://github.com/fridde)] - [issue #146](https://github.com/j4mie/idiorm/issues/146)
140
-
141
- #### 1.3.0 - released 2013-01-31
142
-
143
- * Documentation moved to [idiorm.rtfd.org](http://idiorm.rtfd.org) and now built using [Sphinx](http://sphinx-doc.org/)
144
- * Add support for multiple database connections - closes [issue #15](https://github.com/j4mie/idiorm/issues/15) [[tag](https://github.com/tag)]
145
- * Add in raw_execute - closes [issue #40](https://github.com/j4mie/idiorm/issues/40) [[tag](https://github.com/tag)]
146
- * Add `get_last_statement()` - closes [issue #84](https://github.com/j4mie/idiorm/issues/84) [[tag](https://github.com/tag)]
147
- * Add HAVING clause functionality - closes [issue #50](https://github.com/j4mie/idiorm/issues/50)
148
- * Add `is_new` method - closes [issue #85](https://github.com/j4mie/idiorm/issues/85)
149
- * Add `ArrayAccess` support to the model instances allowing property access via `$model['field']` as well as `$model->field` - [issue #51](https://github.com/j4mie/idiorm/issues/51)
150
- * Add a result set object for collections of models that can support method chains to filter or apply actions to multiple results at once - issue [#51](https://github.com/j4mie/idiorm/issues/51) and [#22](https://github.com/j4mie/idiorm/issues/22)
151
- * Add support for [Firebird](http://www.firebirdsql.org) with `ROWS` and `TO` result set limiting and identifier quoting [[mapner](https://github.com/mapner)] - [issue #98](https://github.com/j4mie/idiorm/issues/98)
152
- * Fix last insert ID for PostgreSQL using RETURNING - closes issues [#62](https://github.com/j4mie/idiorm/issues/62) and [#89](https://github.com/j4mie/idiorm/issues/89) [[laacz](https://github.com/laacz)]
153
- * Reset Idiorm after performing a query to allow for calling `count()` and then `find_many()` [[fayland](https://github.com/fayland)] - [issue #97](https://github.com/j4mie/idiorm/issues/97)
154
- * Change Composer to use a classmap so that autoloading is better supported [[javierd](https://github.com/javiervd)] - [issue #96](https://github.com/j4mie/idiorm/issues/96)
155
- * Add query logging to `delete_many` [[tag](https://github.com/tag)]
156
- * Fix when using `set_expr` alone it doesn't trigger query creation - closes [issue #90](https://github.com/j4mie/idiorm/issues/90)
157
- * Escape quote symbols in "_quote_identifier_part" - close [issue #74](https://github.com/j4mie/idiorm/issues/74)
158
- * Fix issue with aggregate functions always returning `int` when is `float` sometimes required - closes [issue #92](https://github.com/j4mie/idiorm/issues/92)
159
- * Move testing into PHPUnit to unify method testing and query generation testing
160
-
161
- #### 1.2.3 - released 2012-11-28
162
-
163
- * Fix [issue #78](https://github.com/j4mie/idiorm/issues/78) - remove use of PHP 5.3 static call
164
-
165
- #### 1.2.2 - released 2012-11-15
166
-
167
- * Fix bug where input parameters were sent as part-indexed, part associative
168
-
169
- #### 1.2.1 - released 2012-11-15
170
-
171
- * Fix minor bug caused by IdiormStringException not extending Exception
172
-
173
- #### 1.2.0 - released 2012-11-14
174
-
175
- * Setup composer for installation via packagist (j4mie/idiorm)
176
- * Add `order_by_expr` method [[sandermarechal](http://github.com/sandermarechal)]
177
- * Add support for raw queries without parameters argument [[sandermarechal](http://github.com/sandermarechal)]
178
- * Add support to set multiple properties at once by passing an associative array to `set` method [[sandermarechal](http://github.com/sandermarechal)]
179
- * Allow an associative array to be passed to `configure` method [[jordanlev](http://github.com/jordanlev)]
180
- * Patch to allow empty Paris models to be saved ([[j4mie/paris](http://github.com/j4mie/paris)]) - [issue #58](https://github.com/j4mie/idiorm/issues/58)
181
- * Add `select_many` and `select_many_expr` - closing issues [#49](https://github.com/j4mie/idiorm/issues/49) and [#69](https://github.com/j4mie/idiorm/issues/69)
182
- * Add support for `MIN`, `AVG`, `MAX` and `SUM` - closes [issue #16](https://github.com/j4mie/idiorm/issues/16)
183
- * Add `group_by_expr` - closes [issue #24](https://github.com/j4mie/idiorm/issues/24)
184
- * Add `set_expr` to allow database expressions to be set as ORM properties - closes issues [#59](https://github.com/j4mie/idiorm/issues/59) and [#43](https://github.com/j4mie/idiorm/issues/43) [[brianherbert](https://github.com/brianherbert)]
185
- * Prevent ambiguous column names when joining tables - [issue #66](https://github.com/j4mie/idiorm/issues/66) [[hellogerard](https://github.com/hellogerard)]
186
- * Add `delete_many` method [[CBeerta](https://github.com/CBeerta)]
187
- * Allow unsetting of ORM parameters [[CBeerta](https://github.com/CBeerta)]
188
- * Add `find_array` to get the records as associative arrays [[Surt](https://github.com/Surt)] - closes [issue #17](https://github.com/j4mie/idiorm/issues/17)
189
- * Fix bug in `_log_query` with `?` and `%` supplied in raw where statements etc. - closes [issue #57](https://github.com/j4mie/idiorm/issues/57) [[ridgerunner](https://github.com/ridgerunner)]
190
-
191
- #### 1.1.1 - released 2011-01-30
192
-
193
- * Fix bug in quoting column wildcard. j4mie/paris#12
194
- * Small documentation improvements
195
-
196
- #### 1.1.0 - released 2011-01-24
197
-
198
- * Add `is_dirty` method
199
- * Add basic query caching
200
- * Add `distinct` method
201
- * Add `group_by` method
202
-
203
- #### 1.0.0 - released 2010-12-01
204
-
205
- * Initial release
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/Makefile DELETED
@@ -1,153 +0,0 @@
1
- # Makefile for Sphinx documentation
2
- #
3
-
4
- # You can set these variables from the command line.
5
- SPHINXOPTS =
6
- SPHINXBUILD = sphinx-build
7
- PAPER =
8
- BUILDDIR = _build
9
-
10
- # Internal variables.
11
- PAPEROPT_a4 = -D latex_paper_size=a4
12
- PAPEROPT_letter = -D latex_paper_size=letter
13
- ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
14
- # the i18n builder cannot share the environment and doctrees with the others
15
- I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
16
-
17
- .PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
18
-
19
- help:
20
- @echo "Please use \`make <target>' where <target> is one of"
21
- @echo " html to make standalone HTML files"
22
- @echo " dirhtml to make HTML files named index.html in directories"
23
- @echo " singlehtml to make a single large HTML file"
24
- @echo " pickle to make pickle files"
25
- @echo " json to make JSON files"
26
- @echo " htmlhelp to make HTML files and a HTML help project"
27
- @echo " qthelp to make HTML files and a qthelp project"
28
- @echo " devhelp to make HTML files and a Devhelp project"
29
- @echo " epub to make an epub"
30
- @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
31
- @echo " latexpdf to make LaTeX files and run them through pdflatex"
32
- @echo " text to make text files"
33
- @echo " man to make manual pages"
34
- @echo " texinfo to make Texinfo files"
35
- @echo " info to make Texinfo files and run them through makeinfo"
36
- @echo " gettext to make PO message catalogs"
37
- @echo " changes to make an overview of all changed/added/deprecated items"
38
- @echo " linkcheck to check all external links for integrity"
39
- @echo " doctest to run all doctests embedded in the documentation (if enabled)"
40
-
41
- clean:
42
- -rm -rf $(BUILDDIR)/*
43
-
44
- html:
45
- $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
46
- @echo
47
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
48
-
49
- dirhtml:
50
- $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
51
- @echo
52
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
53
-
54
- singlehtml:
55
- $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
56
- @echo
57
- @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
58
-
59
- pickle:
60
- $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
61
- @echo
62
- @echo "Build finished; now you can process the pickle files."
63
-
64
- json:
65
- $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
66
- @echo
67
- @echo "Build finished; now you can process the JSON files."
68
-
69
- htmlhelp:
70
- $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
71
- @echo
72
- @echo "Build finished; now you can run HTML Help Workshop with the" \
73
- ".hhp project file in $(BUILDDIR)/htmlhelp."
74
-
75
- qthelp:
76
- $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
77
- @echo
78
- @echo "Build finished; now you can run "qcollectiongenerator" with the" \
79
- ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
80
- @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/Idiorm.qhcp"
81
- @echo "To view the help file:"
82
- @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Idiorm.qhc"
83
-
84
- devhelp:
85
- $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
86
- @echo
87
- @echo "Build finished."
88
- @echo "To view the help file:"
89
- @echo "# mkdir -p $$HOME/.local/share/devhelp/Idiorm"
90
- @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Idiorm"
91
- @echo "# devhelp"
92
-
93
- epub:
94
- $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
95
- @echo
96
- @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
97
-
98
- latex:
99
- $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
100
- @echo
101
- @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
102
- @echo "Run \`make' in that directory to run these through (pdf)latex" \
103
- "(use \`make latexpdf' here to do that automatically)."
104
-
105
- latexpdf:
106
- $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
107
- @echo "Running LaTeX files through pdflatex..."
108
- $(MAKE) -C $(BUILDDIR)/latex all-pdf
109
- @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
110
-
111
- text:
112
- $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
113
- @echo
114
- @echo "Build finished. The text files are in $(BUILDDIR)/text."
115
-
116
- man:
117
- $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
118
- @echo
119
- @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
120
-
121
- texinfo:
122
- $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
123
- @echo
124
- @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
125
- @echo "Run \`make' in that directory to run these through makeinfo" \
126
- "(use \`make info' here to do that automatically)."
127
-
128
- info:
129
- $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
130
- @echo "Running Texinfo files through makeinfo..."
131
- make -C $(BUILDDIR)/texinfo info
132
- @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
133
-
134
- gettext:
135
- $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
136
- @echo
137
- @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
138
-
139
- changes:
140
- $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
141
- @echo
142
- @echo "The overview file is in $(BUILDDIR)/changes."
143
-
144
- linkcheck:
145
- $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
146
- @echo
147
- @echo "Link check complete; look for any errors in the above output " \
148
- "or in $(BUILDDIR)/linkcheck/output.txt."
149
-
150
- doctest:
151
- $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
152
- @echo "Testing of doctests in the sources finished, look at the " \
153
- "results in $(BUILDDIR)/doctest/output.txt."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/conf.py DELETED
@@ -1,242 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- #
3
- # Idiorm documentation build configuration file, created by
4
- # sphinx-quickstart on Wed Nov 28 15:39:16 2012.
5
- #
6
- # This file is execfile()d with the current directory set to its containing dir.
7
- #
8
- # Note that not all possible configuration values are present in this
9
- # autogenerated file.
10
- #
11
- # All configuration values have a default; values that are commented out
12
- # serve to show the default.
13
-
14
- import sys, os
15
-
16
- # If extensions (or modules to document with autodoc) are in another directory,
17
- # add these directories to sys.path here. If the directory is relative to the
18
- # documentation root, use os.path.abspath to make it absolute, like shown here.
19
- #sys.path.insert(0, os.path.abspath('.'))
20
-
21
- # -- General configuration -----------------------------------------------------
22
-
23
- # If your documentation needs a minimal Sphinx version, state it here.
24
- #needs_sphinx = '1.0'
25
-
26
- # Add any Sphinx extension module names here, as strings. They can be extensions
27
- # coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
28
- extensions = []
29
-
30
- # Add any paths that contain templates here, relative to this directory.
31
- templates_path = ['_templates']
32
-
33
- # The suffix of source filenames.
34
- source_suffix = '.rst'
35
-
36
- # The encoding of source files.
37
- #source_encoding = 'utf-8-sig'
38
-
39
- # The master toctree document.
40
- master_doc = 'index'
41
-
42
- # General information about the project.
43
- project = u'Idiorm'
44
- copyright = u'2014, Jamie Matthews and Simon Holywell'
45
-
46
- # The version info for the project you're documenting, acts as replacement for
47
- # |version| and |release|, also used in various other places throughout the
48
- # built documents.
49
- #
50
- # The short X.Y version.
51
- version = ''
52
- # The full version, including alpha/beta/rc tags.
53
- release = ''
54
-
55
- # The language for content autogenerated by Sphinx. Refer to documentation
56
- # for a list of supported languages.
57
- #language = None
58
-
59
- # There are two options for replacing |today|: either, you set today to some
60
- # non-false value, then it is used:
61
- #today = ''
62
- # Else, today_fmt is used as the format for a strftime call.
63
- #today_fmt = '%B %d, %Y'
64
-
65
- # List of patterns, relative to source directory, that match files and
66
- # directories to ignore when looking for source files.
67
- exclude_patterns = ['_build']
68
-
69
- # The reST default role (used for this markup: `text`) to use for all documents.
70
- #default_role = None
71
-
72
- # If true, '()' will be appended to :func: etc. cross-reference text.
73
- #add_function_parentheses = True
74
-
75
- # If true, the current module name will be prepended to all description
76
- # unit titles (such as .. function::).
77
- #add_module_names = True
78
-
79
- # If true, sectionauthor and moduleauthor directives will be shown in the
80
- # output. They are ignored by default.
81
- #show_authors = False
82
-
83
- # The name of the Pygments (syntax highlighting) style to use.
84
- pygments_style = 'sphinx'
85
-
86
- # A list of ignored prefixes for module index sorting.
87
- #modindex_common_prefix = []
88
-
89
-
90
- # -- Options for HTML output ---------------------------------------------------
91
-
92
- # The theme to use for HTML and HTML Help pages. See the documentation for
93
- # a list of builtin themes.
94
- html_theme = 'default'
95
-
96
- # Theme options are theme-specific and customize the look and feel of a theme
97
- # further. For a list of options available for each theme, see the
98
- # documentation.
99
- #html_theme_options = {}
100
-
101
- # Add any paths that contain custom themes here, relative to this directory.
102
- #html_theme_path = []
103
-
104
- # The name for this set of Sphinx documents. If None, it defaults to
105
- # "<project> v<release> documentation".
106
- #html_title = None
107
-
108
- # A shorter title for the navigation bar. Default is the same as html_title.
109
- #html_short_title = None
110
-
111
- # The name of an image file (relative to this directory) to place at the top
112
- # of the sidebar.
113
- #html_logo = None
114
-
115
- # The name of an image file (within the static path) to use as favicon of the
116
- # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
117
- # pixels large.
118
- #html_favicon = None
119
-
120
- # Add any paths that contain custom static files (such as style sheets) here,
121
- # relative to this directory. They are copied after the builtin static files,
122
- # so a file named "default.css" will overwrite the builtin "default.css".
123
- html_static_path = ['_static']
124
-
125
- # If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
126
- # using the given strftime format.
127
- #html_last_updated_fmt = '%b %d, %Y'
128
-
129
- # If true, SmartyPants will be used to convert quotes and dashes to
130
- # typographically correct entities.
131
- #html_use_smartypants = True
132
-
133
- # Custom sidebar templates, maps document names to template names.
134
- #html_sidebars = {}
135
-
136
- # Additional templates that should be rendered to pages, maps page names to
137
- # template names.
138
- #html_additional_pages = {}
139
-
140
- # If false, no module index is generated.
141
- #html_domain_indices = True
142
-
143
- # If false, no index is generated.
144
- #html_use_index = True
145
-
146
- # If true, the index is split into individual pages for each letter.
147
- #html_split_index = False
148
-
149
- # If true, links to the reST sources are added to the pages.
150
- #html_show_sourcelink = True
151
-
152
- # If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
153
- #html_show_sphinx = True
154
-
155
- # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
156
- #html_show_copyright = True
157
-
158
- # If true, an OpenSearch description file will be output, and all pages will
159
- # contain a <link> tag referring to it. The value of this option must be the
160
- # base URL from which the finished HTML is served.
161
- #html_use_opensearch = ''
162
-
163
- # This is the file name suffix for HTML files (e.g. ".xhtml").
164
- #html_file_suffix = None
165
-
166
- # Output file base name for HTML help builder.
167
- htmlhelp_basename = 'Idiormdoc'
168
-
169
-
170
- # -- Options for LaTeX output --------------------------------------------------
171
-
172
- latex_elements = {
173
- # The paper size ('letterpaper' or 'a4paper').
174
- #'papersize': 'letterpaper',
175
-
176
- # The font size ('10pt', '11pt' or '12pt').
177
- #'pointsize': '10pt',
178
-
179
- # Additional stuff for the LaTeX preamble.
180
- #'preamble': '',
181
- }
182
-
183
- # Grouping the document tree into LaTeX files. List of tuples
184
- # (source start file, target name, title, author, documentclass [howto/manual]).
185
- latex_documents = [
186
- ('index', 'Idiorm.tex', u'Idiorm Documentation',
187
- u'Jamie Matthews and Simon Holywell', 'manual'),
188
- ]
189
-
190
- # The name of an image file (relative to this directory) to place at the top of
191
- # the title page.
192
- #latex_logo = None
193
-
194
- # For "manual" documents, if this is true, then toplevel headings are parts,
195
- # not chapters.
196
- #latex_use_parts = False
197
-
198
- # If true, show page references after internal links.
199
- #latex_show_pagerefs = False
200
-
201
- # If true, show URL addresses after external links.
202
- #latex_show_urls = False
203
-
204
- # Documents to append as an appendix to all manuals.
205
- #latex_appendices = []
206
-
207
- # If false, no module index is generated.
208
- #latex_domain_indices = True
209
-
210
-
211
- # -- Options for manual page output --------------------------------------------
212
-
213
- # One entry per manual page. List of tuples
214
- # (source start file, name, description, authors, manual section).
215
- man_pages = [
216
- ('index', 'idiorm', u'Idiorm Documentation',
217
- [u'Jamie Matthews and Simon Holywell'], 1)
218
- ]
219
-
220
- # If true, show URL addresses after external links.
221
- #man_show_urls = False
222
-
223
-
224
- # -- Options for Texinfo output ------------------------------------------------
225
-
226
- # Grouping the document tree into Texinfo files. List of tuples
227
- # (source start file, target name, title, author,
228
- # dir menu entry, description, category)
229
- texinfo_documents = [
230
- ('index', 'Idiorm', u'Idiorm Documentation',
231
- u'Jamie Matthews and Simon Holywell', 'Idiorm', 'One line description of project.',
232
- 'Miscellaneous'),
233
- ]
234
-
235
- # Documents to append as an appendix to all manuals.
236
- #texinfo_appendices = []
237
-
238
- # If false, no module index is generated.
239
- #texinfo_domain_indices = True
240
-
241
- # How to display URL addresses: 'footnote', 'no', or 'inline'.
242
- #texinfo_show_urls = 'footnote'
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/configuration.rst DELETED
@@ -1,378 +0,0 @@
1
- Configuration
2
- =============
3
-
4
- The first thing you need to know about Idiorm is that *you don’t need to
5
- define any model classes to use it*. With almost every other ORM, the
6
- first thing to do is set up your models and map them to database tables
7
- (through configuration variables, XML files or similar). With Idiorm,
8
- you can start using the ORM straight away.
9
-
10
- Setup
11
- ~~~~~
12
-
13
- First, ``require`` the Idiorm source file:
14
-
15
- .. code-block:: php
16
-
17
- <?php
18
- require_once 'idiorm.php';
19
-
20
- Then, pass a *Data Source Name* connection string to the ``configure``
21
- method of the ORM class. This is used by PDO to connect to your
22
- database. For more information, see the `PDO documentation`_.
23
-
24
- .. code-block:: php
25
-
26
- <?php
27
- ORM::configure('sqlite:./example.db');
28
-
29
- You may also need to pass a username and password to your database
30
- driver, using the ``username`` and ``password`` configuration options.
31
- For example, if you are using MySQL:
32
-
33
- .. code-block:: php
34
-
35
- <?php
36
- ORM::configure('mysql:host=localhost;dbname=my_database');
37
- ORM::configure('username', 'database_user');
38
- ORM::configure('password', 'top_secret');
39
-
40
- Also see “Configuration” section below.
41
-
42
- Configuration
43
- ~~~~~~~~~~~~~
44
-
45
- Other than setting the DSN string for the database connection (see
46
- above), the ``configure`` method can be used to set some other simple
47
- options on the ORM class. Modifying settings involves passing a
48
- key/value pair to the ``configure`` method, representing the setting you
49
- wish to modify and the value you wish to set it to.
50
-
51
- .. code-block:: php
52
-
53
- <?php
54
- ORM::configure('setting_name', 'value_for_setting');
55
-
56
- A shortcut is provided to allow passing multiple key/value pairs at
57
- once.
58
-
59
- .. code-block:: php
60
-
61
- <?php
62
- ORM::configure(array(
63
- 'setting_name_1' => 'value_for_setting_1',
64
- 'setting_name_2' => 'value_for_setting_2',
65
- 'etc' => 'etc'
66
- ));
67
-
68
- Use the ``get_config`` method to read current settings.
69
-
70
- .. code-block:: php
71
-
72
- <?php
73
- $isLoggingEnabled = ORM::get_config('logging');
74
- ORM::configure('logging', false);
75
- // some crazy loop we don't want to log
76
- ORM::configure('logging', $isLoggingEnabled);
77
-
78
- Database authentication details
79
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
80
-
81
- Settings: ``username`` and ``password``
82
-
83
- Some database adapters (such as MySQL) require a username and password
84
- to be supplied separately to the DSN string. These settings allow you to
85
- provide these values. A typical MySQL connection setup might look like
86
- this:
87
-
88
- .. code-block:: php
89
-
90
- <?php
91
- ORM::configure('mysql:host=localhost;dbname=my_database');
92
- ORM::configure('username', 'database_user');
93
- ORM::configure('password', 'top_secret');
94
-
95
- Or you can combine the connection setup into a single line using the
96
- configuration array shortcut:
97
-
98
- .. code-block:: php
99
-
100
- <?php
101
- ORM::configure(array(
102
- 'connection_string' => 'mysql:host=localhost;dbname=my_database',
103
- 'username' => 'database_user',
104
- 'password' => 'top_secret'
105
- ));
106
-
107
- Result sets
108
- ^^^^^^^^^^^
109
-
110
- Setting: ``return_result_sets``
111
-
112
- Collections of results can be returned as an array (default) or as a result set.
113
- See the `find_result_set()` documentation for more information.
114
-
115
- .. code-block:: php
116
-
117
- <?php
118
- ORM::configure('return_result_sets', true); // returns result sets
119
-
120
-
121
- .. note::
122
-
123
- It is recommended that you setup your projects to use result sets as they
124
- are more flexible.
125
-
126
- PDO Driver Options
127
- ^^^^^^^^^^^^^^^^^^
128
-
129
- Setting: ``driver_options``
130
-
131
- Some database adapters require (or allow) an array of driver-specific
132
- configuration options. This setting allows you to pass these options
133
- through to the PDO constructor. For more information, see `the PDO
134
- documentation`_. For example, to force the MySQL driver to use UTF-8 for
135
- the connection:
136
-
137
- .. code-block:: php
138
-
139
- <?php
140
- ORM::configure('driver_options', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
141
-
142
- PDO Error Mode
143
- ^^^^^^^^^^^^^^
144
-
145
- Setting: ``error_mode``
146
-
147
- This can be used to set the ``PDO::ATTR_ERRMODE`` setting on the
148
- database connection class used by Idiorm. It should be passed one of the
149
- class constants defined by PDO. For example:
150
-
151
- .. code-block:: php
152
-
153
- <?php
154
- ORM::configure('error_mode', PDO::ERRMODE_WARNING);
155
-
156
- The default setting is ``PDO::ERRMODE_EXCEPTION``. For full details of
157
- the error modes available, see `the PDO set attribute documentation`_.
158
-
159
- PDO object access
160
- ^^^^^^^^^^^^^^^^^
161
-
162
- Should it ever be necessary, the PDO object used by Idiorm may be
163
- accessed directly through ``ORM::get_db()``, or set directly via
164
- ``ORM::set_db()``. This should be an unusual occurance.
165
-
166
- After a statement has been executed by any means, such as ``::save()``
167
- or ``::raw_execute()``, the ``PDOStatement`` instance used may be
168
- accessed via ``ORM::get_last_statement()``. This may be useful in order
169
- to access ``PDOStatement::errorCode()``, if PDO exceptions are turned
170
- off, or to access the ``PDOStatement::rowCount()`` method, which returns
171
- differing results based on the underlying database. For more
172
- information, see the `PDOStatement documentation`_.
173
-
174
- Identifier quote character
175
- ^^^^^^^^^^^^^^^^^^^^^^^^^^
176
-
177
- Setting: ``identifier_quote_character``
178
-
179
- Set the character used to quote identifiers (eg table name, column
180
- name). If this is not set, it will be autodetected based on the database
181
- driver being used by PDO.
182
-
183
- ID Column
184
- ^^^^^^^^^
185
-
186
- By default, the ORM assumes that all your tables have a primary key
187
- column called ``id``. There are two ways to override this: for all
188
- tables in the database, or on a per-table basis.
189
-
190
- Setting: ``id_column``
191
-
192
- This setting is used to configure the name of the primary key column for
193
- all tables. If your ID column is called ``primary_key``, use:
194
-
195
- .. code-block:: php
196
-
197
- <?php
198
- ORM::configure('id_column', 'primary_key');
199
-
200
- You can specify a compound primary key using an array:
201
-
202
- .. code-block:: php
203
-
204
- <?php
205
- ORM::configure('id_column', array('pk_1', 'pk_2'));
206
-
207
- Note: If you use a auto-increment column in the compound primary key then it
208
- should be the first one defined into the array.
209
-
210
- Setting: ``id_column_overrides``
211
-
212
- This setting is used to specify the primary key column name for each
213
- table separately. It takes an associative array mapping table names to
214
- column names. If, for example, your ID column names include the name of
215
- the table, you can use the following configuration:
216
-
217
- .. code-block:: php
218
-
219
- <?php
220
- ORM::configure('id_column_overrides', array(
221
- 'person' => 'person_id',
222
- 'role' => 'role_id',
223
- ));
224
-
225
- As with ``id_column`` setting, you can specify a compound primary key
226
- using an array.
227
-
228
- Limit clause style
229
- ^^^^^^^^^^^^^^^^^^
230
-
231
- Setting: ``limit_clause_style``
232
-
233
- You can specify the limit clause style in the configuration. This is to facilitate
234
- a MS SQL style limit clause that uses the ``TOP`` syntax.
235
-
236
- Acceptable values are ``ORM::LIMIT_STYLE_TOP_N`` and ``ORM::LIMIT_STYLE_LIMIT``.
237
-
238
- .. note::
239
-
240
- If the PDO driver you are using is one of sqlsrv, dblib or mssql then Idiorm
241
- will automatically select the ``ORM::LIMIT_STYLE_TOP_N`` for you unless you
242
- override the setting.
243
-
244
- Query logging
245
- ^^^^^^^^^^^^^
246
-
247
- Setting: ``logging``
248
-
249
- Idiorm can log all queries it executes. To enable query logging, set the
250
- ``logging`` option to ``true`` (it is ``false`` by default).
251
-
252
- When query logging is enabled, you can use two static methods to access
253
- the log. ``ORM::get_last_query()`` returns the most recent query
254
- executed. ``ORM::get_query_log()`` returns an array of all queries
255
- executed.
256
-
257
- .. note::
258
-
259
- The code that does the query log is an approximation of that provided by PDO/the
260
- database (see the Idiorm source code for detail). The actual query isn't even available
261
- to idiorm to log as the database/PDO handles the binding outside of idiorm's reach and
262
- doesn't pass it back.
263
-
264
- This means that you might come across some inconsistencies between what is logged and
265
- what is actually run. In these case you'll need to look at the query log provided by
266
- your database vendor (eg. MySQL).
267
-
268
- Query logger
269
- ^^^^^^^^^^^^
270
-
271
- Setting: ``logger``
272
-
273
- .. note::
274
-
275
- You must enable ``logging`` for this setting to have any effect.
276
-
277
- It is possible to supply a ``callable`` to this configuration setting, which will
278
- be executed for every query that idiorm executes. In PHP a ``callable`` is anything
279
- that can be executed as if it were a function. Most commonly this will take the
280
- form of a anonymous function.
281
-
282
- This setting is useful if you wish to log queries with an external library as it
283
- allows you too whatever you would like from inside the callback function.
284
-
285
- .. code-block:: php
286
-
287
- <?php
288
- ORM::configure('logger', function($log_string, $query_time) {
289
- echo $log_string . ' in ' . $query_time;
290
- });
291
-
292
- Query caching
293
- ^^^^^^^^^^^^^
294
-
295
- Setting: ``caching``
296
-
297
- Idiorm can cache the queries it executes during a request. To enable
298
- query caching, set the ``caching`` option to ``true`` (it is ``false``
299
- by default).
300
-
301
- .. code-block:: php
302
-
303
- <?php
304
- ORM::configure('caching', true);
305
-
306
-
307
- Setting: ``caching_auto_clear``
308
-
309
- Idiorm's cache is never cleared by default. If you wish to automatically clear it on save, set ``caching_auto_clear`` to ``true``
310
-
311
- .. code-block:: php
312
-
313
- <?php
314
- ORM::configure('caching_auto_clear', true);
315
-
316
- When query caching is enabled, Idiorm will cache the results of every
317
- ``SELECT`` query it executes. If Idiorm encounters a query that has
318
- already been run, it will fetch the results directly from its cache and
319
- not perform a database query.
320
-
321
- Warnings and gotchas
322
- ''''''''''''''''''''
323
-
324
- - Note that this is an in-memory cache that only persists data for the
325
- duration of a single request. This is *not* a replacement for a
326
- persistent cache such as `Memcached`_.
327
-
328
- - Idiorm’s cache is very simple, and does not attempt to invalidate
329
- itself when data changes. This means that if you run a query to
330
- retrieve some data, modify and save it, and then run the same query
331
- again, the results will be stale (ie, they will not reflect your
332
- modifications). This could potentially cause subtle bugs in your
333
- application. If you have caching enabled and you are experiencing odd
334
- behaviour, disable it and try again. If you do need to perform such
335
- operations but still wish to use the cache, you can call the
336
- ``ORM::clear_cache()`` to clear all existing cached queries.
337
-
338
- - Enabling the cache will increase the memory usage of your
339
- application, as all database rows that are fetched during each
340
- request are held in memory. If you are working with large quantities
341
- of data, you may wish to disable the cache.
342
-
343
- Custom caching
344
- ''''''''''''''
345
-
346
- If you wish to use custom caching functions, you can set them from the configure options.
347
-
348
- .. code-block:: php
349
-
350
- <?php
351
- $my_cache = array();
352
- ORM::configure('cache_query_result', function ($cache_key, $value, $table_name, $connection_name) use (&$my_cache) {
353
- $my_cache[$cache_key] = $value;
354
- });
355
- ORM::configure('check_query_cache', function ($cache_key, $table_name, $connection_name) use (&$my_cache) {
356
- if(isset($my_cache[$cache_key])){
357
- return $my_cache[$cache_key];
358
- } else {
359
- return false;
360
- }
361
- });
362
- ORM::configure('clear_cache', function ($table_name, $connection_name) use (&$my_cache) {
363
- $my_cache = array();
364
- });
365
-
366
- ORM::configure('create_cache_key', function ($query, $parameters, $table_name, $connection_name) {
367
- $parameter_string = join(',', $parameters);
368
- $key = $query . ':' . $parameter_string;
369
- $my_key = 'my-prefix'.crc32($key);
370
- return $my_key;
371
- });
372
-
373
-
374
- .. _PDO documentation: http://php.net/manual/en/pdo.construct.php
375
- .. _the PDO documentation: http://php.net/manual/en/pdo.construct.php
376
- .. _the PDO set attribute documentation: http://php.net/manual/en/pdo.setattribute.php
377
- .. _PDOStatement documentation: http://php.net/manual/en/class.pdostatement.php
378
- .. _Memcached: http://www.memcached.org/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/connections.rst DELETED
@@ -1,80 +0,0 @@
1
- Multiple Connections
2
- ====================
3
- Idiorm now works with multiple conections. Most of the static functions
4
- work with an optional connection name as an extra parameter. For the
5
- ``ORM::configure`` method, this means that when passing connection
6
- strings for a new connection, the second parameter, which is typically
7
- omitted, should be ``null``. In all cases, if a connection name is not
8
- provided, it defaults to ``ORM::DEFAULT_CONNECTION``.
9
-
10
- When chaining, once ``for_table()`` has been used in the chain, remaining
11
- calls in the chain use the correct connection.
12
-
13
- .. code-block:: php
14
-
15
- <?php
16
- // Default connection
17
- ORM::configure('sqlite:./example.db');
18
-
19
- // A named connection, where 'remote' is an arbitrary key name
20
- ORM::configure('mysql:host=localhost;dbname=my_database', null, 'remote');
21
- ORM::configure('username', 'database_user', 'remote');
22
- ORM::configure('password', 'top_secret', 'remote');
23
-
24
- // Using default connection
25
- $person = ORM::for_table('person')->find_one(5);
26
-
27
- // Using default connection, explicitly
28
- $person = ORM::for_table('person', ORM::DEFAULT_CONNECTION)->find_one(5);
29
-
30
- // Using named connection
31
- $person = ORM::for_table('different_person', 'remote')->find_one(5);
32
-
33
-
34
-
35
- Supported Methods
36
- ^^^^^^^^^^^^^^^^^
37
- In each of these cases, the ``$connection_name`` parameter is optional, and is
38
- an arbitrary key identifying the named connection.
39
-
40
- * ``ORM::configure($key, $value, $connection_name)``
41
- * ``ORM::for_table($table_name, $connection_name)``
42
- * ``ORM::set_db($pdo, $connection_name)``
43
- * ``ORM::get_db($connection_name)``
44
- * ``ORM::raw_execute($query, $parameters, $connection_name)``
45
- * ``ORM::get_last_query($connection_name)``
46
- * ``ORM::get_query_log($connection_name)``
47
-
48
- Of these methods, only ``ORM::get_last_query($connection_name)`` does *not*
49
- fallback to the default connection when no connection name is passed.
50
- Instead, passing no connection name (or ``null``) returns the most recent
51
- query on *any* connection.
52
-
53
- .. code-block:: php
54
-
55
- <?php
56
- // Using default connection, explicitly
57
- $person = ORM::for_table('person')->find_one(5);
58
-
59
- // Using named connection
60
- $person = ORM::for_table('different_person', 'remote')->find_one(5);
61
-
62
- // Last query on *any* connection
63
- ORM::get_last_query(); // returns query on 'different_person' using 'remote'
64
-
65
- // returns query on 'person' using default by passing in the connection name
66
- ORM::get_last_query(ORM::DEFAULT_CONNECTION);
67
-
68
- Notes
69
- ~~~~~
70
- * **There is no support for joins across connections**
71
- * Multiple connections do not share configuration settings. This means if
72
- one connection has logging set to ``true`` and the other does not, only
73
- queries from the logged connection will be available via
74
- ``ORM::get_last_query()`` and ``ORM::get_query_log()``.
75
- * A new method has been added, ``ORM::get_connection_names()``, which returns
76
- an array of connection names.
77
- * Caching *should* work with multiple connections (remember to turn caching
78
- on for each connection), but the unit tests are not robust. Please report
79
- any errors.
80
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/index.php DELETED
File without changes
vendor/j4mie/idiorm/docs/index.rst DELETED
@@ -1,29 +0,0 @@
1
- .. Idiorm documentation master file, created by
2
- sphinx-quickstart on Wed Nov 28 15:39:16 2012.
3
- You can adapt this file completely to your liking, but it should at least
4
- contain the root `toctree` directive.
5
-
6
- Welcome to Idiorm's documentation!
7
- ==================================
8
-
9
- Contents:
10
-
11
- .. toctree::
12
- :maxdepth: 2
13
-
14
- philosophy
15
- installation
16
- configuration
17
- querying
18
- models
19
- transactions
20
- connections
21
-
22
-
23
- Indices and tables
24
- ==================
25
-
26
- * :ref:`genindex`
27
- * :ref:`modindex`
28
- * :ref:`search`
29
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/installation.rst DELETED
@@ -1,19 +0,0 @@
1
- Installation
2
- ============
3
-
4
- Packagist
5
- ~~~~~~~~~
6
-
7
- This library is available through Packagist with the vendor and package
8
- identifier of ``j4mie/idiorm``
9
-
10
- Please see the `Packagist documentation`_ for further information.
11
-
12
- Download
13
- ~~~~~~~~
14
-
15
- You can clone the git repository, download idiorm.php or a release tag
16
- and then drop the idiorm.php file in the vendors/3rd party/libs
17
- directory of your project.
18
-
19
- .. _Packagist documentation: http://packagist.org/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/make.bat DELETED
@@ -1,190 +0,0 @@
1
- @ECHO OFF
2
-
3
- REM Command file for Sphinx documentation
4
-
5
- if "%SPHINXBUILD%" == "" (
6
- set SPHINXBUILD=sphinx-build
7
- )
8
- set BUILDDIR=_build
9
- set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% .
10
- set I18NSPHINXOPTS=%SPHINXOPTS% .
11
- if NOT "%PAPER%" == "" (
12
- set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
13
- set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
14
- )
15
-
16
- if "%1" == "" goto help
17
-
18
- if "%1" == "help" (
19
- :help
20
- echo.Please use `make ^<target^>` where ^<target^> is one of
21
- echo. html to make standalone HTML files
22
- echo. dirhtml to make HTML files named index.html in directories
23
- echo. singlehtml to make a single large HTML file
24
- echo. pickle to make pickle files
25
- echo. json to make JSON files
26
- echo. htmlhelp to make HTML files and a HTML help project
27
- echo. qthelp to make HTML files and a qthelp project
28
- echo. devhelp to make HTML files and a Devhelp project
29
- echo. epub to make an epub
30
- echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter
31
- echo. text to make text files
32
- echo. man to make manual pages
33
- echo. texinfo to make Texinfo files
34
- echo. gettext to make PO message catalogs
35
- echo. changes to make an overview over all changed/added/deprecated items
36
- echo. linkcheck to check all external links for integrity
37
- echo. doctest to run all doctests embedded in the documentation if enabled
38
- goto end
39
- )
40
-
41
- if "%1" == "clean" (
42
- for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
43
- del /q /s %BUILDDIR%\*
44
- goto end
45
- )
46
-
47
- if "%1" == "html" (
48
- %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
49
- if errorlevel 1 exit /b 1
50
- echo.
51
- echo.Build finished. The HTML pages are in %BUILDDIR%/html.
52
- goto end
53
- )
54
-
55
- if "%1" == "dirhtml" (
56
- %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
57
- if errorlevel 1 exit /b 1
58
- echo.
59
- echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
60
- goto end
61
- )
62
-
63
- if "%1" == "singlehtml" (
64
- %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
65
- if errorlevel 1 exit /b 1
66
- echo.
67
- echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
68
- goto end
69
- )
70
-
71
- if "%1" == "pickle" (
72
- %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
73
- if errorlevel 1 exit /b 1
74
- echo.
75
- echo.Build finished; now you can process the pickle files.
76
- goto end
77
- )
78
-
79
- if "%1" == "json" (
80
- %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
81
- if errorlevel 1 exit /b 1
82
- echo.
83
- echo.Build finished; now you can process the JSON files.
84
- goto end
85
- )
86
-
87
- if "%1" == "htmlhelp" (
88
- %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
89
- if errorlevel 1 exit /b 1
90
- echo.
91
- echo.Build finished; now you can run HTML Help Workshop with the ^
92
- .hhp project file in %BUILDDIR%/htmlhelp.
93
- goto end
94
- )
95
-
96
- if "%1" == "qthelp" (
97
- %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
98
- if errorlevel 1 exit /b 1
99
- echo.
100
- echo.Build finished; now you can run "qcollectiongenerator" with the ^
101
- .qhcp project file in %BUILDDIR%/qthelp, like this:
102
- echo.^> qcollectiongenerator %BUILDDIR%\qthelp\Idiorm.qhcp
103
- echo.To view the help file:
104
- echo.^> assistant -collectionFile %BUILDDIR%\qthelp\Idiorm.ghc
105
- goto end
106
- )
107
-
108
- if "%1" == "devhelp" (
109
- %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
110
- if errorlevel 1 exit /b 1
111
- echo.
112
- echo.Build finished.
113
- goto end
114
- )
115
-
116
- if "%1" == "epub" (
117
- %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
118
- if errorlevel 1 exit /b 1
119
- echo.
120
- echo.Build finished. The epub file is in %BUILDDIR%/epub.
121
- goto end
122
- )
123
-
124
- if "%1" == "latex" (
125
- %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
126
- if errorlevel 1 exit /b 1
127
- echo.
128
- echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
129
- goto end
130
- )
131
-
132
- if "%1" == "text" (
133
- %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
134
- if errorlevel 1 exit /b 1
135
- echo.
136
- echo.Build finished. The text files are in %BUILDDIR%/text.
137
- goto end
138
- )
139
-
140
- if "%1" == "man" (
141
- %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
142
- if errorlevel 1 exit /b 1
143
- echo.
144
- echo.Build finished. The manual pages are in %BUILDDIR%/man.
145
- goto end
146
- )
147
-
148
- if "%1" == "texinfo" (
149
- %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
150
- if errorlevel 1 exit /b 1
151
- echo.
152
- echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
153
- goto end
154
- )
155
-
156
- if "%1" == "gettext" (
157
- %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
158
- if errorlevel 1 exit /b 1
159
- echo.
160
- echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
161
- goto end
162
- )
163
-
164
- if "%1" == "changes" (
165
- %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
166
- if errorlevel 1 exit /b 1
167
- echo.
168
- echo.The overview file is in %BUILDDIR%/changes.
169
- goto end
170
- )
171
-
172
- if "%1" == "linkcheck" (
173
- %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
174
- if errorlevel 1 exit /b 1
175
- echo.
176
- echo.Link check complete; look for any errors in the above output ^
177
- or in %BUILDDIR%/linkcheck/output.txt.
178
- goto end
179
- )
180
-
181
- if "%1" == "doctest" (
182
- %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
183
- if errorlevel 1 exit /b 1
184
- echo.
185
- echo.Testing of doctests in the sources finished, look at the ^
186
- results in %BUILDDIR%/doctest/output.txt.
187
- goto end
188
- )
189
-
190
- :end
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/models.rst DELETED
@@ -1,161 +0,0 @@
1
- Models
2
- ======
3
-
4
- Getting data from objects
5
- ~~~~~~~~~~~~~~~~~~~~~~~~~
6
-
7
- Once you've got a set of records (objects) back from a query, you can
8
- access properties on those objects (the values stored in the columns in
9
- its corresponding table) in two ways: by using the ``get`` method, or
10
- simply by accessing the property on the object directly:
11
-
12
- .. code-block:: php
13
-
14
- <?php
15
- $person = ORM::for_table('person')->find_one(5);
16
-
17
- // The following two forms are equivalent
18
- $name = $person->get('name');
19
- $name = $person->name;
20
-
21
- You can also get the all the data wrapped by an ORM instance using the
22
- ``as_array`` method. This will return an associative array mapping
23
- column names (keys) to their values.
24
-
25
- The ``as_array`` method takes column names as optional arguments. If one
26
- or more of these arguments is supplied, only matching column names will
27
- be returned.
28
-
29
- .. code-block:: php
30
-
31
- <?php
32
- $person = ORM::for_table('person')->create();
33
-
34
- $person->first_name = 'Fred';
35
- $person->surname = 'Bloggs';
36
- $person->age = 50;
37
-
38
- // Returns array('first_name' => 'Fred', 'surname' => 'Bloggs', 'age' => 50)
39
- $data = $person->as_array();
40
-
41
- // Returns array('first_name' => 'Fred', 'age' => 50)
42
- $data = $person->as_array('first_name', 'age');
43
-
44
- Updating records
45
- ~~~~~~~~~~~~~~~~
46
-
47
- To update the database, change one or more of the properties of the
48
- object, then call the ``save`` method to commit the changes to the
49
- database. Again, you can change the values of the object's properties
50
- either by using the ``set`` method or by setting the value of the
51
- property directly. By using the ``set`` method it is also possible to
52
- update multiple properties at once, by passing in an associative array:
53
-
54
- .. code-block:: php
55
-
56
- <?php
57
- $person = ORM::for_table('person')->find_one(5);
58
-
59
- // The following two forms are equivalent
60
- $person->set('name', 'Bob Smith');
61
- $person->age = 20;
62
-
63
- // This is equivalent to the above two assignments
64
- $person->set(array(
65
- 'name' => 'Bob Smith',
66
- 'age' => 20
67
- ));
68
-
69
- // Syncronise the object with the database
70
- $person->save();
71
-
72
- Properties containing expressions
73
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
74
-
75
- It is possible to set properties on the model that contain database
76
- expressions using the ``set_expr`` method.
77
-
78
- .. code-block:: php
79
-
80
- <?php
81
- $person = ORM::for_table('person')->find_one(5);
82
- $person->set('name', 'Bob Smith');
83
- $person->age = 20;
84
- $person->set_expr('updated', 'NOW()');
85
- $person->save();
86
-
87
- The ``updated`` column's value will be inserted into query in its raw
88
- form therefore allowing the database to execute any functions referenced
89
- - such as ``NOW()`` in this case.
90
-
91
- Creating new records
92
- ~~~~~~~~~~~~~~~~~~~~
93
-
94
- To add a new record, you need to first create an "empty" object
95
- instance. You then set values on the object as normal, and save it.
96
-
97
- .. code-block:: php
98
-
99
- <?php
100
- $person = ORM::for_table('person')->create();
101
-
102
- $person->name = 'Joe Bloggs';
103
- $person->age = 40;
104
-
105
- $person->save();
106
-
107
- After the object has been saved, you can call its ``id()`` method to
108
- find the autogenerated primary key value that the database assigned to
109
- it.
110
-
111
- Properties containing expressions
112
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
113
-
114
- It is possible to set properties on the model that contain database
115
- expressions using the ``set_expr`` method.
116
-
117
- .. code-block:: php
118
-
119
- <?php
120
- $person = ORM::for_table('person')->create();
121
- $person->set('name', 'Bob Smith');
122
- $person->age = 20;
123
- $person->set_expr('added', 'NOW()');
124
- $person->save();
125
-
126
- The ``added`` column's value will be inserted into query in its raw form
127
- therefore allowing the database to execute any functions referenced -
128
- such as ``NOW()`` in this case.
129
-
130
- Checking whether a property has been modified
131
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
132
-
133
- To check whether a property has been changed since the object was
134
- created (or last saved), call the ``is_dirty`` method:
135
-
136
- .. code-block:: php
137
-
138
- <?php
139
- $name_has_changed = $person->is_dirty('name'); // Returns true or false
140
-
141
- Deleting records
142
- ~~~~~~~~~~~~~~~~
143
-
144
- To delete an object from the database, simply call its ``delete``
145
- method.
146
-
147
- .. code-block:: php
148
-
149
- <?php
150
- $person = ORM::for_table('person')->find_one(5);
151
- $person->delete();
152
-
153
- To delete more than one object from the database, build a query:
154
-
155
- .. code-block:: php
156
-
157
- <?php
158
- $person = ORM::for_table('person')
159
- ->where_equal('zipcode', 55555)
160
- ->delete_many();
161
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/philosophy.rst DELETED
@@ -1,34 +0,0 @@
1
- Philosophy
2
- ==========
3
-
4
- The `Pareto Principle`_ states that *roughly 80% of the effects come
5
- from 20% of the causes.* In software development terms, this could be
6
- translated into something along the lines of *80% of the results come
7
- from 20% of the complexity*. In other words, you can get pretty far by
8
- being pretty stupid.
9
-
10
- **Idiorm is deliberately simple**. Where other ORMs consist of dozens of
11
- classes with complex inheritance hierarchies, Idiorm has only one class,
12
- ``ORM``, which functions as both a fluent ``SELECT`` query API and a
13
- simple CRUD model class. If my hunch is correct, this should be quite
14
- enough for many real-world applications. Let’s face it: most of us
15
- aren’t building Facebook. We’re working on small-to-medium-sized
16
- projects, where the emphasis is on simplicity and rapid development
17
- rather than infinite flexibility and features.
18
-
19
- You might think of **Idiorm** as a *micro-ORM*. It could, perhaps, be
20
- “the tie to go along with `Slim`_\ ’s tux” (to borrow a turn of phrase
21
- from `DocumentCloud`_). Or it could be an effective bit of spring
22
- cleaning for one of those horrendous SQL-littered legacy PHP apps you
23
- have to support.
24
-
25
- **Idiorm** might also provide a good base upon which to build
26
- higher-level, more complex database abstractions. For example, `Paris`_
27
- is an implementation of the `Active Record pattern`_ built on top of
28
- Idiorm.
29
-
30
- .. _Pareto Principle: http://en.wikipedia.org/wiki/Pareto_principle
31
- .. _Slim: http://github.com/codeguy/slim/
32
- .. _DocumentCloud: http://github.com/documentcloud/underscore
33
- .. _Paris: http://github.com/j4mie/paris
34
- .. _Active Record pattern: http://martinfowler.com/eaaCatalog/activeRecord.html
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/querying.rst DELETED
@@ -1,806 +0,0 @@
1
- Querying
2
- ========
3
-
4
- Idiorm provides a `*fluent
5
- interface* <http://en.wikipedia.org/wiki/Fluent_interface>`_ to enable
6
- simple queries to be built without writing a single character of SQL. If
7
- you've used `jQuery <http://jquery.com>`_ at all, you'll be familiar
8
- with the concept of a fluent interface. It just means that you can
9
- *chain* method calls together, one after another. This can make your
10
- code more readable, as the method calls strung together in order can
11
- start to look a bit like a sentence.
12
-
13
- All Idiorm queries start with a call to the ``for_table`` static method
14
- on the ORM class. This tells the ORM which table to use when making the
15
- query.
16
-
17
- *Note that this method **does not** escape its query parameter and so
18
- the table name should **not** be passed directly from user input.*
19
-
20
- Method calls which add filters and constraints to your query are then
21
- strung together. Finally, the chain is finished by calling either
22
- ``find_one()`` or ``find_many()``, which executes the query and returns
23
- the result.
24
-
25
- Let's start with a simple example. Say we have a table called ``person``
26
- which contains the columns ``id`` (the primary key of the record -
27
- Idiorm assumes the primary key column is called ``id`` but this is
28
- configurable, see below), ``name``, ``age`` and ``gender``.
29
-
30
- A note on PSR-1 and camelCase
31
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
32
-
33
- All the methods detailed in the documentation can also be called in a PSR-1 way:
34
- underscores (_) become camelCase. Here follows an example of one query chain
35
- being converted to a PSR-1 compliant style.
36
-
37
- .. code-block:: php
38
-
39
- <?php
40
- // documented and default style
41
- $person = ORM::for_table('person')->where('name', 'Fred Bloggs')->find_one();
42
-
43
- // PSR-1 compliant style
44
- $person = ORM::forTable('person')->where('name', 'Fred Bloggs')->findOne();
45
-
46
- As you can see any method can be changed from the documented underscore (_) format
47
- to that of a camelCase method name.
48
-
49
- .. note::
50
-
51
- In the background the PSR-1 compliant style uses the `__call()` and
52
- `__callStatic()` magic methods to map the camelCase method name you supply
53
- to the original underscore method name. It then uses `call_user_func_array()`
54
- to apply the arguments to the method. If this minimal overhead is too great
55
- then you can simply revert to using the underscore methods to avoid it. In
56
- general this will not be a bottle neck in any application however and should
57
- be considered a micro-optimisation.
58
-
59
- As `__callStatic()` was added in PHP 5.3.0 you will need at least that version
60
- of PHP to use this feature in any meaningful way.
61
-
62
- Single records
63
- ^^^^^^^^^^^^^^
64
-
65
- Any method chain that ends in ``find_one()`` will return either a
66
- *single* instance of the ORM class representing the database row you
67
- requested, or ``false`` if no matching record was found.
68
-
69
- To find a single record where the ``name`` column has the value "Fred
70
- Bloggs":
71
-
72
- .. code-block:: php
73
-
74
- <?php
75
- $person = ORM::for_table('person')->where('name', 'Fred Bloggs')->find_one();
76
-
77
- This roughly translates into the following SQL:
78
- ``SELECT * FROM person WHERE name = "Fred Bloggs"``
79
-
80
- To find a single record by ID, you can pass the ID directly to the
81
- ``find_one`` method:
82
-
83
- .. code-block:: php
84
-
85
- <?php
86
- $person = ORM::for_table('person')->find_one(5);
87
-
88
- If you are using a compound primary key, you can find the records
89
- using an array as the parameter:
90
-
91
- .. code-block:: php
92
-
93
- <?php
94
- $person = ORM::for_table('user_role')->find_one(array(
95
- 'user_id' => 34,
96
- 'role_id' => 10
97
- ));
98
-
99
-
100
- Multiple records
101
- ^^^^^^^^^^^^^^^^
102
-
103
- .. note::
104
-
105
- It is recommended that you use results sets over arrays - see `As a result set`
106
- below.
107
-
108
- Any method chain that ends in ``find_many()`` will return an *array* of
109
- ORM class instances, one for each row matched by your query. If no rows
110
- were found, an empty array will be returned.
111
-
112
- To find all records in the table:
113
-
114
- .. code-block:: php
115
-
116
- <?php
117
- $people = ORM::for_table('person')->find_many();
118
-
119
- To find all records where the ``gender`` is ``female``:
120
-
121
- .. code-block:: php
122
-
123
- <?php
124
- $females = ORM::for_table('person')->where('gender', 'female')->find_many();
125
-
126
- As a result set
127
- '''''''''''''''
128
-
129
- .. note::
130
-
131
- There is a configuration setting ``return_result_sets`` that will cause
132
- ``find_many()`` to return result sets by default. It is recommended that you
133
- turn this setting on:
134
-
135
- ::
136
-
137
- ORM::configure('return_result_sets', true);
138
-
139
- You can also find many records as a result set instead of an array of Idiorm
140
- instances. This gives you the advantage that you can run batch operations on a
141
- set of results.
142
-
143
- So for example instead of running this:
144
-
145
- .. code-block:: php
146
-
147
- <?php
148
- $people = ORM::for_table('person')->find_many();
149
- foreach ($people as $person) {
150
- $person->age = 50;
151
- $person->save();
152
- }
153
-
154
- You can simply do this instead:
155
-
156
- .. code-block:: php
157
-
158
- <?php
159
- ORM::for_table('person')->find_result_set()
160
- ->set('age', 50)
161
- ->save();
162
-
163
- To do this substitute any call to ``find_many()`` with
164
- ``find_result_set()``.
165
-
166
- A result set will also behave like an array so you can `count()` it and `foreach`
167
- over it just like an array.
168
-
169
- .. code-block:: php
170
-
171
- <?php
172
- foreach(ORM::for_table('person')->find_result_set() as $record) {
173
- echo $record->name;
174
- }
175
-
176
- .. code-block:: php
177
-
178
- <?php
179
- echo count(ORM::for_table('person')->find_result_set());
180
-
181
- .. note::
182
-
183
- For deleting many records it is recommended that you use `delete_many()` as it
184
- is more efficient than calling `delete()` on a result set.
185
-
186
- As an associative array
187
- '''''''''''''''''''''''
188
-
189
- You can also find many records as an associative array instead of Idiorm
190
- instances. To do this substitute any call to ``find_many()`` with
191
- ``find_array()``.
192
-
193
- .. code-block:: php
194
-
195
- <?php
196
- $females = ORM::for_table('person')->where('gender', 'female')->find_array();
197
-
198
- This is useful if you need to serialise the the query output into a
199
- format like JSON and you do not need the ability to update the returned
200
- records.
201
-
202
- Counting results
203
- ^^^^^^^^^^^^^^^^
204
-
205
- To return a count of the number of rows that would be returned by a
206
- query, call the ``count()`` method.
207
-
208
- .. code-block:: php
209
-
210
- <?php
211
- $number_of_people = ORM::for_table('person')->count();
212
-
213
- Filtering results
214
- ^^^^^^^^^^^^^^^^^
215
-
216
- Idiorm provides a family of methods to extract only records which
217
- satisfy some condition or conditions. These methods may be called
218
- multiple times to build up your query, and Idiorm's fluent interface
219
- allows method calls to be *chained* to create readable and
220
- simple-to-understand queries.
221
-
222
- *Caveats*
223
- '''''''''
224
-
225
- Only a subset of the available conditions supported by SQL are available
226
- when using Idiorm. Additionally, all the ``WHERE`` clauses will be
227
- ``AND``\ ed together when the query is run. Support for ``OR``\ ing
228
- ``WHERE`` clauses is not currently present.
229
-
230
- These limits are deliberate: these are by far the most commonly used
231
- criteria, and by avoiding support for very complex queries, the Idiorm
232
- codebase can remain small and simple.
233
-
234
- Some support for more complex conditions and queries is provided by the
235
- ``where_raw`` and ``raw_query`` methods (see below). If you find
236
- yourself regularly requiring more functionality than Idiorm can provide,
237
- it may be time to consider using a more full-featured ORM.
238
-
239
- Equality: ``where``, ``where_equal``, ``where_not_equal``
240
- '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
241
-
242
- By default, calling ``where`` with two parameters (the column name and
243
- the value) will combine them using an equals operator (``=``). For
244
- example, calling ``where('name', 'Fred')`` will result in the clause
245
- ``WHERE name = "Fred"``.
246
-
247
- If your coding style favours clarity over brevity, you may prefer to use
248
- the ``where_equal`` method: this is identical to ``where``.
249
-
250
- The ``where_not_equal`` method adds a ``WHERE column != "value"`` clause
251
- to your query.
252
-
253
- You can specify multiple columns and their values in the same call. In this
254
- case you should pass an associative array as the first parameter. The array
255
- notation uses keys as column names.
256
-
257
- .. code-block:: php
258
-
259
- <?php
260
- $people = ORM::for_table('person')
261
- ->where(array(
262
- 'name' => 'Fred',
263
- 'age' => 20
264
- ))
265
- ->find_many();
266
-
267
- // Creates SQL:
268
- SELECT * FROM `person` WHERE `name` = "Fred" AND `age` = "20";
269
-
270
- Shortcut: ``where_id_is``
271
- '''''''''''''''''''''''''
272
-
273
- This is a simple helper method to query the table by primary key.
274
- Respects the ID column specified in the config. If you are using a compound
275
- primary key, you must pass an array where the key is the column name. Columns
276
- that don't belong to the key will be ignored.
277
-
278
- Shortcut: ``where_id_in``
279
- '''''''''''''''''''''''''
280
-
281
- This helper method is similar to ``where_id_is`, but it expects an array of
282
- primary keys to be selected. It is compound primary keys aware.
283
-
284
- Less than / greater than: ``where_lt``, ``where_gt``, ``where_lte``, ``where_gte``
285
- ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
286
-
287
- There are four methods available for inequalities:
288
-
289
- - Less than:
290
- ``$people = ORM::for_table('person')->where_lt('age', 10)->find_many();``
291
- - Greater than:
292
- ``$people = ORM::for_table('person')->where_gt('age', 5)->find_many();``
293
- - Less than or equal:
294
- ``$people = ORM::for_table('person')->where_lte('age', 10)->find_many();``
295
- - Greater than or equal:
296
- ``$people = ORM::for_table('person')->where_gte('age', 5)->find_many();``
297
-
298
- String comparision: ``where_like`` and ``where_not_like``
299
- '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
300
-
301
- To add a ``WHERE ... LIKE`` clause, use:
302
-
303
- .. code-block:: php
304
-
305
- <?php
306
- $people = ORM::for_table('person')->where_like('name', '%fred%')->find_many();
307
-
308
- Similarly, to add a ``WHERE ... NOT LIKE`` clause, use:
309
-
310
- .. code-block:: php
311
-
312
- <?php
313
- $people = ORM::for_table('person')->where_not_like('name', '%bob%')->find_many();
314
-
315
- Multiple OR'ed conditions
316
- '''''''''''''''''''''''''
317
-
318
- You can add simple OR'ed conditions to the same WHERE clause using ``where_any_is``. You
319
- should specify multiple conditions using an array of items. Each item will be an
320
- associative array that contains a multiple conditions.
321
-
322
- .. code-block:: php
323
-
324
- <?php
325
- $people = ORM::for_table('person')
326
- ->where_any_is(array(
327
- array('name' => 'Joe', 'age' => 10),
328
- array('name' => 'Fred', 'age' => 20)))
329
- ->find_many();
330
-
331
- // Creates SQL:
332
- SELECT * FROM `widget` WHERE (( `name` = 'Joe' AND `age` = '10' ) OR ( `name` = 'Fred' AND `age` = '20' ));
333
-
334
- By default, it uses the equal operator for every column, but it can be overriden for any
335
- column using a second parameter:
336
-
337
- .. code-block:: php
338
-
339
- <?php
340
- $people = ORM::for_table('person')
341
- ->where_any_is(array(
342
- array('name' => 'Joe', 'age' => 10),
343
- array('name' => 'Fred', 'age' => 20)), array('age' => '>'))
344
- ->find_many();
345
-
346
- // Creates SQL:
347
- SELECT * FROM `widget` WHERE (( `name` = 'Joe' AND `age` = '10' ) OR ( `name` = 'Fred' AND `age` > '20' ));
348
-
349
- If you want to set the default operator for all the columns, just pass it as the second parameter:
350
-
351
- .. code-block:: php
352
-
353
- <?php
354
- $people = ORM::for_table('person')
355
- ->where_any_is(array(
356
- array('score' => '5', 'age' => 10),
357
- array('score' => '15', 'age' => 20)), '>')
358
- ->find_many();
359
-
360
- // Creates SQL:
361
- SELECT * FROM `widget` WHERE (( `score` > '5' AND `age` > '10' ) OR ( `score` > '15' AND `age` > '20' ));
362
-
363
- Set membership: ``where_in`` and ``where_not_in``
364
- '''''''''''''''''''''''''''''''''''''''''''''''''
365
-
366
- To add a ``WHERE ... IN ()`` or ``WHERE ... NOT IN ()`` clause, use the
367
- ``where_in`` and ``where_not_in`` methods respectively.
368
-
369
- Both methods accept two arguments. The first is the column name to
370
- compare against. The second is an *array* of possible values. As all the
371
- ``where_`` methods, you can specify multiple columns using an associative
372
- *array* as the only parameter.
373
-
374
- .. code-block:: php
375
-
376
- <?php
377
- $people = ORM::for_table('person')->where_in('name', array('Fred', 'Joe', 'John'))->find_many();
378
-
379
- Working with ``NULL`` values: ``where_null`` and ``where_not_null``
380
- '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
381
-
382
- To add a ``WHERE column IS NULL`` or ``WHERE column IS NOT NULL``
383
- clause, use the ``where_null`` and ``where_not_null`` methods
384
- respectively. Both methods accept a single parameter: the column name to
385
- test.
386
-
387
- Raw WHERE clauses
388
- '''''''''''''''''
389
-
390
- If you require a more complex query, you can use the ``where_raw``
391
- method to specify the SQL fragment for the WHERE clause exactly. This
392
- method takes two arguments: the string to add to the query, and an
393
- (optional) array of parameters which will be bound to the string. If
394
- parameters are supplied, the string should contain question mark
395
- characters (``?``) to represent the values to be bound, and the
396
- parameter array should contain the values to be substituted into the
397
- string in the correct order.
398
-
399
- This method may be used in a method chain alongside other ``where_*``
400
- methods as well as methods such as ``offset``, ``limit`` and
401
- ``order_by_*``. The contents of the string you supply will be connected
402
- with preceding and following WHERE clauses with AND.
403
-
404
- .. code-block:: php
405
-
406
- <?php
407
- $people = ORM::for_table('person')
408
- ->where('name', 'Fred')
409
- ->where_raw('(`age` = ? OR `age` = ?)', array(20, 25))
410
- ->order_by_asc('name')
411
- ->find_many();
412
-
413
- // Creates SQL:
414
- SELECT * FROM `person` WHERE `name` = "Fred" AND (`age` = 20 OR `age` = 25) ORDER BY `name` ASC;
415
-
416
- .. note::
417
-
418
- You must wrap your expression in parentheses when using any of ``ALL``,
419
- ``ANY``, ``BETWEEN``, ``IN``, ``LIKE``, ``OR`` and ``SOME``. Otherwise
420
- the precedence of ``AND`` will bind stronger and in the above example
421
- you would effectively get ``WHERE (`name` = "Fred" AND `age` = 20) OR `age` = 25``
422
-
423
- Note that this method only supports "question mark placeholder" syntax,
424
- and NOT "named placeholder" syntax. This is because PDO does not allow
425
- queries that contain a mixture of placeholder types. Also, you should
426
- ensure that the number of question mark placeholders in the string
427
- exactly matches the number of elements in the array.
428
-
429
- If you require yet more flexibility, you can manually specify the entire
430
- query. See *Raw queries* below.
431
-
432
- Limits and offsets
433
- ''''''''''''''''''
434
-
435
- *Note that these methods **do not** escape their query parameters and so
436
- these should **not** be passed directly from user input.*
437
-
438
- The ``limit`` and ``offset`` methods map pretty closely to their SQL
439
- equivalents.
440
-
441
- .. code-block:: php
442
-
443
- <?php
444
- $people = ORM::for_table('person')->where('gender', 'female')->limit(5)->offset(10)->find_many();
445
-
446
- Ordering
447
- ''''''''
448
-
449
- *Note that these methods **do not** escape their query parameters and so
450
- these should **not** be passed directly from user input.*
451
-
452
- Two methods are provided to add ``ORDER BY`` clauses to your query.
453
- These are ``order_by_desc`` and ``order_by_asc``, each of which takes a
454
- column name to sort by. The column names will be quoted.
455
-
456
- .. code-block:: php
457
-
458
- <?php
459
- $people = ORM::for_table('person')->order_by_asc('gender')->order_by_desc('name')->find_many();
460
-
461
- If you want to order by something other than a column name, then use the
462
- ``order_by_expr`` method to add an unquoted SQL expression as an
463
- ``ORDER BY`` clause.
464
-
465
- .. code-block:: php
466
-
467
- <?php
468
- $people = ORM::for_table('person')->order_by_expr('SOUNDEX(`name`)')->find_many();
469
-
470
- Grouping
471
- ^^^^^^^^
472
-
473
- *Note that this method **does not** escape it query parameter and so
474
- this should **not** by passed directly from user input.*
475
-
476
- To add a ``GROUP BY`` clause to your query, call the ``group_by``
477
- method, passing in the column name. You can call this method multiple
478
- times to add further columns.
479
-
480
- .. code-block:: php
481
-
482
- <?php
483
- $people = ORM::for_table('person')->where('gender', 'female')->group_by('name')->find_many();
484
-
485
- It is also possible to ``GROUP BY`` a database expression:
486
-
487
- .. code-block:: php
488
-
489
- <?php
490
- $people = ORM::for_table('person')->where('gender', 'female')->group_by_expr("FROM_UNIXTIME(`time`, '%Y-%m')")->find_many();
491
-
492
- Having
493
- ^^^^^^
494
-
495
- When using aggregate functions in combination with a ``GROUP BY`` you can use
496
- ``HAVING`` to filter based on those values.
497
-
498
- ``HAVING`` works in exactly the same way as all of the ``where*`` functions in Idiorm.
499
- Substitute ``where_`` for ``having_`` to make use of these functions.
500
-
501
- For example:
502
-
503
- .. code-block:: php
504
-
505
- <?php
506
- $people = ORM::for_table('person')->group_by('name')->having_not_like('name', '%bob%')->find_many();
507
-
508
- Result columns
509
- ^^^^^^^^^^^^^^
510
-
511
- By default, all columns in the ``SELECT`` statement are returned from
512
- your query. That is, calling:
513
-
514
- .. code-block:: php
515
-
516
- <?php
517
- $people = ORM::for_table('person')->find_many();
518
-
519
- Will result in the query:
520
-
521
- .. code-block:: php
522
-
523
- <?php
524
- SELECT * FROM `person`;
525
-
526
- The ``select`` method gives you control over which columns are returned.
527
- Call ``select`` multiple times to specify columns to return or use
528
- ```select_many`` <#shortcuts-for-specifying-many-columns>`_ to specify
529
- many columns at once.
530
-
531
- .. code-block:: php
532
-
533
- <?php
534
- $people = ORM::for_table('person')->select('name')->select('age')->find_many();
535
-
536
- Will result in the query:
537
-
538
- .. code-block:: php
539
-
540
- <?php
541
- SELECT `name`, `age` FROM `person`;
542
-
543
- Optionally, you may also supply a second argument to ``select`` to
544
- specify an alias for the column:
545
-
546
- .. code-block:: php
547
-
548
- <?php
549
- $people = ORM::for_table('person')->select('name', 'person_name')->find_many();
550
-
551
- Will result in the query:
552
-
553
- .. code-block:: php
554
-
555
- <?php
556
- SELECT `name` AS `person_name` FROM `person`;
557
-
558
- Column names passed to ``select`` are quoted automatically, even if they
559
- contain ``table.column``-style identifiers:
560
-
561
- .. code-block:: php
562
-
563
- <?php
564
- $people = ORM::for_table('person')->select('person.name', 'person_name')->find_many();
565
-
566
- Will result in the query:
567
-
568
- .. code-block:: php
569
-
570
- <?php
571
- SELECT `person`.`name` AS `person_name` FROM `person`;
572
-
573
- If you wish to override this behaviour (for example, to supply a
574
- database expression) you should instead use the ``select_expr`` method.
575
- Again, this takes the alias as an optional second argument. You can
576
- specify multiple expressions by calling ``select_expr`` multiple times
577
- or use ```select_many_expr`` <#shortcuts-for-specifying-many-columns>`_
578
- to specify many expressions at once.
579
-
580
- .. code-block:: php
581
-
582
- <?php
583
- // NOTE: For illustrative purposes only. To perform a count query, use the count() method.
584
- $people_count = ORM::for_table('person')->select_expr('COUNT(*)', 'count')->find_many();
585
-
586
- Will result in the query:
587
-
588
- .. code-block:: php
589
-
590
- <?php
591
- SELECT COUNT(*) AS `count` FROM `person`;
592
-
593
- Shortcuts for specifying many columns
594
- '''''''''''''''''''''''''''''''''''''
595
-
596
- ``select_many`` and ``select_many_expr`` are very similar, but they
597
- allow you to specify more than one column at once. For example:
598
-
599
- .. code-block:: php
600
-
601
- <?php
602
- $people = ORM::for_table('person')->select_many('name', 'age')->find_many();
603
-
604
- Will result in the query:
605
-
606
- .. code-block:: php
607
-
608
- <?php
609
- SELECT `name`, `age` FROM `person`;
610
-
611
- To specify aliases you need to pass in an array (aliases are set as the
612
- key in an associative array):
613
-
614
- .. code-block:: php
615
-
616
- <?php
617
- $people = ORM::for_table('person')->select_many(array('first_name' => 'name'), 'age', 'height')->find_many();
618
-
619
- Will result in the query:
620
-
621
- .. code-block:: php
622
-
623
- <?php
624
- SELECT `name` AS `first_name`, `age`, `height` FROM `person`;
625
-
626
- You can pass the the following styles into ``select_many`` and
627
- ``select_many_expr`` by mixing and matching arrays and parameters:
628
-
629
- .. code-block:: php
630
-
631
- <?php
632
- select_many(array('alias' => 'column', 'column2', 'alias2' => 'column3'), 'column4', 'column5')
633
- select_many('column', 'column2', 'column3')
634
- select_many(array('column', 'column2', 'column3'), 'column4', 'column5')
635
-
636
- All the select methods can also be chained with each other so you could
637
- do the following to get a neat select query including an expression:
638
-
639
- .. code-block:: php
640
-
641
- <?php
642
- $people = ORM::for_table('person')->select_many('name', 'age', 'height')->select_expr('NOW()', 'timestamp')->find_many();
643
-
644
- Will result in the query:
645
-
646
- .. code-block:: php
647
-
648
- <?php
649
- SELECT `name`, `age`, `height`, NOW() AS `timestamp` FROM `person`;
650
-
651
- DISTINCT
652
- ^^^^^^^^
653
-
654
- To add a ``DISTINCT`` keyword before the list of result columns in your
655
- query, add a call to ``distinct()`` to your query chain.
656
-
657
- .. code-block:: php
658
-
659
- <?php
660
- $distinct_names = ORM::for_table('person')->distinct()->select('name')->find_many();
661
-
662
- This will result in the query:
663
-
664
- .. code-block:: php
665
-
666
- <?php
667
- SELECT DISTINCT `name` FROM `person`;
668
-
669
- Joins
670
- ^^^^^
671
-
672
- Idiorm has a family of methods for adding different types of ``JOIN``\ s
673
- to the queries it constructs:
674
-
675
- Methods: ``join``, ``inner_join``, ``left_outer_join``,
676
- ``right_outer_join``, ``full_outer_join``.
677
-
678
- Each of these methods takes the same set of arguments. The following
679
- description will use the basic ``join`` method as an example, but the
680
- same applies to each method.
681
-
682
- The first two arguments are mandatory. The first is the name of the
683
- table to join, and the second supplies the conditions for the join. The
684
- recommended way to specify the conditions is as an *array* containing
685
- three components: the first column, the operator, and the second column.
686
- The table and column names will be automatically quoted. For example:
687
-
688
- .. code-block:: php
689
-
690
- <?php
691
- $results = ORM::for_table('person')->join('person_profile', array('person.id', '=', 'person_profile.person_id'))->find_many();
692
-
693
- It is also possible to specify the condition as a string, which will be
694
- inserted as-is into the query. However, in this case the column names
695
- will **not** be escaped, and so this method should be used with caution.
696
-
697
- .. code-block:: php
698
-
699
- <?php
700
- // Not recommended because the join condition will not be escaped.
701
- $results = ORM::for_table('person')->join('person_profile', 'person.id = person_profile.person_id')->find_many();
702
-
703
- The ``join`` methods also take an optional third parameter, which is an
704
- ``alias`` for the table in the query. This is useful if you wish to join
705
- the table to *itself* to create a hierarchical structure. In this case,
706
- it is best combined with the ``table_alias`` method, which will add an
707
- alias to the *main* table associated with the ORM, and the ``select``
708
- method to control which columns get returned.
709
-
710
- .. code-block:: php
711
-
712
- <?php
713
- $results = ORM::for_table('person')
714
- ->table_alias('p1')
715
- ->select('p1.*')
716
- ->select('p2.name', 'parent_name')
717
- ->join('person', array('p1.parent', '=', 'p2.id'), 'p2')
718
- ->find_many();
719
-
720
- Raw JOIN clauses
721
- '''''''''''''''''
722
-
723
- If you need to construct a more complex query, you can use the ``raw_join``
724
- method to specify the SQL fragment for the JOIN clause exactly. This
725
- method takes four required arguments: the string to add to the query,
726
- the conditions is as an *array* containing three components:
727
- the first column, the operator, and the second column, the table alias and
728
- (optional) the parameters array. If parameters are supplied,
729
- the string should contain question mark characters (``?``) to represent
730
- the values to be bound, and the parameter array should contain the values
731
- to be substituted into the string in the correct order.
732
-
733
- This method may be used in a method chain alongside other ``*_join``
734
- methods as well as methods such as ``offset``, ``limit`` and
735
- ``order_by_*``. The contents of the string you supply will be connected
736
- with preceding and following JOIN clauses.
737
-
738
- .. code-block:: php
739
-
740
- <?php
741
- $people = ORM::for_table('person')
742
- ->raw_join(
743
- 'JOIN (SELECT * FROM role WHERE role.name = ?)',
744
- array('person.role_id', '=', 'role.id'),
745
- 'role',
746
- array('role' => 'janitor'))
747
- ->order_by_asc('person.name')
748
- ->find_many();
749
-
750
- // Creates SQL:
751
- SELECT * FROM `person` JOIN (SELECT * FROM role WHERE role.name = 'janitor') `role` ON `person`.`role_id` = `role`.`id` ORDER BY `person`.`name` ASC
752
-
753
- Note that this method only supports "question mark placeholder" syntax,
754
- and NOT "named placeholder" syntax. This is because PDO does not allow
755
- queries that contain a mixture of placeholder types. Also, you should
756
- ensure that the number of question mark placeholders in the string
757
- exactly matches the number of elements in the array.
758
-
759
- If you require yet more flexibility, you can manually specify the entire
760
- query. See *Raw queries* below.
761
-
762
-
763
- Aggregate functions
764
- ^^^^^^^^^^^^^^^^^^^
765
-
766
- There is support for ``MIN``, ``AVG``, ``MAX`` and ``SUM`` in addition
767
- to ``COUNT`` (documented earlier).
768
-
769
- To return a minimum value of column, call the ``min()`` method.
770
-
771
- .. code-block:: php
772
-
773
- <?php
774
- $min = ORM::for_table('person')->min('height');
775
-
776
- The other functions (``AVG``, ``MAX`` and ``SUM``) work in exactly the
777
- same manner. Supply a column name to perform the aggregate function on
778
- and it will return an integer.
779
-
780
- Raw queries
781
- ^^^^^^^^^^^
782
-
783
- If you need to perform more complex queries, you can completely specify
784
- the query to execute by using the ``raw_query`` method. This method
785
- takes a string and optionally an array of parameters. The string can
786
- contain placeholders, either in question mark or named placeholder
787
- syntax, which will be used to bind the parameters to the query.
788
-
789
- .. code-block:: php
790
-
791
- <?php
792
- $people = ORM::for_table('person')->raw_query('SELECT p.* FROM person p JOIN role r ON p.role_id = r.id WHERE r.name = :role', array('role' => 'janitor'))->find_many();
793
-
794
- The ORM class instance(s) returned will contain data for all the columns
795
- returned by the query. Note that you still must call ``for_table`` to
796
- bind the instances to a particular table, even though there is nothing
797
- to stop you from specifying a completely different table in the query.
798
- This is because if you wish to later called ``save``, the ORM will need
799
- to know which table to update.
800
-
801
- Note that using ``raw_query`` is advanced and possibly dangerous, and
802
- Idiorm does not make any attempt to protect you from making errors when
803
- using this method. If you find yourself calling ``raw_query`` often, you
804
- may have misunderstood the purpose of using an ORM, or your application
805
- may be too complex for Idiorm. Consider using a more full-featured
806
- database abstraction system.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/idiorm/docs/transactions.rst DELETED
@@ -1,21 +0,0 @@
1
- Transactions
2
- ============
3
-
4
- Idiorm doesn’t supply any extra methods to deal with transactions, but
5
- it’s very easy to use PDO’s built-in methods:
6
-
7
- .. code-block:: php
8
-
9
- <?php
10
- // Start a transaction
11
- ORM::get_db()->beginTransaction();
12
-
13
- // Commit a transaction
14
- ORM::get_db()->commit();
15
-
16
- // Roll back a transaction
17
- ORM::get_db()->rollBack();
18
-
19
- For more details, see `the PDO documentation on Transactions`_.
20
-
21
- .. _the PDO documentation on Transactions: http://www.php.net/manual/en/pdo.transactions.php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/CONTRIBUTING.md DELETED
@@ -1,16 +0,0 @@
1
- ---
2
- ### Feature complete
3
-
4
- Paris is now considered to be feature complete as of version 1.5.0. Whilst it will continue to be maintained with bug fixes there will be no further new features added.
5
-
6
- **Please do not submit feature requests or pull requests adding new features as they will be closed without ceremony.**
7
-
8
- ---
9
-
10
- When making a pull request please include the following aspects:
11
-
12
- - Update the changelog in the README.markdown file to include details of the pull request
13
- - If the documentation in the README or Sphinx docs needs to be amended please do so in the pull request
14
- - Include unit tests for any changes - if it is a bug include at least one regression test
15
-
16
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/README.markdown DELETED
@@ -1,154 +0,0 @@
1
- Paris
2
- =====
3
-
4
- [![Build Status](https://travis-ci.org/j4mie/paris.png?branch=master)](https://travis-ci.org/j4mie/paris) [![Latest Stable Version](https://poser.pugx.org/j4mie/paris/v/stable.png)](https://packagist.org/packages/j4mie/paris) [![Total Downloads](https://poser.pugx.org/j4mie/paris/downloads.png)](https://packagist.org/packages/j4mie/paris)
5
-
6
- [http://j4mie.github.com/idiormandparis/](http://j4mie.github.com/idiormandparis/)
7
-
8
- ---
9
- ### Feature complete
10
-
11
- Paris is now considered to be feature complete as of version 1.5.0. Whilst it will continue to be maintained with bug fixes there will be no further new features added from this point on.
12
-
13
- **Please do not submit feature requests or pull requests adding new features as they will be closed without ceremony.**
14
-
15
- ---
16
-
17
- A lightweight Active Record implementation for PHP5.
18
-
19
- Built on top of [Idiorm](http://github.com/j4mie/idiorm/).
20
-
21
- Tested on PHP 5.2.0+ - may work on earlier versions with PDO and the correct database drivers.
22
-
23
- Released under a [BSD license](http://en.wikipedia.org/wiki/BSD_licenses).
24
-
25
- Features
26
- --------
27
-
28
- * Extremely simple configuration.
29
- * Exposes the full power of [Idiorm](http://github.com/j4mie/idiorm/)'s fluent query API.
30
- * Supports associations.
31
- * Simple mechanism to encapsulate common queries in filter methods.
32
- * Built on top of [PDO](http://php.net/pdo).
33
- * Uses [prepared statements](http://uk.php.net/manual/en/pdo.prepared-statements.php) throughout to protect against [SQL injection](http://en.wikipedia.org/wiki/SQL_injection) attacks.
34
- * Database agnostic. Currently supports SQLite, MySQL, Firebird and PostgreSQL. May support others, please give it a try!
35
- * Supports collections of models with method chaining to filter or apply actions to multiple results at once.
36
- * Multiple connections are supported
37
-
38
- Documentation
39
- -------------
40
-
41
- The documentation is hosted on Read the Docs: [paris.rtfd.org](http://paris.rtfd.org)
42
-
43
- ### Building the Docs ###
44
-
45
- You will need to install [Sphinx](http://sphinx-doc.org/) and then in the docs folder run:
46
-
47
- make html
48
-
49
- The documentation will now be in docs/_build/html/index.html
50
-
51
- Let's See Some Code
52
- -------------------
53
- ```php
54
- class User extends Model {
55
- public function tweets() {
56
- return $this->has_many('Tweet');
57
- }
58
- }
59
-
60
- class Tweet extends Model {}
61
-
62
- $user = Model::factory('User')
63
- ->where_equal('username', 'j4mie')
64
- ->find_one();
65
- $user->first_name = 'Jamie';
66
- $user->save();
67
-
68
- $tweets = $user->tweets()->find_many();
69
- foreach ($tweets as $tweet) {
70
- echo $tweet->text;
71
- }
72
- ```
73
-
74
- Changelog
75
- ---------
76
-
77
- #### 1.5.4 - released 2014-09-23
78
-
79
- * Corrects return value in docblock for 2 Model functions [[michaelward82](https://github.com/michaelward82)] - [issue #99](https://github.com/j4mie/paris/pull/99)
80
-
81
- #### 1.5.3 - released 2014-06-25
82
-
83
- * Remove erroneously committed git merge backup file
84
-
85
- #### 1.5.2 - released 2014-06-23
86
-
87
- * Paris incorrectly relying on old Idiorm version in the composer.json [[ilsenem](https://github.com/ilsenem)] - [issue #96](https://github.com/j4mie/paris/pull/96)
88
-
89
- #### 1.5.1 - released 2014-06-22
90
-
91
- * Remove HHVM build target from travis-ci as there is a bug in HHVM
92
-
93
- #### 1.5.0 - released 2014-06-22
94
-
95
- * Allows static calling of Model subclasses, ignoring namespace info during table name generation [[michaelward82](https://github.com/michaelward82)] - [issue #90](https://github.com/j4mie/paris/issues/90)
96
- * Prevent invalid method calls from triggering infinite recursion [[michaelward82](https://github.com/michaelward82)] - [issue #75](https://github.com/j4mie/idiorm/issues/75)
97
- * Allow chaining of the `set()` and `set_expr()` methods [[naga3](https://github.com/naga3)] - [issue #94](https://github.com/j4mie/paris/issues/94)
98
- * Add HHVM to travis-ci build matrix [[ptarjan](https://github.com/ptarjan)] - [issue #81](https://github.com/j4mie/idiorm/issues/81)
99
- * Improve join documentation [[rhynodesigns](https://github.com/rhynodesigns)] - [issue #92](https://github.com/j4mie/paris/issues/92)
100
- * Improve code docblock [[michaelward82](https://github.com/michaelward82)] - [issue #91](https://github.com/j4mie/paris/issues/91)
101
- * Improve code docblocks and whitespace [[michaelward82](https://github.com/michaelward82)] - [issue #93](https://github.com/j4mie/paris/issues/93)
102
- * Improve connections documentation [[kkeiper1103](https://github.com/kkeiper1103)] - [issue #79](https://github.com/j4mie/paris/issues/79)
103
-
104
- #### 1.4.2 - released 2013-12-12
105
-
106
- **Patch update to remove a broken pull request** - may have consequences for users of 1.4.0 and 1.4.1 that exploited the "`find_many()` now returns an associative array with the databases primary ID as the array keys" change that was merged in 1.4.0.
107
-
108
- * Back out pull request/issue [#133](https://github.com/j4mie/idiorm/pull/133) as it breaks backwards compatibility in previously unexpected ways (see Idiorm issues [#162](https://github.com/j4mie/idiorm/pull/162), [#156](https://github.com/j4mie/idiorm/issues/156) and [#133](https://github.com/j4mie/idiorm/pull/133#issuecomment-29063108)) - sorry for merging this change into Paris - closes Idiorm [issue 156](https://github.com/j4mie/idiorm/issues/156)
109
-
110
- #### 1.4.1 - released 2013-09-05
111
-
112
- * Increment composer.json requirement for Idiorm to 1.4.0 [[michaelward82](https://github.com/michaelward82)] - [Issue #72](https://github.com/j4mie/paris/pull/72)
113
-
114
- #### 1.4.0 - released 2013-09-05
115
-
116
- * Call methods against model class directly eg. `User::find_many()` - PHP 5.3 only [[Lapayo](https://github.com/Lapayo)] - [issue #62](https://github.com/j4mie/idiorm/issues/62)
117
- * `find_many()` now returns an associative array with the databases primary ID as the array keys [[Surt](https://github.com/Surt)] - see commit [9ac0ae7](https://github.com/j4mie/paris/commit/9ac0ae7d302f1980c95b97a98cbd6d5b2c04923f) and Idiorm [issue #133](https://github.com/j4mie/idiorm/issues/133)
118
- * Add PSR-1 compliant camelCase method calls to Idiorm (PHP 5.3+ required) [[crhayes](https://github.com/crhayes)] - [issue #59](https://github.com/j4mie/idiorm/issues/59)
119
- * Allow specification of connection on relation methods [[alexandrusavin](https://github.com/alexandrusavin)] - [issue #55](https://github.com/j4mie/idiorm/issues/55)
120
- * Make tests/bootstrap.php HHVM compatible [[JoelMarcey](https://github.com/JoelMarcey)] - [issue #71](https://github.com/j4mie/idiorm/issues/71)
121
- * belongs_to doesn't work with $auto_prefix_models ([issue #70](https://github.com/j4mie/paris/issues/70))
122
-
123
- #### 1.3.0 - released 2013-01-31
124
-
125
- * Documentation moved to [paris.rtfd.org](http://paris.rtfd.org) and now built using [Sphinx](http://sphinx-doc.org/)
126
- * Add support for multiple database connections [[tag](https://github.com/tag)] - [issue #15](https://github.com/j4mie/idiorm/issues/15)
127
- * Allow a prefix for model class names - see Configuration in the documentation - closes [issues #33](https://github.com/j4mie/paris/issues/33)
128
- * Exclude tests and git files from git exports (used by composer)
129
- * Implement `set_expr` - closes [issue #39](https://github.com/j4mie/paris/issues/39)
130
- * Add `is_new` - closes [issue #40](https://github.com/j4mie/paris/issues/40)
131
- * Add support for the new IdiormResultSet object in Idiorm - closes [issue #14](https://github.com/j4mie/paris/issues/14)
132
- * Change Composer to use a classmap so that autoloading is better supported [[javierd](https://github.com/javiervd)] - [issue #44](https://github.com/j4mie/paris/issues/44)
133
- * Move tests into PHPUnit to match Idiorm
134
- * Update included Idiorm version for tests
135
- * Move documentation to use Sphinx
136
-
137
- #### 1.2.0 - released 2012-11-14
138
-
139
- * Setup composer for installation via packagist (j4mie/paris)
140
- * Add in basic namespace support, see [issue #20](https://github.com/j4mie/paris/issues/20)
141
- * Allow properties to be set as an associative array in `set()`, see [issue #13](https://github.com/j4mie/paris/issues/13)
142
- * Patch in idiorm now allows empty models to be saved (j4mie/idiorm see [issue #58](https://github.com/j4mie/paris/issues/58))
143
-
144
- #### 1.1.1 - released 2011-01-30
145
-
146
- * Fix incorrect tests, see [issue #12](https://github.com/j4mie/paris/issues/12)
147
-
148
- #### 1.1.0 - released 2011-01-24
149
-
150
- * Add `is_dirty` method
151
-
152
- #### 1.0.0 - released 2010-12-01
153
-
154
- * Initial release
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/Makefile DELETED
@@ -1,153 +0,0 @@
1
- # Makefile for Sphinx documentation
2
- #
3
-
4
- # You can set these variables from the command line.
5
- SPHINXOPTS =
6
- SPHINXBUILD = sphinx-build
7
- PAPER =
8
- BUILDDIR = _build
9
-
10
- # Internal variables.
11
- PAPEROPT_a4 = -D latex_paper_size=a4
12
- PAPEROPT_letter = -D latex_paper_size=letter
13
- ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
14
- # the i18n builder cannot share the environment and doctrees with the others
15
- I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
16
-
17
- .PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
18
-
19
- help:
20
- @echo "Please use \`make <target>' where <target> is one of"
21
- @echo " html to make standalone HTML files"
22
- @echo " dirhtml to make HTML files named index.html in directories"
23
- @echo " singlehtml to make a single large HTML file"
24
- @echo " pickle to make pickle files"
25
- @echo " json to make JSON files"
26
- @echo " htmlhelp to make HTML files and a HTML help project"
27
- @echo " qthelp to make HTML files and a qthelp project"
28
- @echo " devhelp to make HTML files and a Devhelp project"
29
- @echo " epub to make an epub"
30
- @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
31
- @echo " latexpdf to make LaTeX files and run them through pdflatex"
32
- @echo " text to make text files"
33
- @echo " man to make manual pages"
34
- @echo " texinfo to make Texinfo files"
35
- @echo " info to make Texinfo files and run them through makeinfo"
36
- @echo " gettext to make PO message catalogs"
37
- @echo " changes to make an overview of all changed/added/deprecated items"
38
- @echo " linkcheck to check all external links for integrity"
39
- @echo " doctest to run all doctests embedded in the documentation (if enabled)"
40
-
41
- clean:
42
- -rm -rf $(BUILDDIR)/*
43
-
44
- html:
45
- $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
46
- @echo
47
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
48
-
49
- dirhtml:
50
- $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
51
- @echo
52
- @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
53
-
54
- singlehtml:
55
- $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
56
- @echo
57
- @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
58
-
59
- pickle:
60
- $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
61
- @echo
62
- @echo "Build finished; now you can process the pickle files."
63
-
64
- json:
65
- $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
66
- @echo
67
- @echo "Build finished; now you can process the JSON files."
68
-
69
- htmlhelp:
70
- $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
71
- @echo
72
- @echo "Build finished; now you can run HTML Help Workshop with the" \
73
- ".hhp project file in $(BUILDDIR)/htmlhelp."
74
-
75
- qthelp:
76
- $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
77
- @echo
78
- @echo "Build finished; now you can run "qcollectiongenerator" with the" \
79
- ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
80
- @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/Paris.qhcp"
81
- @echo "To view the help file:"
82
- @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Paris.qhc"
83
-
84
- devhelp:
85
- $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
86
- @echo
87
- @echo "Build finished."
88
- @echo "To view the help file:"
89
- @echo "# mkdir -p $$HOME/.local/share/devhelp/Paris"
90
- @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Paris"
91
- @echo "# devhelp"
92
-
93
- epub:
94
- $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
95
- @echo
96
- @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
97
-
98
- latex:
99
- $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
100
- @echo
101
- @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
102
- @echo "Run \`make' in that directory to run these through (pdf)latex" \
103
- "(use \`make latexpdf' here to do that automatically)."
104
-
105
- latexpdf:
106
- $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
107
- @echo "Running LaTeX files through pdflatex..."
108
- $(MAKE) -C $(BUILDDIR)/latex all-pdf
109
- @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
110
-
111
- text:
112
- $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
113
- @echo
114
- @echo "Build finished. The text files are in $(BUILDDIR)/text."
115
-
116
- man:
117
- $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
118
- @echo
119
- @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
120
-
121
- texinfo:
122
- $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
123
- @echo
124
- @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
125
- @echo "Run \`make' in that directory to run these through makeinfo" \
126
- "(use \`make info' here to do that automatically)."
127
-
128
- info:
129
- $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
130
- @echo "Running Texinfo files through makeinfo..."
131
- make -C $(BUILDDIR)/texinfo info
132
- @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
133
-
134
- gettext:
135
- $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
136
- @echo
137
- @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
138
-
139
- changes:
140
- $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
141
- @echo
142
- @echo "The overview file is in $(BUILDDIR)/changes."
143
-
144
- linkcheck:
145
- $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
146
- @echo
147
- @echo "Link check complete; look for any errors in the above output " \
148
- "or in $(BUILDDIR)/linkcheck/output.txt."
149
-
150
- doctest:
151
- $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
152
- @echo "Testing of doctests in the sources finished, look at the " \
153
- "results in $(BUILDDIR)/doctest/output.txt."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/associations.rst DELETED
@@ -1,279 +0,0 @@
1
- Associations
2
- ============
3
-
4
- Paris provides a simple API for one-to-one, one-to-many and many-to-many
5
- relationships (associations) between models. It takes a different
6
- approach to many other ORMs, which use associative arrays to add
7
- configuration metadata about relationships to model classes. These
8
- arrays can often be deeply nested and complex, and are therefore quite
9
- error-prone.
10
-
11
- Instead, Paris treats the act of querying across a relationship as a
12
- *behaviour*, and supplies a family of helper methods to help generate
13
- such queries. These helper methods should be called from within
14
- *methods* on your model classes which are named to describe the
15
- relationship. These methods return ORM instances (rather than actual
16
- Model instances) and so, if necessary, the relationship query can be
17
- modified and added to before it is run.
18
-
19
- Summary
20
- ^^^^^^^
21
-
22
- The following list summarises the associations provided by Paris, and
23
- explains which helper method supports each type of association:
24
-
25
- One-to-one
26
- ''''''''''
27
-
28
- Use ``has_one`` in the base, and ``belongs_to`` in the associated model.
29
-
30
- One-to-many
31
- '''''''''''
32
-
33
- Use ``has_many`` in the base, and ``belongs_to`` in the associated
34
- model.
35
-
36
- Many-to-many
37
- ''''''''''''
38
-
39
- Use ``has_many_through`` in both the base and associated models.
40
-
41
- Below, each association helper method is discussed in detail.
42
-
43
- Has-one
44
- ^^^^^^^
45
-
46
- One-to-one relationships are implemented using the ``has_one`` method.
47
- For example, say we have a ``User`` model. Each user has a single
48
- ``Profile``, and so the ``user`` table should be associated with the
49
- ``profile`` table. To be able to find the profile for a particular user,
50
- we should add a method called ``profile`` to the ``User`` class (note
51
- that the method name here is arbitrary, but should describe the
52
- relationship). This method calls the protected ``has_one`` method
53
- provided by Paris, passing in the class name of the related object. The
54
- ``profile`` method should return an ORM instance ready for (optional)
55
- further filtering.
56
-
57
- .. code-block:: php
58
-
59
- <?php
60
- class Profile extends Model {
61
- }
62
-
63
- class User extends Model {
64
- public function profile() {
65
- return $this->has_one('Profile');
66
- }
67
- }
68
-
69
- The API for this method works as follows:
70
-
71
- .. code-block:: php
72
-
73
- <?php
74
- // Select a particular user from the database
75
- $user = Model::factory('User')->find_one($user_id);
76
-
77
- // Find the profile associated with the user
78
- $profile = $user->profile()->find_one();
79
-
80
- By default, Paris assumes that the foreign key column on the related
81
- table has the same name as the current (base) table, with ``_id``
82
- appended. In the example above, Paris will look for a foreign key column
83
- called ``user_id`` on the table used by the ``Profile`` class. To
84
- override this behaviour, add a second argument to your ``has_one`` call,
85
- passing the name of the column to use.
86
-
87
- In addition, Paris assumes that the foreign key column in the current (base)
88
- table is the primary key column of the base table. In the example above,
89
- Paris will use the column called ``user_id`` (assuming ``user_id`` is the
90
- primary key for the user table) in the base table (in this case the user table)
91
- as the foreign key column in the base table. To override this behaviour,
92
- add a third argument to your ``has_one call``, passing the name of the column
93
- you intend to use as the foreign key column in the base table.
94
-
95
- Has many
96
- ^^^^^^^^
97
-
98
- One-to-many relationships are implemented using the ``has_many`` method.
99
- For example, say we have a ``User`` model. Each user has several
100
- ``Post`` objects. The ``user`` table should be associated with the
101
- ``post`` table. To be able to find the posts for a particular user, we
102
- should add a method called ``posts`` to the ``User`` class (note that
103
- the method name here is arbitrary, but should describe the
104
- relationship). This method calls the protected ``has_many`` method
105
- provided by Paris, passing in the class name of the related objects.
106
- **Pass the model class name literally, not a pluralised version**. The
107
- ``posts`` method should return an ORM instance ready for (optional)
108
- further filtering.
109
-
110
- .. code-block:: php
111
-
112
- <?php
113
- class Post extends Model {
114
- }
115
-
116
- class User extends Model {
117
- public function posts() {
118
- return $this->has_many('Post'); // Note we use the model name literally - not a pluralised version
119
- }
120
- }
121
-
122
- The API for this method works as follows:
123
-
124
- .. code-block:: php
125
-
126
- <?php
127
- // Select a particular user from the database
128
- $user = Model::factory('User')->find_one($user_id);
129
-
130
- // Find the posts associated with the user
131
- $posts = $user->posts()->find_many();
132
-
133
- By default, Paris assumes that the foreign key column on the related
134
- table has the same name as the current (base) table, with ``_id``
135
- appended. In the example above, Paris will look for a foreign key column
136
- called ``user_id`` on the table used by the ``Post`` class. To override
137
- this behaviour, add a second argument to your ``has_many`` call, passing
138
- the name of the column to use.
139
-
140
- In addition, Paris assumes that the foreign key column in the current (base)
141
- table is the primary key column of the base table. In the example above, Paris
142
- will use the column called ``user_id`` (assuming ``user_id`` is the primary key
143
- for the user table) in the base table (in this case the user table) as the
144
- foreign key column in the base table. To override this behaviour, add a third
145
- argument to your ``has_many call``, passing the name of the column you intend
146
- to use as the foreign key column in the base table.
147
-
148
- Belongs to
149
- ^^^^^^^^^^
150
-
151
- The ‘other side’ of ``has_one`` and ``has_many`` is ``belongs_to``. This
152
- method call takes identical parameters as these methods, but assumes the
153
- foreign key is on the *current* (base) table, not the related table.
154
-
155
- .. code-block:: php
156
-
157
- <?php
158
- class Profile extends Model {
159
- public function user() {
160
- return $this->belongs_to('User');
161
- }
162
- }
163
-
164
- class User extends Model {
165
- }
166
-
167
- The API for this method works as follows:
168
-
169
- .. code-block:: php
170
-
171
- <?php
172
- // Select a particular profile from the database
173
- $profile = Model::factory('Profile')->find_one($profile_id);
174
-
175
- // Find the user associated with the profile
176
- $user = $profile->user()->find_one();
177
-
178
- Again, Paris makes an assumption that the foreign key on the current
179
- (base) table has the same name as the related table with ``_id``
180
- appended. In the example above, Paris will look for a column named
181
- ``user_id``. To override this behaviour, pass a second argument to the
182
- ``belongs_to`` method, specifying the name of the column on the current
183
- (base) table to use.
184
-
185
- Paris also makes an assumption that the foreign key in the associated (related)
186
- table is the primary key column of the related table. In the example above,
187
- Paris will look for a column named ``user_id`` in the user table (the related
188
- table in this example). To override this behaviour, pass a third argument to
189
- the belongs_to method, specifying the name of the column in the related table
190
- to use as the foreign key column in the related table.
191
-
192
- Has many through
193
- ^^^^^^^^^^^^^^^^
194
-
195
- Many-to-many relationships are implemented using the
196
- ``has_many_through`` method. This method has only one required argument:
197
- the name of the related model. Supplying further arguments allows us to
198
- override default behaviour of the method.
199
-
200
- For example, say we have a ``Book`` model. Each ``Book`` may have
201
- several ``Author`` objects, and each ``Author`` may have written several
202
- ``Books``. To be able to find the authors for a particular book, we
203
- should first create an intermediary model. The name for this model
204
- should be constructed by concatenating the names of the two related
205
- classes, in alphabetical order. In this case, our classes are called
206
- ``Author`` and ``Book``, so the intermediate model should be called
207
- ``AuthorBook``.
208
-
209
- We should then add a method called ``authors`` to the ``Book`` class
210
- (note that the method name here is arbitrary, but should describe the
211
- relationship). This method calls the protected ``has_many_through``
212
- method provided by Paris, passing in the class name of the related
213
- objects. **Pass the model class name literally, not a pluralised
214
- version**. The ``authors`` method should return an ORM instance ready
215
- for (optional) further filtering.
216
-
217
- .. code-block:: php
218
-
219
- <?php
220
- class Author extends Model {
221
- public function books() {
222
- return $this->has_many_through('Book');
223
- }
224
- }
225
-
226
- class Book extends Model {
227
- public function authors() {
228
- return $this->has_many_through('Author');
229
- }
230
- }
231
-
232
- class AuthorBook extends Model {
233
- }
234
-
235
- The API for this method works as follows:
236
-
237
- .. code-block:: php
238
-
239
- <?php
240
- // Select a particular book from the database
241
- $book = Model::factory('Book')->find_one($book_id);
242
-
243
- // Find the authors associated with the book
244
- $authors = $book->authors()->find_many();
245
-
246
- // Get the first author
247
- $first_author = $authors[0];
248
-
249
- // Find all the books written by this author
250
- $first_author_books = $first_author->books()->find_many();
251
-
252
- Overriding defaults
253
- '''''''''''''''''''
254
-
255
- The ``has_many_through`` method takes up to six arguments, which allow
256
- us to progressively override default assumptions made by the method.
257
-
258
- **First argument: associated model name** - this is mandatory and should
259
- be the name of the model we wish to select across the association.
260
-
261
- **Second argument: intermediate model name** - this is optional and
262
- defaults to the names of the two associated models, sorted
263
- alphabetically and concatenated.
264
-
265
- **Third argument: custom key to base table on intermediate table** -
266
- this is optional, and defaults to the name of the base table with
267
- ``_id`` appended.
268
-
269
- **Fourth argument: custom key to associated table on intermediate
270
- table** - this is optional, and defaults to the name of the associated
271
- table with ``_id`` appended.
272
-
273
- **Fifth argument: foreign key column in the base table** -
274
- this is optional, and defaults to the name of the primary key column in
275
- the base table.
276
-
277
- **Sixth argument: foreign key column in the associated table** -
278
- this is optional, and defaults to the name of the primary key column
279
- in the associated table.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/conf.py DELETED
@@ -1,242 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- #
3
- # Paris documentation build configuration file, created by
4
- # sphinx-quickstart on Wed Nov 28 15:47:04 2012.
5
- #
6
- # This file is execfile()d with the current directory set to its containing dir.
7
- #
8
- # Note that not all possible configuration values are present in this
9
- # autogenerated file.
10
- #
11
- # All configuration values have a default; values that are commented out
12
- # serve to show the default.
13
-
14
- import sys, os
15
-
16
- # If extensions (or modules to document with autodoc) are in another directory,
17
- # add these directories to sys.path here. If the directory is relative to the
18
- # documentation root, use os.path.abspath to make it absolute, like shown here.
19
- #sys.path.insert(0, os.path.abspath('.'))
20
-
21
- # -- General configuration -----------------------------------------------------
22
-
23
- # If your documentation needs a minimal Sphinx version, state it here.
24
- #needs_sphinx = '1.0'
25
-
26
- # Add any Sphinx extension module names here, as strings. They can be extensions
27
- # coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
28
- extensions = []
29
-
30
- # Add any paths that contain templates here, relative to this directory.
31
- templates_path = ['_templates']
32
-
33
- # The suffix of source filenames.
34
- source_suffix = '.rst'
35
-
36
- # The encoding of source files.
37
- #source_encoding = 'utf-8-sig'
38
-
39
- # The master toctree document.
40
- master_doc = 'index'
41
-
42
- # General information about the project.
43
- project = u'Paris'
44
- copyright = u'2014, Jamie Matthews and Simon Holywell'
45
-
46
- # The version info for the project you're documenting, acts as replacement for
47
- # |version| and |release|, also used in various other places throughout the
48
- # built documents.
49
- #
50
- # The short X.Y version.
51
- version = ''
52
- # The full version, including alpha/beta/rc tags.
53
- release = ''
54
-
55
- # The language for content autogenerated by Sphinx. Refer to documentation
56
- # for a list of supported languages.
57
- #language = None
58
-
59
- # There are two options for replacing |today|: either, you set today to some
60
- # non-false value, then it is used:
61
- #today = ''
62
- # Else, today_fmt is used as the format for a strftime call.
63
- #today_fmt = '%B %d, %Y'
64
-
65
- # List of patterns, relative to source directory, that match files and
66
- # directories to ignore when looking for source files.
67
- exclude_patterns = ['_build']
68
-
69
- # The reST default role (used for this markup: `text`) to use for all documents.
70
- #default_role = None
71
-
72
- # If true, '()' will be appended to :func: etc. cross-reference text.
73
- #add_function_parentheses = True
74
-
75
- # If true, the current module name will be prepended to all description
76
- # unit titles (such as .. function::).
77
- #add_module_names = True
78
-
79
- # If true, sectionauthor and moduleauthor directives will be shown in the
80
- # output. They are ignored by default.
81
- #show_authors = False
82
-
83
- # The name of the Pygments (syntax highlighting) style to use.
84
- pygments_style = 'sphinx'
85
-
86
- # A list of ignored prefixes for module index sorting.
87
- #modindex_common_prefix = []
88
-
89
-
90
- # -- Options for HTML output ---------------------------------------------------
91
-
92
- # The theme to use for HTML and HTML Help pages. See the documentation for
93
- # a list of builtin themes.
94
- html_theme = 'default'
95
-
96
- # Theme options are theme-specific and customize the look and feel of a theme
97
- # further. For a list of options available for each theme, see the
98
- # documentation.
99
- #html_theme_options = {}
100
-
101
- # Add any paths that contain custom themes here, relative to this directory.
102
- #html_theme_path = []
103
-
104
- # The name for this set of Sphinx documents. If None, it defaults to
105
- # "<project> v<release> documentation".
106
- #html_title = None
107
-
108
- # A shorter title for the navigation bar. Default is the same as html_title.
109
- #html_short_title = None
110
-
111
- # The name of an image file (relative to this directory) to place at the top
112
- # of the sidebar.
113
- #html_logo = None
114
-
115
- # The name of an image file (within the static path) to use as favicon of the
116
- # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
117
- # pixels large.
118
- #html_favicon = None
119
-
120
- # Add any paths that contain custom static files (such as style sheets) here,
121
- # relative to this directory. They are copied after the builtin static files,
122
- # so a file named "default.css" will overwrite the builtin "default.css".
123
- html_static_path = ['_static']
124
-
125
- # If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
126
- # using the given strftime format.
127
- #html_last_updated_fmt = '%b %d, %Y'
128
-
129
- # If true, SmartyPants will be used to convert quotes and dashes to
130
- # typographically correct entities.
131
- #html_use_smartypants = True
132
-
133
- # Custom sidebar templates, maps document names to template names.
134
- #html_sidebars = {}
135
-
136
- # Additional templates that should be rendered to pages, maps page names to
137
- # template names.
138
- #html_additional_pages = {}
139
-
140
- # If false, no module index is generated.
141
- #html_domain_indices = True
142
-
143
- # If false, no index is generated.
144
- #html_use_index = True
145
-
146
- # If true, the index is split into individual pages for each letter.
147
- #html_split_index = False
148
-
149
- # If true, links to the reST sources are added to the pages.
150
- #html_show_sourcelink = True
151
-
152
- # If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
153
- #html_show_sphinx = True
154
-
155
- # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
156
- #html_show_copyright = True
157
-
158
- # If true, an OpenSearch description file will be output, and all pages will
159
- # contain a <link> tag referring to it. The value of this option must be the
160
- # base URL from which the finished HTML is served.
161
- #html_use_opensearch = ''
162
-
163
- # This is the file name suffix for HTML files (e.g. ".xhtml").
164
- #html_file_suffix = None
165
-
166
- # Output file base name for HTML help builder.
167
- htmlhelp_basename = 'Parisdoc'
168
-
169
-
170
- # -- Options for LaTeX output --------------------------------------------------
171
-
172
- latex_elements = {
173
- # The paper size ('letterpaper' or 'a4paper').
174
- #'papersize': 'letterpaper',
175
-
176
- # The font size ('10pt', '11pt' or '12pt').
177
- #'pointsize': '10pt',
178
-
179
- # Additional stuff for the LaTeX preamble.
180
- #'preamble': '',
181
- }
182
-
183
- # Grouping the document tree into LaTeX files. List of tuples
184
- # (source start file, target name, title, author, documentclass [howto/manual]).
185
- latex_documents = [
186
- ('index', 'Paris.tex', u'Paris Documentation',
187
- u'Jamie Matthews and Simon Holywell', 'manual'),
188
- ]
189
-
190
- # The name of an image file (relative to this directory) to place at the top of
191
- # the title page.
192
- #latex_logo = None
193
-
194
- # For "manual" documents, if this is true, then toplevel headings are parts,
195
- # not chapters.
196
- #latex_use_parts = False
197
-
198
- # If true, show page references after internal links.
199
- #latex_show_pagerefs = False
200
-
201
- # If true, show URL addresses after external links.
202
- #latex_show_urls = False
203
-
204
- # Documents to append as an appendix to all manuals.
205
- #latex_appendices = []
206
-
207
- # If false, no module index is generated.
208
- #latex_domain_indices = True
209
-
210
-
211
- # -- Options for manual page output --------------------------------------------
212
-
213
- # One entry per manual page. List of tuples
214
- # (source start file, name, description, authors, manual section).
215
- man_pages = [
216
- ('index', 'paris', u'Paris Documentation',
217
- [u'Jamie Matthews and Simon Holywell'], 1)
218
- ]
219
-
220
- # If true, show URL addresses after external links.
221
- #man_show_urls = False
222
-
223
-
224
- # -- Options for Texinfo output ------------------------------------------------
225
-
226
- # Grouping the document tree into Texinfo files. List of tuples
227
- # (source start file, target name, title, author,
228
- # dir menu entry, description, category)
229
- texinfo_documents = [
230
- ('index', 'Paris', u'Paris Documentation',
231
- u'Jamie Matthews and Simon Holywell', 'Paris', 'One line description of project.',
232
- 'Miscellaneous'),
233
- ]
234
-
235
- # Documents to append as an appendix to all manuals.
236
- #texinfo_appendices = []
237
-
238
- # If false, no module index is generated.
239
- #texinfo_domain_indices = True
240
-
241
- # How to display URL addresses: 'footnote', 'no', or 'inline'.
242
- #texinfo_show_urls = 'footnote'
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/configuration.rst DELETED
@@ -1,95 +0,0 @@
1
- Configuration
2
- =============
3
-
4
- Setup
5
- ~~~~~
6
-
7
- Paris requires `Idiorm`_. Install Idiorm and Paris somewhere in your
8
- project directory, and ``require`` both.
9
-
10
- .. code-block:: php
11
-
12
- <?php
13
- require_once 'your/path/to/idiorm.php';
14
- require_once 'your/path/to/paris.php';
15
-
16
- Then, you need to tell Idiorm how to connect to your database. **For
17
- full details of how to do this, see `Idiorm's documentation`_.**
18
-
19
- Briefly, you need to pass a *Data Source Name* connection string to the
20
- ``configure`` method of the ORM class.
21
-
22
- .. code-block:: php
23
-
24
- <?php
25
- ORM::configure('sqlite:./example.db');
26
-
27
- You may also need to pass a username and password to your database
28
- driver, using the ``username`` and ``password`` configuration options.
29
- For example, if you are using MySQL:
30
-
31
- .. code-block:: php
32
-
33
- <?php
34
- ORM::configure('mysql:host=localhost;dbname=my_database');
35
- ORM::configure('username', 'database_user');
36
- ORM::configure('password', 'top_secret');
37
-
38
- Model prefixing
39
- ~~~~~~~~~~~~~~~
40
-
41
- Setting: ``Model::$auto_prefix_models``
42
-
43
- To save having type out model class name prefixes whenever code utilises ``Model::for_table()``
44
- it is possible to specify a prefix that will be prepended onto the class name.
45
-
46
- The model prefix is treated the same way as any other class name when Paris
47
- attempts to convert it to a table name. This is documented in the :doc:`Models`
48
- section of the documentation.
49
-
50
- Here is a namespaced example to make it clearer:
51
-
52
- .. code-block:: php
53
-
54
- <?php
55
- Model::$auto_prefix_models = '\\Tests\\';
56
- Model::factory('Simple')->find_many(); // SQL executed: SELECT * FROM `tests_simple`
57
- Model::factory('SimpleUser')->find_many(); // SQL executed: SELECT * FROM `tests_simple_user`
58
-
59
- .. note::
60
-
61
- It is possible to define the table name by setting ``$_table`` in your
62
- individual model classes. As documented in the :doc:`Models` section of
63
- the documentation.
64
-
65
-
66
- Further Configuration
67
- ~~~~~~~~~~~~~~~~~~~~~
68
-
69
- The only other configuration options provided by Paris itself are the
70
- ``$_table`` and ``$_id_column`` static properties on model classes. To
71
- configure the database connection, you should use Idiorm’s configuration
72
- system via the ``ORM::configure`` method.
73
-
74
- If you are using multiple connections, the optional `$_connection_key` static property may also be used to provide a default string key indicating which database connection in `ORM` should be used.
75
-
76
- **See `Idiorm's documentation`_ for full details.**
77
-
78
- Query logging
79
- ~~~~~~~~~~~~~
80
-
81
- Idiorm can log all queries it executes. To enable query logging, set the
82
- ``logging`` option to ``true`` (it is ``false`` by default).
83
-
84
- .. code-block:: php
85
-
86
- <?php
87
- ORM::configure('logging', true);
88
-
89
- When query logging is enabled, you can use two static methods to access
90
- the log. ``ORM::get_last_query()`` returns the most recent query
91
- executed. ``ORM::get_query_log()`` returns an array of all queries
92
- executed.
93
-
94
- .. _Idiorm's documentation: http://github.com/j4mie/idiorm/
95
- .. _Idiorm: http://github.com/j4mie/idiorm/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/connections.rst DELETED
@@ -1,40 +0,0 @@
1
- Multiple Connections
2
- ====================
3
-
4
- Paris now works with multiple database conections (and necessarily relies on an updated version of Idiorm that also supports multiple connections). Database connections are identified by a string name, and default to ``OrmWrapper::DEFAULT_CONNECTION`` (which is really ``ORM::DEFAULT_CONNECTION``).
5
-
6
- See `Idiorm’s documentation`_ for information about configuring multiple connections.
7
-
8
- The connection to use can be specified in two separate ways. To indicate a default connection key for a subclass of ``Model``, create a public static property in your model class called ``$_connection_name``.
9
-
10
- .. code-block:: php
11
-
12
- <?php
13
- // A named connection, where 'alternate' is an arbitray key name
14
- ORM::configure('sqlite:./example2.db', null, 'alternate');
15
-
16
- class SomeClass extends Model
17
- {
18
- public static $_connection_name = 'alternate';
19
- }
20
-
21
- The connection to use can also be specified as an optional additional parameter to ``OrmWrapper::for_table()``, or to ``Model::factory()``. This will override the default setting (if any) found in the ``$_connection_name`` static property.
22
-
23
- .. code-block:: php
24
-
25
- <?php
26
- $person = Model::factory('Author', 'alternate')->find_one(1); // Uses connection named 'alternate'
27
-
28
- The connection can be changed after a model is populated, should that be necessary:
29
-
30
- .. code-block:: php
31
-
32
- <?php
33
- $person = Model::factory('Author')->find_one(1); // Uses default connection
34
- $person->orm = Model::factory('Author', 'alternate'); // Switches to connection named 'alternate'
35
- $person->name = 'Foo';
36
- $person->save(); // *Should* now save through the updated connection
37
-
38
- Queries across multiple connections are not supported. However, as the Paris methods ``has_one``, ``has_many`` and ``belongs_to`` don't require joins, these *should* work as expected, even when the objects on opposite sides of the relation belong to diffrent connections. The ``has_many_through`` relationship requires joins, and so will not reliably work across different connections.
39
-
40
- .. _Idiorm’s documentation: http://github.com/j4mie/idiorm/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/filters.rst DELETED
@@ -1,76 +0,0 @@
1
- Filters
2
- =======
3
-
4
- It is often desirable to create reusable queries that can be used to
5
- extract particular subsets of data without repeating large sections of
6
- code. Paris allows this by providing a method called ``filter`` which
7
- can be chained in queries alongside the existing Idiorm query API. The
8
- filter method takes the name of a **public static** method on the
9
- current Model subclass as an argument. The supplied method will be
10
- called at the point in the chain where ``filter`` is called, and will be
11
- passed the ``ORM`` object as the first parameter. It should return the
12
- ORM object after calling one or more query methods on it. The method
13
- chain can then be continued if necessary.
14
-
15
- It is easiest to illustrate this with an example. Imagine an application
16
- in which users can be assigned a role, which controls their access to
17
- certain pieces of functionality. In this situation, you may often wish
18
- to retrieve a list of users with the role ‘admin’. To do this, add a
19
- static method called (for example) ``admins`` to your Model class:
20
-
21
- .. code-block:: php
22
-
23
- <?php
24
- class User extends Model {
25
- public static function admins($orm) {
26
- return $orm->where('role', 'admin');
27
- }
28
- }
29
-
30
- You can then use this filter in your queries:
31
-
32
- .. code-block:: php
33
-
34
- <?php
35
- $admin_users = Model::factory('User')->filter('admins')->find_many();
36
-
37
- You can also chain it with other methods as normal:
38
-
39
- .. code-block:: php
40
-
41
- <?php
42
- $young_admins = Model::factory('User')
43
- ->filter('admins')
44
- ->where_lt('age', 18)
45
- ->find_many();
46
-
47
- Filters with arguments
48
- ~~~~~~~~~~~~~~~~~~~~~~
49
-
50
- You can also pass arguments to custom filters. Any additional arguments
51
- passed to the ``filter`` method (after the name of the filter to apply)
52
- will be passed through to your custom filter as additional arguments
53
- (after the ORM instance).
54
-
55
- For example, let’s say you wish to generalise your role filter (see
56
- above) to allow you to retrieve users with any role. You can pass the
57
- role name to the filter as an argument:
58
-
59
- .. code-block:: php
60
-
61
- <?php
62
- class User extends Model {
63
- public static function has_role($orm, $role) {
64
- return $orm->where('role', $role);
65
- }
66
- }
67
-
68
- $admin_users = Model::factory('User')->filter('has_role', 'admin')->find_many();
69
- $guest_users = Model::factory('User')->filter('has_role', 'guest')->find_many();
70
-
71
- These examples may seem simple (``filter('has_role', 'admin')`` could
72
- just as easily be achieved using ``where('role', 'admin')``), but
73
- remember that filters can contain arbitrarily complex code - adding
74
- ``raw_where`` clauses or even complete ``raw_query`` calls to perform
75
- joins, etc. Filters provide a powerful mechanism to hide complexity in
76
- your model’s query API.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/index.php DELETED
File without changes
vendor/j4mie/paris/docs/index.rst DELETED
@@ -1,34 +0,0 @@
1
- .. Paris documentation master file, created by
2
- sphinx-quickstart on Wed Nov 28 15:47:04 2012.
3
- You can adapt this file completely to your liking, but it should at least
4
- contain the root `toctree` directive.
5
-
6
- Welcome to Paris's documentation!
7
- =================================
8
-
9
- Contents:
10
-
11
- .. toctree::
12
- :maxdepth: 2
13
-
14
- philosophy
15
- installation
16
- configuration
17
- models
18
- associations
19
- querying
20
- filters
21
- transactions
22
- validation
23
- migrations
24
- connections
25
-
26
-
27
-
28
- Indices and tables
29
- ==================
30
-
31
- * :ref:`genindex`
32
- * :ref:`modindex`
33
- * :ref:`search`
34
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/installation.rst DELETED
@@ -1,19 +0,0 @@
1
- Installation
2
- ============
3
-
4
- Packagist
5
- ~~~~~~~~~
6
-
7
- This library is available through Packagist with the vendor and package
8
- identifier of ``j4mie/paris``
9
-
10
- Please see the `Packagist documentation`_ for further information.
11
-
12
- Download
13
- ~~~~~~~~
14
-
15
- You can clone the git repository, download idiorm.php or a release tag
16
- and then drop the idiorm.php file in the vendors/3rd party/libs
17
- directory of your project.
18
-
19
- .. _Packagist documentation: http://packagist.org/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/make.bat DELETED
@@ -1,190 +0,0 @@
1
- @ECHO OFF
2
-
3
- REM Command file for Sphinx documentation
4
-
5
- if "%SPHINXBUILD%" == "" (
6
- set SPHINXBUILD=sphinx-build
7
- )
8
- set BUILDDIR=_build
9
- set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% .
10
- set I18NSPHINXOPTS=%SPHINXOPTS% .
11
- if NOT "%PAPER%" == "" (
12
- set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
13
- set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
14
- )
15
-
16
- if "%1" == "" goto help
17
-
18
- if "%1" == "help" (
19
- :help
20
- echo.Please use `make ^<target^>` where ^<target^> is one of
21
- echo. html to make standalone HTML files
22
- echo. dirhtml to make HTML files named index.html in directories
23
- echo. singlehtml to make a single large HTML file
24
- echo. pickle to make pickle files
25
- echo. json to make JSON files
26
- echo. htmlhelp to make HTML files and a HTML help project
27
- echo. qthelp to make HTML files and a qthelp project
28
- echo. devhelp to make HTML files and a Devhelp project
29
- echo. epub to make an epub
30
- echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter
31
- echo. text to make text files
32
- echo. man to make manual pages
33
- echo. texinfo to make Texinfo files
34
- echo. gettext to make PO message catalogs
35
- echo. changes to make an overview over all changed/added/deprecated items
36
- echo. linkcheck to check all external links for integrity
37
- echo. doctest to run all doctests embedded in the documentation if enabled
38
- goto end
39
- )
40
-
41
- if "%1" == "clean" (
42
- for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
43
- del /q /s %BUILDDIR%\*
44
- goto end
45
- )
46
-
47
- if "%1" == "html" (
48
- %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
49
- if errorlevel 1 exit /b 1
50
- echo.
51
- echo.Build finished. The HTML pages are in %BUILDDIR%/html.
52
- goto end
53
- )
54
-
55
- if "%1" == "dirhtml" (
56
- %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
57
- if errorlevel 1 exit /b 1
58
- echo.
59
- echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
60
- goto end
61
- )
62
-
63
- if "%1" == "singlehtml" (
64
- %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
65
- if errorlevel 1 exit /b 1
66
- echo.
67
- echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
68
- goto end
69
- )
70
-
71
- if "%1" == "pickle" (
72
- %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
73
- if errorlevel 1 exit /b 1
74
- echo.
75
- echo.Build finished; now you can process the pickle files.
76
- goto end
77
- )
78
-
79
- if "%1" == "json" (
80
- %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
81
- if errorlevel 1 exit /b 1
82
- echo.
83
- echo.Build finished; now you can process the JSON files.
84
- goto end
85
- )
86
-
87
- if "%1" == "htmlhelp" (
88
- %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
89
- if errorlevel 1 exit /b 1
90
- echo.
91
- echo.Build finished; now you can run HTML Help Workshop with the ^
92
- .hhp project file in %BUILDDIR%/htmlhelp.
93
- goto end
94
- )
95
-
96
- if "%1" == "qthelp" (
97
- %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
98
- if errorlevel 1 exit /b 1
99
- echo.
100
- echo.Build finished; now you can run "qcollectiongenerator" with the ^
101
- .qhcp project file in %BUILDDIR%/qthelp, like this:
102
- echo.^> qcollectiongenerator %BUILDDIR%\qthelp\Paris.qhcp
103
- echo.To view the help file:
104
- echo.^> assistant -collectionFile %BUILDDIR%\qthelp\Paris.ghc
105
- goto end
106
- )
107
-
108
- if "%1" == "devhelp" (
109
- %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
110
- if errorlevel 1 exit /b 1
111
- echo.
112
- echo.Build finished.
113
- goto end
114
- )
115
-
116
- if "%1" == "epub" (
117
- %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
118
- if errorlevel 1 exit /b 1
119
- echo.
120
- echo.Build finished. The epub file is in %BUILDDIR%/epub.
121
- goto end
122
- )
123
-
124
- if "%1" == "latex" (
125
- %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
126
- if errorlevel 1 exit /b 1
127
- echo.
128
- echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
129
- goto end
130
- )
131
-
132
- if "%1" == "text" (
133
- %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
134
- if errorlevel 1 exit /b 1
135
- echo.
136
- echo.Build finished. The text files are in %BUILDDIR%/text.
137
- goto end
138
- )
139
-
140
- if "%1" == "man" (
141
- %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
142
- if errorlevel 1 exit /b 1
143
- echo.
144
- echo.Build finished. The manual pages are in %BUILDDIR%/man.
145
- goto end
146
- )
147
-
148
- if "%1" == "texinfo" (
149
- %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
150
- if errorlevel 1 exit /b 1
151
- echo.
152
- echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
153
- goto end
154
- )
155
-
156
- if "%1" == "gettext" (
157
- %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
158
- if errorlevel 1 exit /b 1
159
- echo.
160
- echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
161
- goto end
162
- )
163
-
164
- if "%1" == "changes" (
165
- %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
166
- if errorlevel 1 exit /b 1
167
- echo.
168
- echo.The overview file is in %BUILDDIR%/changes.
169
- goto end
170
- )
171
-
172
- if "%1" == "linkcheck" (
173
- %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
174
- if errorlevel 1 exit /b 1
175
- echo.
176
- echo.Link check complete; look for any errors in the above output ^
177
- or in %BUILDDIR%/linkcheck/output.txt.
178
- goto end
179
- )
180
-
181
- if "%1" == "doctest" (
182
- %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
183
- if errorlevel 1 exit /b 1
184
- echo.
185
- echo.Testing of doctests in the sources finished, look at the ^
186
- results in %BUILDDIR%/doctest/output.txt.
187
- goto end
188
- )
189
-
190
- :end
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/migrations.rst DELETED
@@ -1,24 +0,0 @@
1
- Migrations
2
- ==========
3
-
4
- Paris does not have native support for migrations, but some work has been
5
- done to integrate `PHPMig`_. If you want to have migrations in your project
6
- then this is recommended route as Paris will never have migrations directly
7
- implemented in the core. Please refer to the Paris and Idiorm Philosophy for
8
- reasons why.
9
-
10
- To integrate Paris with PHPMig you will need to follow their `installation
11
- instructions`_ and then configure it to use the Paris PDO instance:
12
-
13
- .. code-block:: php
14
-
15
- <?php
16
- $container['db'] = $container->share(function(){
17
- return ORM::get_db();
18
- });
19
- $container['phpmig.adapter'] = $container->share(function() use ($container) {
20
- return new Adapter\PDO\Sql($container['db'], 'migrations');
21
- });
22
-
23
- .. _PHPMig: https://github.com/davedevelopment/phpmig
24
- .. _installation instructions: https://github.com/davedevelopment/phpmig#getting-started
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/models.rst DELETED
@@ -1,87 +0,0 @@
1
- Models
2
- ======
3
-
4
- Model Classes
5
- ~~~~~~~~~~~~~
6
-
7
- You should create a model class for each entity in your application. For
8
- example, if you are building an application that requires users, you
9
- should create a ``User`` class. Your model classes should extend the
10
- base ``Model`` class:
11
-
12
- .. code-block:: php
13
-
14
- <?php
15
- class User extends Model {
16
- }
17
-
18
- Paris takes care of creating instances of your model classes, and
19
- populating them with *data* from the database. You can then add
20
- *behaviour* to this class in the form of public methods which implement
21
- your application logic. This combination of data and behaviour is the
22
- essence of the `Active Record pattern`_.
23
-
24
- Database Tables
25
- ~~~~~~~~~~~~~~~
26
-
27
- Your ``User`` class should have a corresponding ``user`` table in your
28
- database to store its data.
29
-
30
- By default, Paris assumes your class names are in *CapWords* style, and
31
- your table names are in *lowercase\_with\_underscores* style. It will
32
- convert between the two automatically. For example, if your class is
33
- called ``CarTyre``, Paris will look for a table named ``car_tyre``.
34
-
35
- If you are using namespaces then they will be converted to a table name
36
- in a similar way. For example ``\Models\CarTyre`` would be converted to
37
- ``models_car_tyre``. Note here that backslashes are replaced with underscores
38
- in addition to the *CapWords* replacement discussed in the previous paragraph.
39
-
40
- To disregard namespace information when calculating the table name, set a
41
- **public static** property named ``$_table_use_short_name`` on your class.
42
- This would result in ``\Models\CarTyre`` being converted to ``car_tyre``.
43
-
44
- .. code-block:: php
45
-
46
- <?php
47
- class User extends Model {
48
- public static $_table_use_short_name = true;
49
- }
50
-
51
- To override the default naming behaviour and directly specify a table name,
52
- add a **public static** property to your class called ``$_table``:
53
-
54
- .. code-block:: php
55
-
56
- <?php
57
- class User extends Model {
58
- public static $_table = 'my_user_table';
59
- }
60
-
61
- Auto Prefixing
62
- ^^^^^^^^^^^^^^
63
-
64
- To save having type out model class name prefixes whenever code utilises ``Model::for_table()``
65
- it is possible to specify a prefix that will be prepended onto the class name.
66
-
67
- See the :doc:`Configuration` documentation for more details.
68
-
69
- ID Column
70
- ~~~~~~~~~
71
-
72
- Paris requires that your database tables have a unique primary key
73
- column. By default, Paris will use a column called ``id``. To override
74
- this default behaviour, add a **public static** property to your class
75
- called ``$_id_column``:
76
-
77
- .. code-block:: php
78
-
79
- <?php
80
- class User extends Model {
81
- public static $_id_column = 'my_id_column';
82
- }
83
-
84
- **Note** - Paris has its *own* default ID column name mechanism, and
85
- does not respect column names specified in Idiorm’s configuration.
86
-
87
- .. _Active Record pattern: http://martinfowler.com/eaaCatalog/activeRecord.html
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/philosophy.rst DELETED
@@ -1,6 +0,0 @@
1
- Philosophy
2
- ==========
3
-
4
- Paris is built with the same *less is more* philosophy as `Idiorm`_.
5
-
6
- .. _Idiorm: http://github.com/j4mie/idiorm/
 
 
 
 
 
 
vendor/j4mie/paris/docs/querying.rst DELETED
@@ -1,197 +0,0 @@
1
- Querying
2
- ========
3
-
4
- Querying allows you to select data from your database and populate
5
- instances of your model classes. Queries start with a call to a static
6
- *factory method* on the base ``Model`` class that takes a single
7
- argument: the name of the model class you wish to use for your query.
8
- This factory method is then used as the start of a *method chain* which
9
- gives you full access to `Idiorm`_\ ’s fluent query API. **See Idiorm’s
10
- documentation for details of this API.**
11
-
12
- For example:
13
-
14
- .. code-block:: php
15
-
16
- <?php
17
- $users = Model::factory('User')
18
- ->where('name', 'Fred')
19
- ->where_gte('age', 20)
20
- ->find_many();
21
-
22
- You can also use the same shortcut provided by Idiorm when looking up a
23
- record by its primary key ID:
24
-
25
- .. code-block:: php
26
-
27
- <?php
28
- $user = Model::factory('User')->find_one($id);
29
-
30
- If you are using PHP 5.3+ you can also do the following:
31
-
32
- .. code-block:: php
33
-
34
- <?php
35
- $users = User::where('name', 'Fred')
36
- ->where_gte('age', 20)
37
- ->find_many();
38
-
39
- This does the same as the example above but is shorter and more readable.
40
-
41
-
42
- The only differences between using Idiorm and using Paris for querying
43
- are as follows:
44
-
45
- 1. You do not need to call the ``for_table`` method to specify the
46
- database table to use. Paris will supply this automatically based on
47
- the class name (or the ``$_table`` static property, if present).
48
-
49
- 2. The ``find_one`` and ``find_many`` methods will return instances of
50
- *your model subclass*, instead of the base ``ORM`` class. Like
51
- Idiorm, ``find_one`` will return a single instance or ``false`` if no
52
- rows matched your query, while ``find_many`` will return an array of
53
- instances, which may be empty if no rows matched.
54
-
55
- 3. Custom filtering, see next section.
56
-
57
- You may also retrieve a count of the number of rows returned by your
58
- query. This method behaves exactly like Idiorm’s ``count`` method:
59
-
60
- .. code-block:: php
61
-
62
- <?php
63
- $count = Model::factory('User')->where_lt('age', 20)->count();
64
-
65
- A note on PSR-1 and camelCase
66
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
67
-
68
- All the methods detailed in the documentation can also be called in a PSR-1 way:
69
- underscores (_) become camelCase. Here follows an example of one query chain
70
- being converted to a PSR-1 compliant style.
71
-
72
- .. code-block:: php
73
-
74
- <?php
75
- // documented and default style
76
- $count = Model::factory('User')->where_lt('age', 20)->find_one();
77
-
78
- // PSR-1 compliant style
79
- $count = Model::factory('User')->whereLt('age', 20)->findOne();
80
-
81
- As you can see any method can be changed from the documented underscore (_) format
82
- to that of a camelCase method name.
83
-
84
- .. note::
85
-
86
- In the background the PSR-1 compliant style uses the `__call()` and
87
- `__callStatic()` magic methods to map the camelCase method name you supply
88
- to the original underscore method name. It then uses `call_user_func_array()`
89
- to apply the arguments to the method. If this minimal overhead is too great
90
- then you can simply revert to using the underscore methods to avoid it. In
91
- general this will not be a bottle neck in any application however and should
92
- be considered a micro-optimisation.
93
-
94
- As `__callStatic()` was added in PHP 5.3.0 you will need at least that version
95
- of PHP to use this feature in any meaningful way.
96
-
97
- Getting data from objects, updating and inserting data
98
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
99
-
100
- The model instances returned by your queries now behave exactly as if
101
- they were instances of Idiorm’s raw ``ORM`` class.
102
-
103
- You can access data:
104
-
105
- .. code-block:: php
106
-
107
- <?php
108
- $user = Model::factory('User')->find_one($id);
109
- echo $user->name;
110
-
111
- Update data and save the instance:
112
-
113
- .. code-block:: php
114
-
115
- <?php
116
- $user = Model::factory('User')->find_one($id);
117
- $user->name = 'Paris';
118
- $user->save();
119
-
120
- To create a new (empty) instance, use the ``create`` method:
121
-
122
- .. code-block:: php
123
-
124
- <?php
125
- $user = Model::factory('User')->create();
126
- $user->name = 'Paris';
127
- $user->save();
128
-
129
- To check whether a property has been changed since the object was
130
- created (or last saved), call the ``is_dirty`` method:
131
-
132
- .. code-block:: php
133
-
134
- <?php
135
- $name_has_changed = $person->is_dirty('name'); // Returns true or false
136
-
137
- You can also use database expressions when setting values on your model:
138
-
139
- .. code-block:: php
140
-
141
- <?php
142
- $user = Model::factory('User')->find_one($id);
143
- $user->name = 'Paris';
144
- $user->set_expr('last_logged_in', 'NOW()');
145
- $user->save();
146
-
147
- Of course, because these objects are instances of your base model
148
- classes, you can also call methods that you have defined on them:
149
-
150
- .. code-block:: php
151
-
152
- <?php
153
- class User extends Model {
154
- public function full_name() {
155
- return $this->first_name . ' ' . $this->last_name;
156
- }
157
- }
158
-
159
- $user = Model::factory('User')->find_one($id);
160
- echo $user->full_name();
161
-
162
- To delete the database row associated with an instance of your model,
163
- call its ``delete`` method:
164
-
165
- .. code-block:: php
166
-
167
- <?php
168
- $user = Model::factory('User')->find_one($id);
169
- $user->delete();
170
-
171
- You can also get the all the data wrapped by a model subclass instance
172
- using the ``as_array`` method. This will return an associative array
173
- mapping column names (keys) to their values.
174
-
175
- The ``as_array`` method takes column names as optional arguments. If one
176
- or more of these arguments is supplied, only matching column names will
177
- be returned.
178
-
179
- .. code-block:: php
180
-
181
- <?php
182
- class Person extends Model {
183
- }
184
-
185
- $person = Model::factory('Person')->create();
186
-
187
- $person->first_name = 'Fred';
188
- $person->surname = 'Bloggs';
189
- $person->age = 50;
190
-
191
- // Returns array('first_name' => 'Fred', 'surname' => 'Bloggs', 'age' => 50)
192
- $data = $person->as_array();
193
-
194
- // Returns array('first_name' => 'Fred', 'age' => 50)
195
- $data = $person->as_array('first_name', 'age');
196
-
197
- .. _Idiorm: http://github.com/j4mie/idiorm/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/transactions.rst DELETED
@@ -1,21 +0,0 @@
1
- Transactions
2
- ============
3
-
4
- Paris (or Idiorm) doesn’t supply any extra methods to deal with
5
- transactions, but it’s very easy to use PDO’s built-in methods:
6
-
7
- .. code-block:: php
8
-
9
- <?php
10
- // Start a transaction
11
- ORM::get_db()->beginTransaction();
12
-
13
- // Commit a transaction
14
- ORM::get_db()->commit();
15
-
16
- // Roll back a transaction
17
- ORM::get_db()->rollBack();
18
-
19
- For more details, see `the PDO documentation on Transactions`_.
20
-
21
- .. _the PDO documentation on Transactions: http://www.php.net/manual/en/pdo.transactions.php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/j4mie/paris/docs/validation.rst DELETED
@@ -1,27 +0,0 @@
1
- A word on validation
2
- ====================
3
-
4
- It’s generally considered a good idea to centralise your data validation
5
- in a single place, and a good place to do this is inside your model
6
- classes. This is preferable to handling validation alongside form
7
- handling code, for example. Placing validation code inside models means
8
- that if you extend your application in the future to update your model
9
- via an alternative route (say a REST API rather than a form) you can
10
- re-use the same validation code.
11
-
12
- Despite this, Paris doesn’t provide any built-in support for validation.
13
- This is because validation is potentially quite complex, and often very
14
- application-specific. Paris is deliberately quite ignorant about your
15
- actual data - it simply executes queries, and gives you the
16
- responsibility of making sure the data inside your models is valid and
17
- correct. Adding a full validation framework to Paris would probably
18
- require more code than Paris itself!
19
-
20
- However, there are several simple ways that you could add validation to
21
- your models without any help from Paris. You could override the
22
- ``save()`` method, check the data is valid, and return ``false`` on
23
- failure, or call ``parent::save()`` on success. You could create your
24
- own subclass of the ``Model`` base class and add your own generic
25
- validation methods. Or you could write your own external validation
26
- framework which you pass model instances to for checking. Choose
27
- whichever approach is most suitable for your own requirements.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/mtdowling/cron-expression/CHANGELOG.md DELETED
@@ -1,36 +0,0 @@
1
- # Change Log
2
-
3
- ## [1.2.0] - 2017-01-22
4
- ### Added
5
- - Added IDE, CodeSniffer, and StyleCI.IO support
6
-
7
- ### Changed
8
- - Switched to PSR-4 Autoloading
9
-
10
- ### Fixed
11
- - 0 step expressions are handled better
12
- - Fixed `DayOfMonth` validation to be more strict
13
- - Typos
14
-
15
- ## [1.1.0] - 2016-01-26
16
- ### Added
17
- - Support for non-hourly offset timezones
18
- - Checks for valid expressions
19
-
20
- ### Changed
21
- - Max Iterations no longer hardcoded for `getRunDate()`
22
- - Supports DateTimeImmutable for newer PHP verions
23
-
24
- ### Fixed
25
- - Fixed looping bug for PHP 7 when determining the last specified weekday of a month
26
-
27
- ## [1.0.3] - 2013-11-23
28
- ### Added
29
- - Now supports expressions with any number of extra spaces, tabs, or newlines
30
-
31
- ### Changed
32
- - Using static instead of self in `CronExpression::factory`
33
-
34
- ### Fixed
35
- - Fixes issue [#28](https://github.com/mtdowling/cron-expression/issues/28) where PHP increments of ranges were failing due to PHP casting hyphens to 0
36
- - Only set default timezone if the given $currentTime is not a DateTime instance ([#34](https://github.com/mtdowling/cron-expression/issues/34))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/mtdowling/cron-expression/LICENSE DELETED
@@ -1,19 +0,0 @@
1
- Copyright (c) 2011 Michael Dowling <mtdowling@gmail.com> and contributors
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining a copy
4
- of this software and associated documentation files (the "Software"), to deal
5
- in the Software without restriction, including without limitation the rights
6
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
- copies of the Software, and to permit persons to whom the Software is
8
- furnished to do so, subject to the following conditions:
9
-
10
- The above copyright notice and this permission notice shall be included in
11
- all copies or substantial portions of the Software.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
- THE SOFTWARE.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/mtdowling/cron-expression/README.md DELETED
@@ -1,71 +0,0 @@
1
- PHP Cron Expression Parser
2
- ==========================
3
-
4
- [![Latest Stable Version](https://poser.pugx.org/mtdowling/cron-expression/v/stable.png)](https://packagist.org/packages/mtdowling/cron-expression) [![Total Downloads](https://poser.pugx.org/mtdowling/cron-expression/downloads.png)](https://packagist.org/packages/mtdowling/cron-expression) [![Build Status](https://secure.travis-ci.org/mtdowling/cron-expression.png)](http://travis-ci.org/mtdowling/cron-expression)
5
-
6
- The PHP cron expression parser can parse a CRON expression, determine if it is
7
- due to run, calculate the next run date of the expression, and calculate the previous
8
- run date of the expression. You can calculate dates far into the future or past by
9
- skipping n number of matching dates.
10
-
11
- The parser can handle increments of ranges (e.g. */12, 2-59/3), intervals (e.g. 0-9),
12
- lists (e.g. 1,2,3), W to find the nearest weekday for a given day of the month, L to
13
- find the last day of the month, L to find the last given weekday of a month, and hash
14
- (#) to find the nth weekday of a given month.
15
-
16
- Installing
17
- ==========
18
-
19
- Add the dependency to your project:
20
-
21
- ```bash
22
- composer require mtdowling/cron-expression
23
- ```
24
-
25
- Usage
26
- =====
27
- ```php
28
- <?php
29
-
30
- require_once '/vendor/autoload.php';
31
-
32
- // Works with predefined scheduling definitions
33
- $cron = Cron\CronExpression::factory('@daily');
34
- $cron->isDue();
35
- echo $cron->getNextRunDate()->format('Y-m-d H:i:s');
36
- echo $cron->getPreviousRunDate()->format('Y-m-d H:i:s');
37
-
38
- // Works with complex expressions
39
- $cron = Cron\CronExpression::factory('3-59/15 2,6-12 */15 1 2-5');
40
- echo $cron->getNextRunDate()->format('Y-m-d H:i:s');
41
-
42
- // Calculate a run date two iterations into the future
43
- $cron = Cron\CronExpression::factory('@daily');
44
- echo $cron->getNextRunDate(null, 2)->format('Y-m-d H:i:s');
45
-
46
- // Calculate a run date relative to a specific time
47
- $cron = Cron\CronExpression::factory('@monthly');
48
- echo $cron->getNextRunDate('2010-01-12 00:00:00')->format('Y-m-d H:i:s');
49
- ```
50
-
51
- CRON Expressions
52
- ================
53
-
54
- A CRON expression is a string representing the schedule for a particular command to execute. The parts of a CRON schedule are as follows:
55
-
56
- * * * * * *
57
- - - - - - -
58
- | | | | | |
59
- | | | | | + year [optional]
60
- | | | | +----- day of week (0 - 7) (Sunday=0 or 7)
61
- | | | +---------- month (1 - 12)
62
- | | +--------------- day of month (1 - 31)
63
- | +-------------------- hour (0 - 23)
64
- +------------------------- min (0 - 59)
65
-
66
- Requirements
67
- ============
68
-
69
- - PHP 5.3+
70
- - PHPUnit is required to run the unit tests
71
- - Composer is required to run the unit tests
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/nesbot/carbon/LICENSE DELETED
@@ -1,19 +0,0 @@
1
- Copyright (C) Brian Nesbitt
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining a copy
4
- of this software and associated documentation files (the "Software"), to deal
5
- in the Software without restriction, including without limitation the rights
6
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
- copies of the Software, and to permit persons to whom the Software is furnished
8
- to do so, subject to the following conditions:
9
-
10
- The above copyright notice and this permission notice shall be included in all
11
- copies or substantial portions of the Software.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
- THE SOFTWARE.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/nesbot/carbon/readme.md DELETED
@@ -1,92 +0,0 @@
1
- # Carbon
2
-
3
- [![Latest Stable Version](https://poser.pugx.org/nesbot/carbon/v/stable.png)](https://packagist.org/packages/nesbot/carbon)
4
- [![Total Downloads](https://poser.pugx.org/nesbot/carbon/downloads.png)](https://packagist.org/packages/nesbot/carbon)
5
- [![Build Status](https://travis-ci.org/briannesbitt/Carbon.svg?branch=master)](https://travis-ci.org/briannesbitt/Carbon)
6
- [![StyleCI](https://styleci.io/repos/5724990/shield?style=flat)](https://styleci.io/repos/5724990)
7
- [![codecov.io](https://codecov.io/github/briannesbitt/Carbon/coverage.svg?branch=master)](https://codecov.io/github/briannesbitt/Carbon?branch=master)
8
- [![PHP-Eye](https://php-eye.com/badge/nesbot/carbon/tested.svg?style=flat)](https://php-eye.com/package/nesbot/carbon)
9
-
10
- A simple PHP API extension for DateTime. [http://carbon.nesbot.com](http://carbon.nesbot.com)
11
-
12
- ```php
13
- use Carbon\Carbon;
14
-
15
- printf("Right now is %s", Carbon::now()->toDateTimeString());
16
- printf("Right now in Vancouver is %s", Carbon::now('America/Vancouver')); //implicit __toString()
17
- $tomorrow = Carbon::now()->addDay();
18
- $lastWeek = Carbon::now()->subWeek();
19
- $nextSummerOlympics = Carbon::createFromDate(2012)->addYears(4);
20
-
21
- $officialDate = Carbon::now()->toRfc2822String();
22
-
23
- $howOldAmI = Carbon::createFromDate(1975, 5, 21)->age;
24
-
25
- $noonTodayLondonTime = Carbon::createFromTime(12, 0, 0, 'Europe/London');
26
-
27
- $worldWillEnd = Carbon::createFromDate(2012, 12, 21, 'GMT');
28
-
29
- // Don't really want to die so mock now
30
- Carbon::setTestNow(Carbon::createFromDate(2000, 1, 1));
31
-
32
- // comparisons are always done in UTC
33
- if (Carbon::now()->gte($worldWillEnd)) {
34
- die();
35
- }
36
-
37
- // Phew! Return to normal behaviour
38
- Carbon::setTestNow();
39
-
40
- if (Carbon::now()->isWeekend()) {
41
- echo 'Party!';
42
- }
43
- echo Carbon::now()->subMinutes(2)->diffForHumans(); // '2 minutes ago'
44
-
45
- // ... but also does 'from now', 'after' and 'before'
46
- // rolling up to seconds, minutes, hours, days, months, years
47
-
48
- $daysSinceEpoch = Carbon::createFromTimestamp(0)->diffInDays();
49
- ```
50
-
51
- ## Installation
52
-
53
- ### With Composer
54
-
55
- ```
56
- $ composer require nesbot/carbon
57
- ```
58
-
59
- ```json
60
- {
61
- "require": {
62
- "nesbot/carbon": "~1.21"
63
- }
64
- }
65
- ```
66
-
67
- ```php
68
- <?php
69
- require 'vendor/autoload.php';
70
-
71
- use Carbon\Carbon;
72
-
73
- printf("Now: %s", Carbon::now());
74
- ```
75
-
76
- <a name="install-nocomposer"/>
77
- ### Without Composer
78
-
79
- Why are you not using [composer](http://getcomposer.org/)? Download [Carbon.php](https://github.com/briannesbitt/Carbon/blob/master/src/Carbon/Carbon.php) from the repo and save the file into your project path somewhere.
80
-
81
- ```php
82
- <?php
83
- require 'path/to/Carbon.php';
84
-
85
- use Carbon\Carbon;
86
-
87
- printf("Now: %s", Carbon::now());
88
- ```
89
-
90
- ## Docs
91
-
92
- [http://carbon.nesbot.com/docs](http://carbon.nesbot.com/docs)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/sabberworm/php-css-parser/CHANGELOG.md DELETED
@@ -1,205 +0,0 @@
1
- # Revision History
2
-
3
- ## 8.0
4
-
5
- ### 8.0.0 (2016-06-30)
6
-
7
- * Store source CSS line numbers in tokens and parsing exceptions.
8
- * *No deprecations*
9
-
10
- #### Backwards-incompatible changes
11
-
12
- * Unrecoverable parser errors throw an exception of type `Sabberworm\CSS\Parsing\SourceException` instead of `\Exception`.
13
-
14
- ### 8.1.0 (2016-07-19)
15
-
16
- * Comments are no longer silently ignored but stored with the object with which they appear (no render support, though). Thanks to @FMCorz.
17
- * The IE hacks using `\0` and `\9` can now be parsed (and rendered) in lenient mode. Thanks (again) to @FMCorz.
18
- * Media queries with or without spaces before the query are parsed. Still no *real* parsing support, though. Sorry…
19
- * PHPUnit is now listed as a dev-dependency in composer.json.
20
- * *No backwards-incompatible changes*
21
- * *No deprecations*
22
-
23
- ## 7.0
24
-
25
- ### 7.0.0 (2015-08-24)
26
-
27
- * Compatibility with PHP 7. Well timed, eh?
28
- * *No deprecations*
29
-
30
- #### Backwards-incompatible changes
31
-
32
- * The `Sabberworm\CSS\Value\String` class has been renamed to `Sabberworm\CSS\Value\CSSString`.
33
-
34
- ### 7.0.1 (2015-12-25)
35
-
36
- * No more suppressed `E_NOTICE`
37
- * *No backwards-incompatible changes*
38
- * *No deprecations*
39
-
40
- ### 7.0.2 (2016-02-11)
41
-
42
- * 150 time performance boost thanks to @[ossinkine](https://github.com/ossinkine)
43
- * *No backwards-incompatible changes*
44
- * *No deprecations*
45
-
46
- ### 7.0.3 (2016-04-27)
47
-
48
- * Fixed parsing empty CSS when multibyte is off
49
- * *No backwards-incompatible changes*
50
- * *No deprecations*
51
-
52
- ## 6.0
53
-
54
- ### 6.0.0 (2014-07-03)
55
-
56
- * Format output using Sabberworm\CSS\OutputFormat
57
- * *No backwards-incompatible changes*
58
-
59
- #### Deprecations
60
-
61
- * The parse() method replaces __toString with an optional argument (instance of the OutputFormat class)
62
-
63
- ### 6.0.1 (2015-08-24)
64
-
65
- * Remove some declarations in interfaces incompatible with PHP 5.3 (< 5.3.9)
66
- * *No deprecations*
67
-
68
- ## 5.0
69
-
70
- ### 5.0.0 (2013-03-20)
71
-
72
- * Correctly parse all known CSS 3 units (including Hz and kHz).
73
- * Output RGB colors in short (#aaa or #ababab) notation
74
- * Be case-insensitive when parsing identifiers.
75
- * *No deprecations*
76
-
77
- #### Backwards-incompatible changes
78
-
79
- * `Sabberworm\CSS\Value\Color`’s `__toString` method overrides `CSSList`’s to maybe return something other than `type(value, …)` (see above).
80
-
81
- ### 5.0.1 (2013-03-20)
82
-
83
- * Internal cleanup
84
- * *No backwards-incompatible changes*
85
- * *No deprecations*
86
-
87
- ### 5.0.2 (2013-03-21)
88
-
89
- * CHANGELOG.md file added to distribution
90
- * *No backwards-incompatible changes*
91
- * *No deprecations*
92
-
93
- ### 5.0.3 (2013-03-21)
94
-
95
- * More size units recognized
96
- * *No backwards-incompatible changes*
97
- * *No deprecations*
98
-
99
- ### 5.0.4 (2013-03-21)
100
-
101
- * Don’t output floats with locale-aware separator chars
102
- * *No backwards-incompatible changes*
103
- * *No deprecations*
104
-
105
- ### 5.0.5 (2013-04-17)
106
-
107
- * Initial support for lenient parsing (setting this parser option will catch some exceptions internally and recover the parser’s state as neatly as possible).
108
- * *No backwards-incompatible changes*
109
- * *No deprecations*
110
-
111
- ### 5.0.6 (2013-05-31)
112
-
113
- * Fix broken unit test
114
- * *No backwards-incompatible changes*
115
- * *No deprecations*
116
-
117
- ### 5.0.7 (2013-08-04)
118
-
119
- * Fix broken decimal point output optimization
120
- * *No backwards-incompatible changes*
121
- * *No deprecations*
122
-
123
- ### 5.0.8 (2013-08-15)
124
-
125
- * Make default settings’ multibyte parsing option dependent on whether or not the mbstring extension is actually installed.
126
- * *No backwards-incompatible changes*
127
- * *No deprecations*
128
-
129
- ### 5.1.0 (2013-10-24)
130
-
131
- * Performance enhancements by Michael M Slusarz
132
- * More rescue entry points for lenient parsing (unexpected tokens between declaration blocks and unclosed comments)
133
- * *No backwards-incompatible changes*
134
- * *No deprecations*
135
-
136
- ### 5.1.1 (2013-10-28)
137
-
138
- * Updated CHANGELOG.md to reflect changes since 5.0.4
139
- * *No backwards-incompatible changes*
140
- * *No deprecations*
141
-
142
- ### 5.1.2 (2013-10-30)
143
-
144
- * Remove the use of consumeUntil in comment parsing. This makes it possible to parse comments such as `/** Perfectly valid **/`
145
- * Add fr relative size unit
146
- * Fix some issues with HHVM
147
- * *No backwards-incompatible changes*
148
- * *No deprecations*
149
-
150
- ### 5.2.0 (2014-06-30)
151
-
152
- * Support removing a selector from a declaration block using `$oBlock->removeSelector($mSelector)`
153
- * Introduce a specialized exception (Sabberworm\CSS\Parsing\OuputException) for exceptions during output rendering
154
-
155
- * *No deprecations*
156
-
157
- #### Backwards-incompatible changes
158
-
159
- * Outputting a declaration block that has no selectors throws an OuputException instead of outputting an invalid ` {…}` into the CSS document.
160
-
161
- ## 4.0
162
-
163
- ### 4.0.0 (2013-03-19)
164
-
165
- * Support for more @-rules
166
- * Generic interface `Sabberworm\CSS\Property\AtRule`, implemented by all @-rule classes
167
- * *No deprecations*
168
-
169
- #### Backwards-incompatible changes
170
-
171
- * `Sabberworm\CSS\RuleSet\AtRule` renamed to `Sabberworm\CSS\RuleSet\AtRuleSet`
172
- * `Sabberworm\CSS\CSSList\MediaQuery` renamed to `Sabberworm\CSS\RuleSet\CSSList\AtRuleBlockList` with differing semantics and API (which also works for other block-list-based @-rules like `@supports`).
173
-
174
- ## 3.0
175
-
176
- ### 3.0.0 (2013-03-06)
177
-
178
- * Support for lenient parsing (on by default)
179
- * *No deprecations*
180
-
181
- #### Backwards-incompatible changes
182
-
183
- * All properties (like whether or not to use `mb_`-functions, which default charset to use and – new – whether or not to be forgiving when parsing) are now encapsulated in an instance of `Sabberworm\CSS\Settings` which can be passed as the second argument to `Sabberworm\CSS\Parser->__construct()`.
184
- * Specifying a charset as the second argument to `Sabberworm\CSS\Parser->__construct()` is no longer supported. Use `Sabberworm\CSS\Settings::create()->withDefaultCharset('some-charset')` instead.
185
- * Setting `Sabberworm\CSS\Parser->bUseMbFunctions` has no effect. Use `Sabberworm\CSS\Settings::create()->withMultibyteSupport(true/false)` instead.
186
- * `Sabberworm\CSS\Parser->parse()` may throw a `Sabberworm\CSS\Parsing\UnexpectedTokenException` when in strict parsing mode.
187
-
188
- ## 2.0
189
-
190
- ### 2.0.0 (2013-01-29)
191
-
192
- * Allow multiple rules of the same type per rule set
193
-
194
- #### Backwards-incompatible changes
195
-
196
- * `Sabberworm\CSS\RuleSet->getRules()` returns an index-based array instead of an associative array. Use `Sabberworm\CSS\RuleSet->getRulesAssoc()` (which eliminates duplicate rules and lets the later rule of the same name win).
197
- * `Sabberworm\CSS\RuleSet->removeRule()` works as it did before except when passed an instance of `Sabberworm\CSS\Rule\Rule`, in which case it would only remove the exact rule given instead of all the rules of the same type. To get the old behaviour, use `Sabberworm\CSS\RuleSet->removeRule($oRule->getRule()`;
198
-
199
- ## 1.0
200
-
201
- Initial release of a stable public API.
202
-
203
- ## 0.9
204
-
205
- Last version not to use PSR-0 project organization semantics.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/sabberworm/php-css-parser/README.md DELETED
@@ -1,640 +0,0 @@
1
- PHP CSS Parser
2
- --------------
3
-
4
- [![build status](https://api.travis-ci.org/sabberworm/PHP-CSS-Parser.svg)](https://travis-ci.org/sabberworm/PHP-CSS-Parser) [![HHVM Status](http://hhvm.h4cc.de/badge/sabberworm/php-css-parser.svg)](http://hhvm.h4cc.de/package/sabberworm/php-css-parser)
5
-
6
- A Parser for CSS Files written in PHP. Allows extraction of CSS files into a data structure, manipulation of said structure and output as (optimized) CSS.
7
-
8
- ## Usage
9
-
10
- ### Installation using composer
11
-
12
- Add php-css-parser to your composer.json
13
-
14
- ```json
15
- {
16
- "require": {
17
- "sabberworm/php-css-parser": "*"
18
- }
19
- }
20
- ```
21
-
22
- ### Extraction
23
-
24
- To use the CSS Parser, create a new instance. The constructor takes the following form:
25
-
26
- ```php
27
- new Sabberworm\CSS\Parser($sText);
28
- ```
29
-
30
- To read a file, for example, you’d do the following:
31
-
32
- ```php
33
- $oCssParser = new Sabberworm\CSS\Parser(file_get_contents('somefile.css'));
34
- $oCssDocument = $oCssParser->parse();
35
- ```
36
-
37
- The resulting CSS document structure can be manipulated prior to being output.
38
-
39
- ### Options
40
-
41
- #### Charset
42
-
43
- The charset option is used only if no @charset declaration is found in the CSS file. UTF-8 is the default, so you won’t have to create a settings object at all if you don’t intend to change that.
44
-
45
- ```php
46
- $oSettings = Sabberworm\CSS\Settings::create()->withDefaultCharset('windows-1252');
47
- new Sabberworm\CSS\Parser($sText, $oSettings);
48
- ```
49
-
50
- #### Strict parsing
51
-
52
- To have the parser choke on invalid rules, supply a thusly configured Sabberworm\CSS\Settings object:
53
-
54
- ```php
55
- $oCssParser = new Sabberworm\CSS\Parser(file_get_contents('somefile.css'), Sabberworm\CSS\Settings::create()->beStrict());
56
- ```
57
-
58
- #### Disable multibyte functions
59
-
60
- To achieve faster parsing, you can choose to have PHP-CSS-Parser use regular string functions instead of `mb_*` functions. This should work fine in most cases, even for UTF-8 files, as all the multibyte characters are in string literals. Still it’s not recommended to use this with input you have no control over as it’s not thoroughly covered by test cases.
61
-
62
- ```php
63
- $oSettings = Sabberworm\CSS\Settings::create()->withMultibyteSupport(false);
64
- new Sabberworm\CSS\Parser($sText, $oSettings);
65
- ```
66
-
67
- ### Manipulation
68
-
69
- The resulting data structure consists mainly of five basic types: `CSSList`, `RuleSet`, `Rule`, `Selector` and `Value`. There are two additional types used: `Import` and `Charset` which you won’t use often.
70
-
71
- #### CSSList
72
-
73
- `CSSList` represents a generic CSS container, most likely containing declaration blocks (rule sets with a selector) but it may also contain at-rules, charset declarations, etc. `CSSList` has the following concrete subtypes:
74
-
75
- * `Document` – representing the root of a CSS file.
76
- * `MediaQuery` – represents a subsection of a CSSList that only applies to a output device matching the contained media query.
77
-
78
- To access the items stored in a `CSSList` – like the document you got back when calling `$oCssParser->parse()` –, use `getContents()`, then iterate over that collection and use instanceof to check whether you’re dealing with another `CSSList`, a `RuleSet`, a `Import` or a `Charset`.
79
-
80
- To append a new item (selector, media query, etc.) to an existing `CSSList`, construct it using the constructor for this class and use the `append($oItem)` method.
81
-
82
- #### RuleSet
83
-
84
- `RuleSet` is a container for individual rules. The most common form of a rule set is one constrained by a selector. The following concrete subtypes exist:
85
-
86
- * `AtRuleSet` – for generic at-rules which do not match the ones specifically mentioned like @import, @charset or @media. A common example for this is @font-face.
87
- * `DeclarationBlock` – a RuleSet constrained by a `Selector`; contains an array of selector objects (comma-separated in the CSS) as well as the rules to be applied to the matching elements.
88
-
89
- Note: A `CSSList` can contain other `CSSList`s (and `Import`s as well as a `Charset`) while a `RuleSet` can only contain `Rule`s.
90
-
91
- If you want to manipulate a `RuleSet`, use the methods `addRule(Rule $oRule)`, `getRules()` and `removeRule($mRule)` (which accepts either a Rule instance or a rule name; optionally suffixed by a dash to remove all related rules).
92
-
93
- #### Rule
94
-
95
- `Rule`s just have a key (the rule) and a value. These values are all instances of a `Value`.
96
-
97
- #### Value
98
-
99
- `Value` is an abstract class that only defines the `render` method. The concrete subclasses for atomic value types are:
100
-
101
- * `Size` – consists of a numeric `size` value and a unit.
102
- * `Color` – colors can be input in the form #rrggbb, #rgb or schema(val1, val2, …) but are always stored as an array of ('s' => val1, 'c' => val2, 'h' => val3, …) and output in the second form.
103
- * `CSSString` – this is just a wrapper for quoted strings to distinguish them from keywords; always output with double quotes.
104
- * `URL` – URLs in CSS; always output in URL("") notation.
105
-
106
- There is another abstract subclass of `Value`, `ValueList`. A `ValueList` represents a lists of `Value`s, separated by some separation character (mostly `,`, whitespace, or `/`). There are two types of `ValueList`s:
107
-
108
- * `RuleValueList` – The default type, used to represent all multi-valued rules like `font: bold 12px/3 Helvetica, Verdana, sans-serif;` (where the value would be a whitespace-separated list of the primitive value `bold`, a slash-separated list and a comma-separated list).
109
- * `CSSFunction` – A special kind of value that also contains a function name and where the values are the function’s arguments. Also handles equals-sign-separated argument lists like `filter: alpha(opacity=90);`.
110
-
111
- #### Convenience methods
112
-
113
- There are a few convenience methods on Document to ease finding, manipulating and deleting rules:
114
-
115
- * `getAllDeclarationBlocks()` – does what it says; no matter how deeply nested your selectors are. Aliased as `getAllSelectors()`.
116
- * `getAllRuleSets()` – does what it says; no matter how deeply nested your rule sets are.
117
- * `getAllValues()` – finds all `Value` objects inside `Rule`s.
118
-
119
- ## To-Do
120
-
121
- * More convenience methods [like `selectorsWithElement($sId/Class/TagName)`, `attributesOfType($sType)`, `removeAttributesOfType($sType)`]
122
- * Real multibyte support. Currently only multibyte charsets whose first 255 code points take up only one byte and are identical with ASCII are supported (yes, UTF-8 fits this description).
123
- * Named color support (using `Color` instead of an anonymous string literal)
124
-
125
- ## Use cases
126
-
127
- ### Use `Parser` to prepend an id to all selectors
128
-
129
- ```php
130
- $sMyId = "#my_id";
131
- $oParser = new Sabberworm\CSS\Parser($sText);
132
- $oCss = $oParser->parse();
133
- foreach($oCss->getAllDeclarationBlocks() as $oBlock) {
134
- foreach($oBlock->getSelectors() as $oSelector) {
135
- //Loop over all selector parts (the comma-separated strings in a selector) and prepend the id
136
- $oSelector->setSelector($sMyId.' '.$oSelector->getSelector());
137
- }
138
- }
139
- ```
140
-
141
- ### Shrink all absolute sizes to half
142
-
143
- ```php
144
- $oParser = new Sabberworm\CSS\Parser($sText);
145
- $oCss = $oParser->parse();
146
- foreach($oCss->getAllValues() as $mValue) {
147
- if($mValue instanceof CSSSize && !$mValue->isRelative()) {
148
- $mValue->setSize($mValue->getSize()/2);
149
- }
150
- }
151
- ```
152
-
153
- ### Remove unwanted rules
154
-
155
- ```php
156
- $oParser = new Sabberworm\CSS\Parser($sText);
157
- $oCss = $oParser->parse();
158
- foreach($oCss->getAllRuleSets() as $oRuleSet) {
159
- $oRuleSet->removeRule('font-'); //Note that the added dash will make this remove all rules starting with font- (like font-size, font-weight, etc.) as well as a potential font-rule
160
- $oRuleSet->removeRule('cursor');
161
- }
162
- ```
163
-
164
- ### Output
165
-
166
- To output the entire CSS document into a variable, just use `->render()`:
167
-
168
- ```php
169
- $oCssParser = new Sabberworm\CSS\Parser(file_get_contents('somefile.css'));
170
- $oCssDocument = $oCssParser->parse();
171
- print $oCssDocument->render();
172
- ```
173
-
174
- If you want to format the output, pass an instance of type `Sabberworm\CSS\OutputFormat`:
175
-
176
- ```php
177
- $oFormat = Sabberworm\CSS\OutputFormat::create()->indentWithSpaces(4)->setSpaceBetweenRules("\n");
178
- print $oCssDocument->render($oFormat);
179
- ```
180
-
181
- Or use one of the predefined formats:
182
-
183
- ```php
184
- print $oCssDocument->render(Sabberworm\CSS\OutputFormat::createPretty());
185
- print $oCssDocument->render(Sabberworm\CSS\OutputFormat::createCompact());
186
- ```
187
-
188
- To see what you can do with output formatting, look at the tests in `tests/Sabberworm/CSS/OutputFormatTest.php`.
189
-
190
- ## Examples
191
-
192
- ### Example 1 (At-Rules)
193
-
194
- #### Input
195
-
196
- ```css
197
- @charset "utf-8";
198
-
199
- @font-face {
200
- font-family: "CrassRoots";
201
- src: url("../media/cr.ttf")
202
- }
203
-
204
- html, body {
205
- font-size: 1.6em
206
- }
207
-
208
- @keyframes mymove {
209
- from { top: 0px; }
210
- to { top: 200px; }
211
- }
212
-
213
- ```
214
-
215
- #### Structure (`var_dump()`)
216
-
217
- ```php
218
- class Sabberworm\CSS\CSSList\Document#4 (2) {
219
- protected $aContents =>
220
- array(4) {
221
- [0] =>
222
- class Sabberworm\CSS\Property\Charset#6 (2) {
223
- private $sCharset =>
224
- class Sabberworm\CSS\Value\CSSString#5 (2) {
225
- private $sString =>
226
- string(5) "utf-8"
227
- protected $iLineNo =>