PageRenderTime 44ms CodeModel.GetById 18ms RepoModel.GetById 0ms app.codeStats 0ms

/exchange/code/trunk/administrator/components/com_exchange/adapters/export/jxform.php

https://bitbucket.org/eddieajau/the-art-of-joomla-archive
PHP | 131 lines | 97 code | 17 blank | 17 comment | 1 complexity | 97e5ec58c94307fbeec1db6ab896db11 MD5 | raw file
  1. <?php
  2. /**
  3. * @version $Id: jxform.php 280 2010-09-18 02:14:15Z eddieajau $
  4. * @package NewLifeInIT
  5. * @subpackage com_exchange
  6. * @copyright Copyright 2005 - 2010 New Life in IT Pty Ltd. All rights reserved.
  7. * @license GNU General Public License version 2 or later.
  8. * @link http://www.theartofjoomla.com
  9. */
  10. // no direct access
  11. defined('_JEXEC') or die;
  12. /**
  13. * @package NewLifeInIT
  14. * @subpackage com_exchange
  15. */
  16. class ExportAdapterJXForm
  17. {
  18. /**
  19. * Creates a JTable class
  20. */
  21. function export(&$tables, &$table_fields, &$table_creates, &$options)
  22. {
  23. $buffer = '';
  24. foreach ($tables as $table) {
  25. $buffer .= $this->_createClass($table, $table_fields[$table]);
  26. }
  27. return $buffer;
  28. }
  29. function _createClass(&$table, &$table_fields)
  30. {
  31. $database = &JFactory::getDBO();
  32. $tableName = str_replace($database->getPrefix(), '', $table);
  33. $className = 'Table' . ucfirst(strtolower($tableName));
  34. $buffer = array();
  35. $buffer[] = '<?xml version="1.0" encoding="utf8"?>';
  36. $buffer[] = '<!-- $'.'Id$ -->';
  37. $buffer[] = '<form>';
  38. $buffer[] = ' <fields>';
  39. foreach ($table_fields as $name=>$cast)
  40. {
  41. switch ($name)
  42. {
  43. case 'id':
  44. $buffer[] = ' <field name="'.$name.'" type="text" id="'.$name.'" class="inputbox"';
  45. $buffer[] = ' label="'.ucfirst($name).'"';
  46. $buffer[] = ' size="10"';
  47. $buffer[] = ' default="0"';
  48. $buffer[] = ' required="true"';
  49. $buffer[] = ' readonly="true"';
  50. $buffer[] = ' />';
  51. break;
  52. case 'published':
  53. $buffer[] = ' <field name="'.$name.'" type="radio" id="'.$name.'" class="inputbox"';
  54. $buffer[] = ' label="'.ucfirst($name).'"';
  55. $buffer[] = ' default="1"';
  56. $buffer[] = ' required="true">';
  57. $buffer[] = ' <option value="0">No</option>';
  58. $buffer[] = ' <option value="1">Yes</option>';
  59. $buffer[] = ' </field>';
  60. break;
  61. case 'ordering':
  62. $buffer[] = ' <field name="'.$name.'" type="text" id="'.$name.'" class="inputbox validate required"';
  63. $buffer[] = ' label="'.ucfirst($name).'"';
  64. $buffer[] = ' size="6"';
  65. $buffer[] = ' default="0"';
  66. $buffer[] = ' />';
  67. break;
  68. case 'start_date':
  69. case 'end_date':
  70. $buffer[] = ' <field name="'.$name.'" type="text_calendar" id="'.$name.'" class="inputbox validate required"';
  71. $buffer[] = ' label="'.ucfirst($name).'"';
  72. $buffer[] = ' Format YYYY-MM-DD';
  73. $buffer[] = ' default="0000-00-00"';
  74. $buffer[] = ' format="%Y-%m-%d"';
  75. $buffer[] = ' />';
  76. break;
  77. case 'created_date':
  78. case 'modified_date':
  79. $buffer[] = ' <field name="'.$name.'" type="text" id="'.$name.'" class="inputbox readonly"';
  80. $buffer[] = ' label="'.ucfirst($name).'"';
  81. $buffer[] = ' size="16"';
  82. $buffer[] = ' default=""';
  83. $buffer[] = ' readonly="true"';
  84. $buffer[] = ' />';
  85. break;
  86. case 'description':
  87. case 'comments':
  88. case 'keywords':
  89. $buffer[] = ' <field name="'.$name.'" type="textarea" id="'.$name.'" class="inputbox"';
  90. $buffer[] = ' label="'.ucfirst($name).'"';
  91. $buffer[] = ' rows="5" cols="50"';
  92. $buffer[] = ' default=""';
  93. $buffer[] = ' />';
  94. break;
  95. case 'checked_out':
  96. case 'checked_out_time':
  97. case 'created_user_id':
  98. case 'modified_user_id':
  99. // ignore these
  100. break;
  101. default:
  102. $buffer[] = ' <field name="'.$name.'" type="text" id="'.$name.'" class="inputbox"';
  103. $buffer[] = ' label="'.ucfirst($name).'"';
  104. $buffer[] = ' size="30"';
  105. $buffer[] = ' default=""';
  106. $buffer[] = ' />';
  107. break;
  108. }
  109. }
  110. $buffer[] = ' </fields>';
  111. $buffer[] = '</form>';
  112. return implode("\n", $buffer);
  113. }
  114. }