{"id":1244,"date":"2019-10-18T17:31:05","date_gmt":"2019-10-18T10:31:05","guid":{"rendered":"https:\/\/www.bagi2info.com\/?p=1244"},"modified":"2022-09-11T14:12:35","modified_gmt":"2022-09-11T07:12:35","slug":"fabrik-sample","status":"publish","type":"post","link":"https:\/\/www.bagi2info.com\/en\/fabrik-joomla-component-cheet-sheet-sample-code\/","title":{"rendered":"Fabrik Joomla Component : Cheet Sheet Sample Code"},"content":{"rendered":"\r\n\r\nFabrik is one of the components in the Joomla CMS, the usefulness of the Fabrik component is a tool to easily create web applications. With Fabrik it is very easy to create forms and lists.\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.bagi2info.com\/en\/fabrik-joomla-component-cheet-sheet-sample-code\/#1_Update_Form_Data_Sample_Code\" >1. Update Form Data Sample Code<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.bagi2info.com\/en\/fabrik-joomla-component-cheet-sheet-sample-code\/#2_Dropdown_Element_Advanced_Populate_Data_Sample_Code\" >2. Dropdown Element Advanced Populate Data Sample Code<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.bagi2info.com\/en\/fabrik-joomla-component-cheet-sheet-sample-code\/#3_Dropdown_Element_Validation_PHP_Plugin_Sample_Code\" >3. Dropdown Element Validation PHP Plugin Sample Code<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.bagi2info.com\/en\/fabrik-joomla-component-cheet-sheet-sample-code\/#4_Element_Validation_PHP_Plugin_Sample_Code\" >4. Element Validation PHP Plugin Sample Code<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.bagi2info.com\/en\/fabrik-joomla-component-cheet-sheet-sample-code\/#5_Element_Javascript_Sample_Code\" >5. Element Javascript Sample Code<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.bagi2info.com\/en\/fabrik-joomla-component-cheet-sheet-sample-code\/#6_Element_Validation_PHP_Plugin_Sample_Code\" >6. Element Validation PHP Plugin Sample Code<\/a><\/li><\/ul><\/nav><\/div>\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"1_Update_Form_Data_Sample_Code\"><\/span>1. Update Form Data Sample Code<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n\r\n\r\n\r\n\r\nThe command below is to update the data in the column after submitting the form\r\n\r\n\r\n\r\n\r\n<pre class=\"wp-block-code\"><code class=\"language-php\" lang=\"php\">$formModel-&gt;data['mahasiswa___data'] = \"Testing\";  \r\n<\/code><\/pre>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"2_Dropdown_Element_Advanced_Populate_Data_Sample_Code\"><\/span>2. Dropdown Element Advanced Populate Data Sample Code<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n\r\n\r\n\r\n\r\nThis command displays a dropdown list by retrieving data from the database.\r\n\r\n\r\n\r\n\r\n<pre class=\"wp-block-code\"><code class=\"language-php line-numbers\" lang=\"php\">$db = JFactory::getDbo();\r\n\r\n$db-&gt;setQuery('SELECT id, nama FROM mahasiswa');\r\n\r\n$rows = $db-&gt;loadObjectList();\r\n\r\n$options[] = JHTML::_('select.option', 1000, 'Please select');\r\n\r\nforeach ($rows as $row) {\r\n    $options[] = JHTML::_('select.option', $row-&gt;id, $row-&gt;nama);\r\n}\r\n\r\nreturn $options;<\/code><\/pre>\r\n\r\n\r\n\r\n<div class=\"wp-block-spacer\" style=\"height: 91px;\" aria-hidden=\"true\">&nbsp;<\/div>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"3_Dropdown_Element_Validation_PHP_Plugin_Sample_Code\"><\/span>3. Dropdown Element Validation PHP Plugin Sample Code<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n\r\n\r\n\r\n\r\nThe command below is to check the initial dropdown value.\r\n\r\n\r\n\r\n\r\n<pre class=\"wp-block-code\"><code class=\"language-php line-numbers\" lang=\"php\">if ($data == 'Please select')\r\n  return false;\r\nelse\r\n  return true;<\/code><\/pre>\r\n\r\n\r\n\r\n<div class=\"wp-block-spacer\" style=\"height: 100px;\" aria-hidden=\"true\">&nbsp;<\/div>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"4_Element_Validation_PHP_Plugin_Sample_Code\"><\/span>4. Element Validation PHP Plugin Sample Code<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n\r\n\r\n\r\n\r\nBelow command to validate whether data as numeric\/number\r\n\r\n\r\n\r\n\r\n<pre class=\"wp-block-code\"><code class=\"language-php line-numbers\" lang=\"php\">\/\/ mengecek karakter angka\r\nif (is_numeric($data))\r\n  return true;\r\nelse \r\n  return false;<\/code><\/pre>\r\n\r\n\r\n\r\n<div class=\"wp-block-spacer\" style=\"height: 100px;\" aria-hidden=\"true\">&nbsp;<\/div>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"5_Element_Javascript_Sample_Code\"><\/span>5. Element Javascript Sample Code<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n\r\n\r\n\r\n<pre class=\"wp-block-code\"><code class=\"language-javascript line-numbers\" lang=\"javascript\">$form = \"form_\" + Object.values(Fabrik.blocks)[0].id;\r\n\r\nvar $jurusan = Fabrik.getBlock($form).formElements.get(\"mahasiswa___jurusan\");\r\nvar $keterangan = Fabrik.getBlock($form).formElements.get(\r\n  \"mahasiswa___keterangan\"\r\n);\r\nvar $biaya = Fabrik.getBlock($form)\r\n  .formElements.get(\"mahasiswa___biaya\")\r\n  .getValue();\r\n\r\nif ($jurusan == \"SI\") {\r\n  Fabrik.getBlock($form).formElements.get(\"mahasiswa___biaya\").set(100);\r\n  Fabrik.getBlock($form).formElements.get(\"mahasiswa___event\").setValue(\"\");\r\n\r\n  jQuery(\"#student___event &gt; div:nth-child(2)\").css(\"display\", \"none\");\r\n\r\n  $keterangan.show();\r\n} else {\r\n  Fabrik.getBlock($form).formElements.get(\"mahasiswa___biaya\").set(100);\r\n  Fabrik.getBlock($form).formElements.get(\"mahasiswa___event\").setValue(\"\");\r\n  jQuery(\"#student___event &gt; div:nth-child(2)\").css(\"display\", \"\");\r\n\r\n  $keterangan.hide();\r\n}\r\n\r\n\/*\r\n# sourceURL=filename.js\r\n*\/\r\n<\/code><\/pre>\r\n\r\n\r\n\r\n<div class=\"wp-block-spacer\" style=\"height: 100px;\" aria-hidden=\"true\">&nbsp;<\/div>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"6_Element_Validation_PHP_Plugin_Sample_Code\"><\/span>6. Element Validation PHP Plugin Sample Code<span class=\"ez-toc-section-end\"><\/span><\/h3>\r\n\r\n\r\n\r\n\r\nThe command below is to check the number of students majoring in Information Systems ( if ($data == &#8220;Information System&#8221;) { ) is equal to or greater than the number 50 (<strong>if ($row-&gt;total &gt;= 50)<\/strong> ) and will block process if true.\r\n\r\n\r\n\r\n\r\n<pre class=\"wp-block-code\"><code class=\"language-php line-numbers\" lang=\"php\">$db = JFactory::getDBO();\r\n$app = JFactory::getApplication('site');\r\n$user = JFactory::getUser();\r\n\r\nif ($data == \"Sistem Informasi\") {\r\n\r\n    $query = \"SELECT count(*) total FROM mahasiswa\";\r\n\r\n    \/\/JFactory::getApplication()-&gt;enqueueMessage(\"test\". $query, 'error');\r\n    $db-&gt;setQuery($query);\r\n    $row = $db-&gt;loadObject();\r\n\r\n    if ($row) {\r\n        \/\/ block if exced the limit\r\n        if ($row-&gt;total &gt;= 50)\r\n            return false;\r\n        else\r\n            return true;\r\n    } else\r\n        return true;\r\n} else if (($data == \"Teknik Informatika\")) {\r\n\r\n    $query = \"SELECT count(*) total FROM mahasiswa\";\r\n\r\n    \/\/JFactory::getApplication()-&gt;enqueueMessage(\"test\". $query, 'error');\r\n    $db-&gt;setQuery($query);\r\n    $row = $db-&gt;loadObject();\r\n\r\n    if ($row) {\r\n        \/\/ block if exced the limit\r\n        if ($row-&gt;total &gt;= 246) {\r\n\r\n            $event = JFactory::getApplication()-&gt;input-&gt;get(\"jurusan\");\r\n\r\n            if ($event[0] == 'Komputer') {\r\n\r\n                return true;\r\n            } else {\r\n\r\n                $query = \"SELECT id, email FROM mahasiswa WHERE email = '\" . $user-&gt;get('email') . \"'\";\r\n\r\n                $db-&gt;setQuery($query);\r\n                $row2 = $db-&gt;loadObject();\r\n                if ($row2) {\r\n                    return true;\r\n                } else\r\n                    return false;\r\n            }\r\n        } else\r\n            return true;\r\n    } else\r\n        return true;\r\n} else\r\n    return true;\r\n\r\n    <\/code><\/pre>\r\n\r\n\r\n\r\n<div class=\"wp-block-spacer\" style=\"height: 100px;\" aria-hidden=\"true\">&nbsp;<\/div>\r\n","protected":false},"excerpt":{"rendered":"<p>Fabrik is one of the components in the Joomla CMS, the usefulness of the Fabrik component is a tool to easily create web applications. With Fabrik it is very easy to create forms and&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":1256,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[11,71,82,62],"class_list":["post-1244","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-komputer","tag-database","tag-joomla","tag-mysql","tag-php"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/posts\/1244","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/comments?post=1244"}],"version-history":[{"count":0,"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/posts\/1244\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/media\/1256"}],"wp:attachment":[{"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/media?parent=1244"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/categories?post=1244"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bagi2info.com\/en\/wp-json\/wp\/v2\/tags?post=1244"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}