function JLMS_editCertificate_Page(&$row, $from_gb = false) { global $Itemid, $JLMS_CONFIG; $JLMS_ACL =& JLMSFactory::getACL(); $lroles = $JLMS_ACL->GetSystemRoles(1); if (true) { ?> <script language="javascript" type="text/javascript"> <!--//--><![CDATA[//><!-- function jlms_changeCrtfDefaultValue(element, form_suffix) { var form = element.form; var is_dis = element.checked; form['userfile_'+form_suffix].disabled = is_dis; form['crtf_text_'+form_suffix].disabled = is_dis; var ca_Item = form['crtf_align_'+form_suffix]; if (ca_Item) { if (ca_Item.length) { var i; for (i = 0; i<ca_Item.length; i++) { ca_Item[i].disabled = is_dis; } } else { ca_Item.disabled = is_dis; } } var cs_Item = form['crtf_shadow_'+form_suffix]; if (cs_Item) { if (cs_Item.length) { var i; for (i = 0; i<cs_Item.length; i++) { cs_Item[i].disabled = is_dis; } } else { cs_Item.disabled = is_dis; } } form['text_x_'+form_suffix].disabled = is_dis; form['text_y_'+form_suffix].disabled = is_dis; form['text_size_'+form_suffix].disabled = is_dis; form['crtf_font_'+form_suffix].disabled = is_dis; var c1_Item = form['ctxt_mes_text_'+form_suffix+'[]']; if (c1_Item) { if (c1_Item.length) { var i; for (i = 0; i<c1_Item.length; i++) { c1_Item[i].disabled = is_dis; } } else { c1_Item.disabled = is_dis; } } var c2_Item = form['ctxt_mes_shadow_'+form_suffix+'[]']; if (c2_Item) { if (c2_Item.length) { var i; for (i = 0; i<c2_Item.length; i++) { c2_Item[i].disabled = is_dis; } } else { c2_Item.disabled = is_dis; } } var c3_Item = form['ctxt_mes_x_'+form_suffix+'[]']; if (c3_Item) { if (c3_Item.length) { var i; for (i = 0; i<c3_Item.length; i++) { c3_Item[i].disabled = is_dis; } } else { c3_Item.disabled = is_dis; } } var c4_Item = form['ctxt_mes_y_'+form_suffix+'[]']; if (c4_Item) { if (c4_Item.length) { var i; for (i = 0; i<c4_Item.length; i++) { c4_Item[i].disabled = is_dis; } } else { c4_Item.disabled = is_dis; } } var c5_Item = form['ctxt_mes_h_'+form_suffix+'[]']; if (c5_Item) { if (c5_Item.length) { var i; for (i = 0; i<c5_Item.length; i++) { c5_Item[i].disabled = is_dis; } } else { c5_Item.disabled = is_dis; } } var c6_Item = form['ctxt_mes_font_'+form_suffix+'[]']; if (c6_Item) { if (c6_Item.length) { var i; for (i = 0; i<c6_Item.length; i++) { c6_Item[i].disabled = is_dis; } } else { c6_Item.disabled = is_dis; } } form['new_txt_message_'+form_suffix].disabled = is_dis; form['new_txt_mes_shadow_'+form_suffix].disabled = is_dis; form['new_txt_message_X_'+form_suffix].disabled = is_dis; form['new_txt_message_Y_'+form_suffix].disabled = is_dis; form['new_txt_message_H_'+form_suffix].disabled = is_dis; form['new_txt_mes_font_'+form_suffix].disabled = is_dis; form['add_new_field_'+form_suffix].disabled = is_dis; } function jlms_ShowCertificatePreview() { var crtf_roles = new Array(); crtf_roles[0] = 0; <?php $i = 1; foreach ($lroles as $lr) { echo 'crtf_roles[' . $i . '] = ' . $lr->id . ';'; $i++; } ?> var crtf_id = <?php echo $row->id ? $row->id : 0; ?> ; if (crtf_id != '0' && crtf_id != 0 && crtf_id != '') { var crtf_role_num = 0; var iii = 0; if (crtf_roles.length) { $$('h2.tab').each(function(ael){if (ael.hasClass('selected')) {crtf_role_num = iii;}iii++;}); } var crtf_role = crtf_roles[crtf_role_num]; <?php if ($from_gb) { ?> window.open('<?php echo $JLMS_CONFIG->getCfg('live_site') . "/index.php?tmpl=component&option=com_joomla_lms&Itemid={$Itemid}&no_html=1&task=crt_preview&id={$row->course_id}"; ?> &crtf_id='+crtf_id+'&crtf_role='+crtf_role); <?php } else { ?> window.open('<?php echo $JLMS_CONFIG->getCfg('live_site') . "/index.php?tmpl=component&option=com_joomla_lms&Itemid={$Itemid}&no_html=1&task=quizzes&id={$row->course_id}&page=preview_crtf"; ?> &crtf_id='+crtf_id+'&crtf_role='+crtf_role); <?php } ?> } } function ReAnalize_tbl_Rows( start_index, tbl_id ) { start_index = 1; var tbl_elem = getObj(tbl_id); if (tbl_elem.rows[start_index]) { var count = start_index; var row_k = 2 - start_index%2;//0; for (var i=start_index; i<(tbl_elem.rows.length - 1); i++) { tbl_elem.rows[i].cells[0].innerHTML = count; if (i > 1) { tbl_elem.rows[i].cells[8].innerHTML = '<a class="jlms_img_link" href="javascript: void(0);" onclick="javascript:Up_tbl_row(this); return false;" title="<?php echo _JLMS_MOVEUP; ?> "><img src="<?php echo $JLMS_CONFIG->get('live_site'); ?> /components/com_joomla_lms/lms_images/toolbar/btn_uparrow.png" width="16" height="16" border="0" alt="<?php echo _JLMS_MOVEUP; ?> " \/><\/a>'; } else { tbl_elem.rows[i].cells[8].innerHTML = ' '; } if (i < (tbl_elem.rows.length - 2)) { tbl_elem.rows[i].cells[9].innerHTML = '<a class="jlms_img_link" href="javascript: void(0);" onclick="javascript:Down_tbl_row(this); return false;" title="<?php echo _JLMS_MOVEDOWN; ?> "><img src="<?php echo $JLMS_CONFIG->get('live_site'); ?> /components/com_joomla_lms/lms_images/toolbar/btn_downarrow.png" width="16" height="16" border="0" alt="<?php echo _JLMS_MOVEDOWN; ?> " \/><\/a>';; } else { tbl_elem.rows[i].cells[9].innerHTML = ' '; } if (row_k == 1) { tbl_elem.rows[i].className = '<?php echo JLMSCSS::_('sectiontableentry1'); ?> '; } else { tbl_elem.rows[i].className = '<?php echo JLMSCSS::_('sectiontableentry2'); ?> '; } count++; row_k = 3 - row_k; } } } function Delete_tbl_row(element) { var del_index = element.parentNode.parentNode.sectionRowIndex; var tbl_id = element.parentNode.parentNode.parentNode.parentNode.id; element.parentNode.parentNode.parentNode.deleteRow(del_index); ReAnalize_tbl_Rows(del_index - 1, tbl_id); } function Up_tbl_row(element) { if (element.parentNode.parentNode.sectionRowIndex > 1) { var sec_indx = element.parentNode.parentNode.sectionRowIndex; var table = element.parentNode.parentNode.parentNode; var tbl_id = table.parentNode.id; var cell1 = document.createElement("td"); cell1.align = 'center'; var row = table.insertRow(sec_indx - 1); row.appendChild(cell1); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); element.parentNode.parentNode.parentNode.deleteRow(element.parentNode.parentNode.sectionRowIndex); var ceLL8 = document.createElement("td"); var ceLL9 = document.createElement("td"); var ceLL10 = document.createElement("td"); ceLL8.innerHTML = '<a class="jlms_img_link" href="javascript: void(0);" onclick="javascript:Delete_tbl_row(this); return false;" title="Delete"><img src="<?php echo $JLMS_CONFIG->get('live_site'); ?> /components/com_joomla_lms/lms_images/toolbar/btn_cancel.png" width="16" height="16" border="0" alt="Delete" \/><\/a>'; ceLL9.innerHTML = '<a class="jlms_img_link" href="javascript: void(0);" onclick="javascript:Up_tbl_row(this); return false;" title="<?php echo _JLMS_MOVEUP; ?> "><img src="<?php echo $JLMS_CONFIG->get('live_site'); ?> /components/com_joomla_lms/lms_images/toolbar/btn_uparrow.png" width="16" height="16" border="0" alt="<?php echo _JLMS_MOVEUP; ?> " \/><\/a>'; ceLL10.innerHTML = ' '; row.appendChild(ceLL8); row.appendChild(ceLL9); row.appendChild(ceLL10); ReAnalize_tbl_Rows(sec_indx - 2, tbl_id); } } function Down_tbl_row(element) { if (element.parentNode.parentNode.sectionRowIndex < (element.parentNode.parentNode.parentNode.rows.length - 2)) { var sec_indx = element.parentNode.parentNode.sectionRowIndex; var table = element.parentNode.parentNode.parentNode; var tbl_id = table.parentNode.id; var cell1 = document.createElement("td"); cell1.align = 'center'; var row = table.insertRow(sec_indx + 2); row.appendChild(cell1); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); row.appendChild(element.parentNode.parentNode.cells[1]); element.parentNode.parentNode.parentNode.deleteRow(element.parentNode.parentNode.sectionRowIndex); var ceLL8 = document.createElement("td"); var ceLL9 = document.createElement("td"); var ceLL10 = document.createElement("td"); ceLL8.innerHTML = '<a class="jlms_img_link" href="javascript: void(0);" onclick="javascript:Delete_tbl_row(this); return false;" title="Delete"><img src="<?php echo $JLMS_CONFIG->get('live_site'); ?> /components/com_joomla_lms/lms_images/toolbar/btn_cancel.png" width="16" height="16" border="0" alt="Delete" \/><\/a>'; ceLL9.innerHTML = '<a class="jlms_img_link" href="javascript: void(0);" onclick="javascript:Up_tbl_row(this); return false;" title="<?php echo _JLMS_MOVEUP; ?> "><img src="<?php echo $JLMS_CONFIG->get('live_site'); ?> /components/com_joomla_lms/lms_images/toolbar/btn_uparrow.png" width="16" height="16" border="0" alt="<?php echo _JLMS_MOVEUP; ?> " \/><\/a>'; ceLL10.innerHTML = ' '; row.appendChild(ceLL8); row.appendChild(ceLL9); row.appendChild(ceLL10); ReAnalize_tbl_Rows(sec_indx, tbl_id); } } function analyze_change_check(e) { if (!e) { e = window.event;} var cat2=e.target?e.target:e.srcElement; analyze_change_check2(cat2); } function analyze_change_check2(check_element) { var td_element = check_element.parentNode; var is_check = check_element.checked; if (td_element.hasChildNodes()) { var children = td_element.childNodes; for (var i = 0; i < children.length; i++) { if (children[i].nodeName.toLowerCase() == 'input') { var inp_type = children[i].type; if (inp_type.toLowerCase() == 'hidden') { children[i].value = is_check ? '1' : '0' } } } } } /*function hasOptions(obj){if(obj!=null && obj.options!=null){return true;}return false;} */ function copyOptions(from,to){ var options = new Object(); //if(hasOptions(to)){for(var i=0;i<to.options.length;i++){options[to.options[i].value] = to.options[i].text;}} //if(!hasOptions(from)){return;} for(var i=0;i<from.options.length;i++){ var o = from.options[i]; /* if(options[o.value] == null || options[o.value] == "undefined" || options[o.value]!=o.text){ if(!hasOptions(to)){ var index = 0; }else{ var index=to.options.length; } to.options[index] = new Option( o.text, o.value, false, false); }*/ var index=to.options.length; to.options[index] = new Option( o.text, o.value, false, false); } to.selectedIndex = from.selectedIndex; } function Add_new_tbl_field(button_element, pref) { var a_tbl_ctxt_name = 'certificate_custom_msgs'+pref; var a_fld_txt_name = 'new_txt_message'+pref; var a_fld_txt_mes_select = 'new_txt_mes_font'+pref; var a_fld_txt_mes_shadow = 'new_txt_mes_shadow'+pref; var a_fld_txt_x = 'new_txt_message_X'+pref; var a_fld_txt_y = 'new_txt_message_Y'+pref; var a_fld_txt_h = 'new_txt_message_H'+pref; var f_hidden_id_name = 'ctxt_mes_id'+pref+'[]'; var f_txt_mes_name = 'ctxt_mes_text'+pref+'[]'; var f_font_select_name = 'ctxt_mes_font'+pref+'[]'; var f_shadow_check_name = 'ctxt_mes_shadow'+pref+'[]'; var f_shadow_hid_name = 'ctxt_mes_shadow_hid'+pref+'[]'; var f_txt_mes_x = 'ctxt_mes_x'+pref+'[]'; var f_txt_mes_y = 'ctxt_mes_y'+pref+'[]'; var f_txt_mes_h = 'ctxt_mes_h'+pref+'[]'; var form = button_element.form; if (trim(getObj(a_fld_txt_name).value) == '') { alert("Please enter text to the field.");return; } var is_check = getObj(a_fld_txt_mes_shadow).checked; var tbl_elem = getObj(a_tbl_ctxt_name); var row = tbl_elem.insertRow(tbl_elem.rows.length - 1); var ceLL1 = document.createElement("td"); var ceLL2 = document.createElement("td"); var ceLL3 = document.createElement("td"); var ceLL4 = document.createElement("td"); var ceLL5 = document.createElement("td"); var ceLL6 = document.createElement("td"); var ceLL7 = document.createElement("td"); var ceLL8 = document.createElement("td"); var ceLL9 = document.createElement("td"); var ceLL10 = document.createElement("td"); ceLL1.innerHTML = 0; ceLL1.align = 'center'; var input_hidden = document.createElement("input"); input_hidden.type = "hidden"; input_hidden.name = f_hidden_id_name; input_hidden.value = '0'; var input_txt_mes = document.createElement("input"); input_txt_mes.type = "text"; input_txt_mes.className = 'inputbox'; input_txt_mes.size = 24; input_txt_mes.name = f_txt_mes_name; input_txt_mes.value = getObj(a_fld_txt_name).value; getObj(a_fld_txt_name).value = ''; ceLL2.appendChild(input_hidden); ceLL2.appendChild(input_txt_mes); var input_hidden_s = document.createElement("input"); input_hidden_s.type = "hidden"; input_hidden_s.name = f_shadow_hid_name; input_hidden_s.value = is_check ? '1' : '0'; var input_check = document.createElement("input"); input_check.type = "checkbox"; input_check.name = f_shadow_check_name; input_check.value = '1'; input_check.checked = is_check; input_check.onchange=input_check.onclick = new Function('analyze_change_check2(this)'); ceLL3.appendChild(input_check); ceLL3.appendChild(input_hidden_s); ceLL3.align = 'center'; var input_txt_x = document.createElement("input"); input_txt_x.type = "text"; input_txt_x.className = 'inputbox'; input_txt_x.size = 3; input_txt_x.name = f_txt_mes_x; input_txt_x.value = getObj(a_fld_txt_x).value; ceLL4.appendChild(input_txt_x); var input_txt_y = document.createElement("input"); input_txt_y.type = "text"; input_txt_y.className = 'inputbox'; input_txt_y.size = 3; input_txt_y.name = f_txt_mes_y; input_txt_y.value = getObj(a_fld_txt_y).value; ceLL5.appendChild(input_txt_y); var input_txt_h = document.createElement("input"); input_txt_h.type = "text"; input_txt_h.className = 'inputbox'; input_txt_h.size = 3; input_txt_h.name = f_txt_mes_h; input_txt_h.value = getObj(a_fld_txt_h).value; ceLL6.appendChild(input_txt_h); var input_select = document.createElement("select"); input_select.name = f_font_select_name; input_select.className = 'inputbox'; copyOptions(form[a_fld_txt_mes_select],input_select); input_select.style.width = "180px"; ceLL7.appendChild(input_select); ceLL8.innerHTML = '<a class="jlms_img_link" href="javascript: void(0);" onclick="javascript:Delete_tbl_row(this); return false;" title="Delete"><img src="<?php echo $JLMS_CONFIG->get('live_site'); ?> /components/com_joomla_lms/lms_images/toolbar/btn_cancel.png" width="16" height="16" border="0" alt="Delete" \/><\/a>'; ceLL9.innerHTML = '<a class="jlms_img_link" href="javascript: void(0);" onclick="javascript:Up_tbl_row(this); return false;" title="<?php echo _JLMS_MOVEUP; ?> "><img src="<?php echo $JLMS_CONFIG->get('live_site'); ?> /components/com_joomla_lms/lms_images/toolbar/btn_uparrow.png" width="16" height="16" border="0" alt="<?php echo _JLMS_MOVEUP; ?> " \/><\/a>'; ceLL10.innerHTML = ''; row.appendChild(ceLL1); row.appendChild(ceLL2); row.appendChild(ceLL3); row.appendChild(ceLL4); row.appendChild(ceLL5); row.appendChild(ceLL6); row.appendChild(ceLL7); row.appendChild(ceLL8); row.appendChild(ceLL9); row.appendChild(ceLL10); ReAnalize_tbl_Rows(tbl_elem.rows.length - 2, a_tbl_ctxt_name); } //--><!]]> </script> <?php } ?> <table width="100%" cellpadding="0" cellspacing="0" border="0" class="jlms_table_no_borders"> <tr> <td valign="middle" style="vertical-align:middle"><br /><?php echo _JLMS_GB_CRT_NAME; ?> </td> <td> <br /><input size="40" class="inputbox" type="text" name="crtf_name" value="<?php echo str_replace('"', '"', $row->crtf_name); ?> " /> </td> </tr> <?php if ($from_gb) { ?> <tr> <td valign="middle" style="vertical-align:middle"><br /><?php echo _JLMS_GB_CRT_ENABLED; ?> </td> <td> <br /><?php echo mosHTML::yesnoRadioList('published', '', $row->published); ?> </td> </tr> <?php } /* search for font (ttf) files */ $fonts = array(); $path = $JLMS_CONFIG->getCfg('absolute_path') . '/media'; $filter = '.ttf'; $handle = opendir($path); while ($file = readdir($handle)) { if ($file != "." && $file != "..") { if (preg_match("/{$filter}/", $file)) { $fonts[] = trim($file); } } } $font_s = array(); foreach ($fonts as $font) { $rr = new stdClass(); $rr->text = $font; $rr->value = $font; $font_s[] = $rr; } /* end of fonts search */ //if (count($lroles) > 1) { //DEN: recently we have disabled multiple-roles certificates if (false) { $tabs = new JLMSTabs(0); echo '<tr><td colspan="2"><br />'; echo $tabs->startPane("JLMS"); echo $tabs->startTab('Default', "jlmsroletab_0"); echo '<table width="100%" cellpadding="0" cellspacing="0" border="0" class="jlms_table_no_borders">'; JLMS_Certificates::JLMS_editCertificate_OneRole($row, $font_s); echo '</table>'; echo $tabs->endTab(); foreach ($lroles as $lrole) { echo $tabs->startTab($lrole->lms_usertype, "jlmsroletab_" . $lrole->id); echo '<table width="100%" cellpadding="0" cellspacing="0" border="0" class="jlms_table_no_borders">'; $is_show = false; if (!empty($row->add_certificates)) { foreach ($row->add_certificates as $rac) { if ($rac->crtf_type == $lrole->id) { JLMS_Certificates::JLMS_editCertificate_OneRole($rac, $font_s, $lrole->id, false); $is_show = true; break; } } } if (!$is_show) { JLMS_Certificates::JLMS_editCertificate_OneRole($row, $font_s, $lrole->id, true); } echo '</table>'; echo $tabs->endTab(); } echo $tabs->endPane(); echo '</td></tr>'; } else { JLMS_Certificates::JLMS_editCertificate_OneRole($row, $font_s); } echo ' </table>'; }