├── LICENSE ├── README.md └── csfmanager ├── clientarea ├── csfmanager.tpl ├── csfmanagerallow.tpl ├── csfmanagerallowconfirm.tpl ├── csfmanagerallowemail.tpl ├── csfmanageremailkeys.tpl ├── csfmanagererror.tpl ├── csfmanagerfirewall.tpl ├── csfmanagerproducts.tpl ├── csfmanagerunblock.tpl ├── csfmanagerwhitelisted.tpl ├── css │ └── jquery.tooltip.css └── javascript │ └── jquery.tooltip.pack.js ├── csfmanager.php ├── css └── style.css ├── hooks.php ├── images ├── delete.png ├── flags │ ├── ad.png │ ├── ae.png │ ├── af.png │ ├── ag.png │ ├── ai.png │ ├── al.png │ ├── am.png │ ├── an.png │ ├── ao.png │ ├── ar.png │ ├── as.png │ ├── at.png │ ├── au.png │ ├── aw.png │ ├── ax.png │ ├── az.png │ ├── ba.png │ ├── bb.png │ ├── bd.png │ ├── be.png │ ├── bf.png │ ├── bg.png │ ├── bh.png │ ├── bi.png │ ├── bj.png │ ├── bm.png │ ├── bn.png │ ├── bo.png │ ├── br.png │ ├── bs.png │ ├── bt.png │ ├── bv.png │ ├── bw.png │ ├── by.png │ ├── bz.png │ ├── ca.png │ ├── catalonia.png │ ├── cc.png │ ├── cd.png │ ├── cf.png │ ├── cg.png │ ├── ch.png │ ├── ci.png │ ├── ck.png │ ├── cl.png │ ├── cm.png │ ├── cn.png │ ├── co.png │ ├── cr.png │ ├── cs.png │ ├── cu.png │ ├── cv.png │ ├── cx.png │ ├── cy.png │ ├── cz.png │ ├── de.png │ ├── dj.png │ ├── dk.png │ ├── dm.png │ ├── do.png │ ├── dz.png │ ├── ec.png │ ├── ee.png │ ├── eg.png │ ├── eh.png │ ├── er.png │ ├── es.png │ ├── et.png │ ├── europeanunion.png │ ├── fam.png │ ├── fi.png │ ├── fj.png │ ├── fk.png │ ├── fm.png │ ├── fo.png │ ├── fr.png │ ├── ga.png │ ├── gb.png │ ├── gd.png │ ├── ge.png │ ├── gf.png │ ├── gh.png │ ├── gi.png │ ├── gl.png │ ├── gm.png │ ├── gn.png │ ├── gp.png │ ├── gq.png │ ├── gr.png │ ├── gs.png │ ├── gt.png │ ├── gu.png │ ├── gw.png │ ├── gy.png │ ├── hk.png │ ├── hm.png │ ├── hn.png │ ├── hr.png │ ├── ht.png │ ├── hu.png │ ├── id.png │ ├── ie.png │ ├── il.png │ ├── in.png │ ├── io.png │ ├── iq.png │ ├── ir.png │ ├── is.png │ ├── it.png │ ├── jm.png │ ├── jo.png │ ├── jp.png │ ├── ke.png │ ├── kg.png │ ├── kh.png │ ├── ki.png │ ├── km.png │ ├── kn.png │ ├── kp.png │ ├── kr.png │ ├── kw.png │ ├── ky.png │ ├── kz.png │ ├── la.png │ ├── lb.png │ ├── lc.png │ ├── li.png │ ├── lk.png │ ├── lr.png │ ├── ls.png │ ├── lt.png │ ├── lu.png │ ├── lv.png │ ├── ly.png │ ├── ma.png │ ├── mc.png │ ├── md.png │ ├── me.png │ ├── mg.png │ ├── mh.png │ ├── mk.png │ ├── ml.png │ ├── mm.png │ ├── mn.png │ ├── mo.png │ ├── mp.png │ ├── mq.png │ ├── mr.png │ ├── ms.png │ ├── mt.png │ ├── mu.png │ ├── mv.png │ ├── mw.png │ ├── mx.png │ ├── my.png │ ├── mz.png │ ├── na.png │ ├── nc.png │ ├── ne.png │ ├── nf.png │ ├── ng.png │ ├── ni.png │ ├── nl.png │ ├── no.png │ ├── np.png │ ├── nr.png │ ├── nu.png │ ├── nz.png │ ├── om.png │ ├── pa.png │ ├── pe.png │ ├── pf.png │ ├── pg.png │ ├── ph.png │ ├── pk.png │ ├── pl.png │ ├── pm.png │ ├── pn.png │ ├── pr.png │ ├── ps.png │ ├── pt.png │ ├── pw.png │ ├── py.png │ ├── qa.png │ ├── re.png │ ├── ro.png │ ├── rs.png │ ├── ru.png │ ├── rw.png │ ├── sa.png │ ├── sb.png │ ├── sc.png │ ├── scotland.png │ ├── sd.png │ ├── se.png │ ├── sg.png │ ├── sh.png │ ├── si.png │ ├── sj.png │ ├── sk.png │ ├── sl.png │ ├── sm.png │ ├── sn.png │ ├── so.png │ ├── sr.png │ ├── st.png │ ├── sv.png │ ├── sy.png │ ├── sz.png │ ├── tc.png │ ├── td.png │ ├── tf.png │ ├── tg.png │ ├── th.png │ ├── tj.png │ ├── tk.png │ ├── tl.png │ ├── tm.png │ ├── tn.png │ ├── to.png │ ├── tr.png │ ├── tt.png │ ├── tv.png │ ├── tw.png │ ├── tz.png │ ├── ua.png │ ├── ug.png │ ├── uk.png │ ├── um.png │ ├── us.png │ ├── uy.png │ ├── uz.png │ ├── va.png │ ├── vc.png │ ├── ve.png │ ├── vg.png │ ├── vi.png │ ├── vn.png │ ├── vu.png │ ├── wales.png │ ├── wf.png │ ├── ws.png │ ├── ye.png │ ├── yt.png │ ├── za.png │ ├── zm.png │ └── zw.png ├── loader.gif ├── minus.png ├── plus.png ├── success.png └── waiting-icon.png ├── includes ├── class_cpanel.php ├── class_firewall.php ├── functions.php └── ganon │ ├── gan_formatter.php │ ├── gan_node_html.php │ ├── gan_parser_html.php │ ├── gan_selector_html.php │ ├── gan_tokenizer.php │ └── ganon.php ├── lang ├── english.php └── hebrew.php ├── template ├── allowedlog_default.php ├── allowkeys_default.php ├── broadcast_apply.php ├── broadcast_default.php ├── broadcast_selectservers.php ├── broadcast_setconfig.php ├── firewall_default.php ├── firewall_manage.php ├── generatekey_default.php ├── message.php ├── overall_footer.php ├── overall_header.php └── settings_default.php └── views ├── allowedlog_default.php ├── allowkeys_default.php ├── broadcast_apply.php ├── broadcast_default.php ├── broadcast_selectservers.php ├── broadcast_send.php ├── broadcast_setconfig.php ├── firewall_default.php ├── firewall_manage.php ├── generatekey_default.php └── settings_default.php /README.md: -------------------------------------------------------------------------------- 1 | # WHMCS-CSF-Manager 2 | 3 | # Installation 4 | 5 | Upload the folder "csfmanager" (as is) to your WHMCS installtion. 6 | After uploaded, the full path to the module should be: “modules/addons/csfmanager“. 7 | 8 | Login to your WHMCS as admin user, and navigate to “Setup” -> “Addon modules“. 9 | 10 | Find the “Jetserver CSF Manager” module, and activate it. 11 | 12 | Now go back to “Jetserver CSF Manager”, click “Configure” and set the admin role groups that can access the module. 13 | Save your changes and your module is all set. 14 | 15 | You will be able to access it throught the “Addons” top menu. 16 | 17 | By default, CSF Manager will use all servers listed under “Setup” -> “Product / Services” -> “Servers“. 18 | 19 | If wanted, you can limit the servers from the “Settings” tab. 20 | 21 | # More Information 22 | 23 | https://docs.jetapps.com/category/whmcs-addons/csf-manager 24 | -------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanager.tpl: -------------------------------------------------------------------------------- 1 | {if $package} 2 |
3 | Managing Firewall for: {$package} ({$domain}) 4 |
5 | {/if} 6 | 7 | {if $errors} 8 |
9 | {foreach from=$errors item=error} 10 |

{$error}

11 | {/foreach} 12 |
13 | {/if} 14 | 15 | {if $successes} 16 |
17 | {foreach key=num item=success from=$successes} 18 |

{$success}

19 | {/foreach} 20 |
21 | {/if} 22 | 23 | 24 | 25 | {include file="$modulepath/clientarea/csfmanager$page.tpl" title="test"} 26 | -------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanagerallow.tpl: -------------------------------------------------------------------------------- 1 | {literal} 2 | 28 | {/literal} 29 | 30 |
31 | 32 |
33 |
34 |
35 | 36 | 37 |
38 |
39 |
40 |
41 | 42 | 43 |
44 |
45 |
46 | 47 |
48 | 49 | 50 |
51 | 52 |
53 | -------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanagerallowconfirm.tpl: -------------------------------------------------------------------------------- 1 | {if $errors} 2 |
3 | {foreach from=$errors item=error} 4 |

{$error}

5 | {/foreach} 6 |
7 | {/if} 8 | 9 | {if $successes} 10 |
11 | {foreach key=num item=success from=$successes} 12 |

{$success}

13 | {/foreach} 14 |
15 | {/if} 16 | -------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanagerallowemail.tpl: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 |
5 |
6 | 7 | 8 |
9 |
10 |
11 |
12 | 13 | 14 |
15 |
16 |
17 | 18 |
19 | 20 | 21 |
22 | 23 |
-------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanageremailkeys.tpl: -------------------------------------------------------------------------------- 1 | {include file="$template/includes/tablelist.tpl" tableName="Emails" filterColumn="3"} 2 | 3 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | {foreach item=allowkey from=$allowkeys} 24 | 25 | 26 | {if $allowkey.key_cancelled or $allowkey.key_clicks_remained lte 0 or $allowkey.key_expired} 27 | 28 | 29 | 30 | 31 | {else} 32 | 33 | 34 | 35 | 39 | {/if} 40 | 41 | {/foreach} 42 | 43 |
{$ADDONLANG.recipient}{$ADDONLANG.expiration}{$ADDONLANG.remained_clicks}{$ADDONLANG.status}
{$allowkey.key_recipient}
{$allowkey.key_email}
--{if $allowkey.key_cancelled}{$ADDONLANG.cancelled}{elseif $allowkey.key_expired}{$ADDONLANG.expired}{elseif $allowkey.key_clicks_remained <= 0}{$ADDONLANG.fullyused}{/if}{$allowkey.key_expire}{$allowkey.key_clicks_remained}Active 36 | {$ADDONLANG.cancel} 37 | {$ADDONLANG.resend} 38 |
44 |
-------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanagererror.tpl: -------------------------------------------------------------------------------- 1 | {if $errors} 2 |
3 | {foreach from=$errors item=error} 4 |

{$error}

5 | {/foreach} 6 |
7 | {/if} 8 | 9 | {if $successes} 10 |
11 | {foreach key=num item=success from=$successes} 12 |

{$success}

13 | {/foreach} 14 |
15 | {/if} -------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanagerfirewall.tpl: -------------------------------------------------------------------------------- 1 | {if ! $errors} 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 32 | 33 | 34 | 35 | 44 | 45 | 46 |
{$ADDONLANG.firewalldetails} 
{$ADDONLANG.server}:{$server}
{$ADDONLANG.firewallstatus}:{if $status}{$status}{else}{$ADDONLANG.nostatus}{/if}
{$ADDONLANG.openedportsall}:{if $open_ports}{$open_ports}{else}{$ADDONLANG.noports}{/if}
{$ADDONLANG.blockedcountries}: 26 | {foreach from=$denied_countries item=country} 27 | {$country.name} 28 | {foreachelse} 29 | {$ADDONLANG.noblockedcountries} 30 | {/foreach} 31 |
{$ADDONLANG.openedportscountries}: 36 | {$ADDONLANG.ports}: {if $allowed_countries_ports}{$allowed_countries_ports}{else}{$ADDONLANG.noports}{/if}
37 | {$ADDONLANG.countries}: 38 | {foreach from=$allowed_countries item=country} 39 | {$country.name} 40 | {foreachelse} 41 | {$ADDONLANG.nocountries} 42 | {/foreach} 43 |
47 | {/if} 48 | -------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanagerproducts.tpl: -------------------------------------------------------------------------------- 1 | {include file="$template/includes/tablelist.tpl" tableName="ServicesList" filterColumn="3"} 2 | 3 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | {foreach item=service from=$services} 21 | 22 | 23 | 24 | 25 | {/foreach} 26 | 27 |
{$LANG.orderproduct}
{$service.group} - {$service.product}{if $service.domain}
{$service.domain}{/if}
28 |
-------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanagerunblock.tpl: -------------------------------------------------------------------------------- 1 | {include file="$template/includes/tablelist.tpl" tableName="Unblock" filterColumn="3"} 2 | 3 | 10 | 11 | {literal} 12 | 34 | {/literal} 35 | 36 | {if $blockedreasons_csf or $blockedreasons_logins or $blockedreasons_brutes} 37 |
38 |

{$ADDONLANG.youripblocked|sprintf:$cip}

39 |
40 | 41 |
42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | {if $blockedreasons_csf} 52 | {foreach key=num item=reason from=$blockedreasons_csf} 53 | 54 | 55 | 56 | 57 | 58 | {/foreach} 59 | {/if} 60 | {if $blockedreasons_logins or $blockedreasons_brutes} 61 | {foreach key=num item=reason from=$blockedreasons_logins} 62 | 63 | 64 | 65 | 66 | 67 | {/foreach} 68 | {foreach key=num item=reason from=$blockedreasons_brutes} 69 | 70 | 71 | 72 | 73 | 74 | {/foreach} 75 | {/if} 76 | 77 |
{$ADDONLANG.blockreason}{$ADDONLANG.blockdate}{$ADDONLANG.expirationdate}
{$reason.Notes}{$reason.Date}{$ADDONLANG.never}
{$reason.Notes}{$reason.Date}{$ADDONLANG.never}
{$reason.Notes}{$reason.Date}{$reason.Expiration}
78 |
79 | 80 |
81 |
82 | 83 | 84 |
85 |
86 | {else} 87 |
88 |

{$ADDONLANG.youripok|sprintf:$cip}

89 |
90 | {/if} 91 | 92 | {if $canrelease and $config.permission_aunblock} 93 |
94 |
95 |

{$ADDONLANG.clientsunblockgui}

96 |
97 | 98 | 99 | 100 | 101 |
102 |
103 |
104 | 105 | 106 |
107 |
108 |
109 | 110 |
111 | 112 | 113 |
114 |
115 | {/if} 116 | -------------------------------------------------------------------------------- /csfmanager/clientarea/csfmanagerwhitelisted.tpl: -------------------------------------------------------------------------------- 1 | {include file="$template/includes/tablelist.tpl" tableName="Whitelisted" filterColumn="3"} 2 | 3 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | {foreach item=allowedip from=$allowedips} 24 | 25 | 26 | 27 | 28 | 29 | 32 | 33 | {/foreach} 34 | 35 |
{$ADDONLANG.ip}{$ADDONLANG.time}{$ADDONLANG.expiration}{$ADDONLANG.reason}
{$allowedip.ip}{$allowedip.time}{$allowedip.expiration}{$allowedip.reason} 30 | {$ADDONLANG.remove} 31 |
36 |
-------------------------------------------------------------------------------- /csfmanager/clientarea/css/jquery.tooltip.css: -------------------------------------------------------------------------------- 1 | #tooltip { 2 | position: absolute; 3 | z-index: 3000; 4 | border-radius: 5px; 5 | border-width: 1px; 6 | border-style: solid; 7 | border-color: rgba(82, 168, 236, 0.8); 8 | box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) inset, 0 0 8px rgba(82, 168, 236, 0.6); 9 | outline: 0 none; 10 | background-color: #fff; 11 | padding: 5px; 12 | } 13 | 14 | #tooltip h3 { 15 | line-height: inherit; 16 | font-size: 14px; 17 | } 18 | 19 | #tooltip h3, #tooltip div { margin: 0; } 20 | 21 | #tooltip .body { 22 | font-size: 11px; 23 | } -------------------------------------------------------------------------------- /csfmanager/clientarea/javascript/jquery.tooltip.pack.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jQuery Tooltip plugin 1.3 3 | * 4 | * http://bassistance.de/jquery-plugins/jquery-plugin-tooltip/ 5 | * http://docs.jquery.com/Plugins/Tooltip 6 | * 7 | * Copyright (c) 2006 - 2008 Jörn Zaefferer 8 | * 9 | * $Id: jquery.tooltip.js 5741 2008-06-21 15:22:16Z joern.zaefferer $ 10 | * 11 | * Dual licensed under the MIT and GPL licenses: 12 | * http://www.opensource.org/licenses/mit-license.php 13 | * http://www.gnu.org/licenses/gpl.html 14 | */ 15 | eval(function(p,a,c,k,e,r){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}(';(8($){j e={},9,m,B,A=$.2u.2g&&/29\\s(5\\.5|6\\.)/.1M(1H.2t),M=12;$.k={w:12,1h:{Z:25,r:12,1d:19,X:"",G:15,E:15,16:"k"},2s:8(){$.k.w=!$.k.w}};$.N.1v({k:8(a){a=$.1v({},$.k.1h,a);1q(a);g 2.F(8(){$.1j(2,"k",a);2.11=e.3.n("1g");2.13=2.m;$(2).24("m");2.22=""}).21(1e).1U(q).1S(q)},H:A?8(){g 2.F(8(){j b=$(2).n(\'Y\');4(b.1J(/^o\\(["\']?(.*\\.1I)["\']?\\)$/i)){b=1F.$1;$(2).n({\'Y\':\'1D\',\'1B\':"2r:2q.2m.2l(2j=19, 2i=2h, 1p=\'"+b+"\')"}).F(8(){j a=$(2).n(\'1o\');4(a!=\'2f\'&&a!=\'1u\')$(2).n(\'1o\',\'1u\')})}})}:8(){g 2},1l:A?8(){g 2.F(8(){$(2).n({\'1B\':\'\',Y:\'\'})})}:8(){g 2},1x:8(){g 2.F(8(){$(2)[$(2).D()?"l":"q"]()})},o:8(){g 2.1k(\'28\')||2.1k(\'1p\')}});8 1q(a){4(e.3)g;e.3=$(\'<10>\').27(K.f).q();4($.N.L)e.3.L();e.m=$(\'10\',e.3);e.f=$(\'t.f\',e.3);e.o=$(\'t.o\',e.3)}8 7(a){g $.1j(a,"k")}8 1f(a){4(7(2).Z)B=26(l,7(2).Z);p l();M=!!7(2).M;$(K.f).23(\'W\',u);u(a)}8 1e(){4($.k.w||2==9||(!2.13&&!7(2).U))g;9=2;m=2.13;4(7(2).U){e.m.q();j a=7(2).U.1Z(2);4(a.1Y||a.1V){e.f.1c().T(a)}p{e.f.D(a)}e.f.l()}p 4(7(2).18){j b=m.1T(7(2).18);e.m.D(b.1R()).l();e.f.1c();1Q(j i=0,R;(R=b[i]);i++){4(i>0)e.f.T("<1P/>");e.f.T(R)}e.f.1x()}p{e.m.D(m).l();e.f.q()}4(7(2).1d&&$(2).o())e.o.D($(2).o().1O(\'1N://\',\'\')).l();p e.o.q();e.3.P(7(2).X);4(7(2).H)e.3.H();1f.1L(2,1K)}8 l(){B=S;4((!A||!$.N.L)&&7(9).r){4(e.3.I(":17"))e.3.Q().l().O(7(9).r,9.11);p e.3.I(\':1a\')?e.3.O(7(9).r,9.11):e.3.1G(7(9).r)}p{e.3.l()}u()}8 u(c){4($.k.w)g;4(c&&c.1W.1X=="1E"){g}4(!M&&e.3.I(":1a")){$(K.f).1b(\'W\',u)}4(9==S){$(K.f).1b(\'W\',u);g}e.3.V("z-14").V("z-1A");j b=e.3[0].1z;j a=e.3[0].1y;4(c){b=c.2o+7(9).E;a=c.2n+7(9).G;j d=\'1w\';4(7(9).2k){d=$(C).1r()-b;b=\'1w\'}e.3.n({E:b,14:d,G:a})}j v=z(),h=e.3[0];4(v.x+v.1sgetConfig('servers')); 24 | 25 | if(in_array($vars['serverdata']['id'], $allowed_servers)) 26 | { 27 | $menu = Menu::PrimarySidebar(); 28 | 29 | $overviewMenu = $menu->getChild('Service Details Actions'); 30 | 31 | $overviewMenu->addChild('Firewall', array( 32 | 'label' => 'Manage Firewall', 33 | 'uri' => 'index.php?m=csfmanager&id=' . $vars['serviceid'], 34 | )); 35 | } 36 | } 37 | }); 38 | 39 | ?> -------------------------------------------------------------------------------- /csfmanager/images/delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/delete.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ad.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ae.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ae.png -------------------------------------------------------------------------------- /csfmanager/images/flags/af.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/af.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ag.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ai.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ai.png -------------------------------------------------------------------------------- /csfmanager/images/flags/al.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/al.png -------------------------------------------------------------------------------- /csfmanager/images/flags/am.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/am.png -------------------------------------------------------------------------------- /csfmanager/images/flags/an.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/an.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ao.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ao.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ar.png -------------------------------------------------------------------------------- /csfmanager/images/flags/as.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/as.png -------------------------------------------------------------------------------- /csfmanager/images/flags/at.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/at.png -------------------------------------------------------------------------------- /csfmanager/images/flags/au.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/au.png -------------------------------------------------------------------------------- /csfmanager/images/flags/aw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/aw.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ax.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ax.png -------------------------------------------------------------------------------- /csfmanager/images/flags/az.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/az.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ba.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ba.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bb.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bd.png -------------------------------------------------------------------------------- /csfmanager/images/flags/be.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/be.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bf.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bg.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bh.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bi.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bj.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bo.png -------------------------------------------------------------------------------- /csfmanager/images/flags/br.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/br.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bs.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bt.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bv.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bw.png -------------------------------------------------------------------------------- /csfmanager/images/flags/by.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/by.png -------------------------------------------------------------------------------- /csfmanager/images/flags/bz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/bz.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ca.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ca.png -------------------------------------------------------------------------------- /csfmanager/images/flags/catalonia.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/catalonia.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cc.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cd.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cf.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cg.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ch.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ci.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ci.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ck.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ck.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cl.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/co.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/co.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cs.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cu.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cv.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cx.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cy.png -------------------------------------------------------------------------------- /csfmanager/images/flags/cz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/cz.png -------------------------------------------------------------------------------- /csfmanager/images/flags/de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/de.png -------------------------------------------------------------------------------- /csfmanager/images/flags/dj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/dj.png -------------------------------------------------------------------------------- /csfmanager/images/flags/dk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/dk.png -------------------------------------------------------------------------------- /csfmanager/images/flags/dm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/dm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/do.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/do.png -------------------------------------------------------------------------------- /csfmanager/images/flags/dz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/dz.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ec.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ec.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ee.png -------------------------------------------------------------------------------- /csfmanager/images/flags/eg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/eg.png -------------------------------------------------------------------------------- /csfmanager/images/flags/eh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/eh.png -------------------------------------------------------------------------------- /csfmanager/images/flags/er.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/er.png -------------------------------------------------------------------------------- /csfmanager/images/flags/es.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/es.png -------------------------------------------------------------------------------- /csfmanager/images/flags/et.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/et.png -------------------------------------------------------------------------------- /csfmanager/images/flags/europeanunion.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/europeanunion.png -------------------------------------------------------------------------------- /csfmanager/images/flags/fam.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/fam.png -------------------------------------------------------------------------------- /csfmanager/images/flags/fi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/fi.png -------------------------------------------------------------------------------- /csfmanager/images/flags/fj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/fj.png -------------------------------------------------------------------------------- /csfmanager/images/flags/fk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/fk.png -------------------------------------------------------------------------------- /csfmanager/images/flags/fm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/fm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/fo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/fo.png -------------------------------------------------------------------------------- /csfmanager/images/flags/fr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/fr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ga.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gb.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gd.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ge.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gf.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gh.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gi.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gl.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gp.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gq.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gs.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gt.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gu.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gw.png -------------------------------------------------------------------------------- /csfmanager/images/flags/gy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/gy.png -------------------------------------------------------------------------------- /csfmanager/images/flags/hk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/hk.png -------------------------------------------------------------------------------- /csfmanager/images/flags/hm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/hm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/hn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/hn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/hr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/hr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ht.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ht.png -------------------------------------------------------------------------------- /csfmanager/images/flags/hu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/hu.png -------------------------------------------------------------------------------- /csfmanager/images/flags/id.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/id.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ie.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ie.png -------------------------------------------------------------------------------- /csfmanager/images/flags/il.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/il.png -------------------------------------------------------------------------------- /csfmanager/images/flags/in.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/in.png -------------------------------------------------------------------------------- /csfmanager/images/flags/io.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/io.png -------------------------------------------------------------------------------- /csfmanager/images/flags/iq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/iq.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ir.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ir.png -------------------------------------------------------------------------------- /csfmanager/images/flags/is.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/is.png -------------------------------------------------------------------------------- /csfmanager/images/flags/it.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/it.png -------------------------------------------------------------------------------- /csfmanager/images/flags/jm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/jm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/jo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/jo.png -------------------------------------------------------------------------------- /csfmanager/images/flags/jp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/jp.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ke.png -------------------------------------------------------------------------------- /csfmanager/images/flags/kg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/kg.png -------------------------------------------------------------------------------- /csfmanager/images/flags/kh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/kh.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ki.png -------------------------------------------------------------------------------- /csfmanager/images/flags/km.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/km.png -------------------------------------------------------------------------------- /csfmanager/images/flags/kn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/kn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/kp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/kp.png -------------------------------------------------------------------------------- /csfmanager/images/flags/kr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/kr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/kw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/kw.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ky.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ky.png -------------------------------------------------------------------------------- /csfmanager/images/flags/kz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/kz.png -------------------------------------------------------------------------------- /csfmanager/images/flags/la.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/la.png -------------------------------------------------------------------------------- /csfmanager/images/flags/lb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/lb.png -------------------------------------------------------------------------------- /csfmanager/images/flags/lc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/lc.png -------------------------------------------------------------------------------- /csfmanager/images/flags/li.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/li.png -------------------------------------------------------------------------------- /csfmanager/images/flags/lk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/lk.png -------------------------------------------------------------------------------- /csfmanager/images/flags/lr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/lr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ls.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ls.png -------------------------------------------------------------------------------- /csfmanager/images/flags/lt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/lt.png -------------------------------------------------------------------------------- /csfmanager/images/flags/lu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/lu.png -------------------------------------------------------------------------------- /csfmanager/images/flags/lv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/lv.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ly.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ly.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ma.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ma.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mc.png -------------------------------------------------------------------------------- /csfmanager/images/flags/md.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/md.png -------------------------------------------------------------------------------- /csfmanager/images/flags/me.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/me.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mg.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mh.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mk.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ml.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ml.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mo.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mp.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mq.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ms.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mt.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mu.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mv.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mw.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mx.png -------------------------------------------------------------------------------- /csfmanager/images/flags/my.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/my.png -------------------------------------------------------------------------------- /csfmanager/images/flags/mz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/mz.png -------------------------------------------------------------------------------- /csfmanager/images/flags/na.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/na.png -------------------------------------------------------------------------------- /csfmanager/images/flags/nc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/nc.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ne.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ne.png -------------------------------------------------------------------------------- /csfmanager/images/flags/nf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/nf.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ng.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ng.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ni.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ni.png -------------------------------------------------------------------------------- /csfmanager/images/flags/nl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/nl.png -------------------------------------------------------------------------------- /csfmanager/images/flags/no.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/no.png -------------------------------------------------------------------------------- /csfmanager/images/flags/np.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/np.png -------------------------------------------------------------------------------- /csfmanager/images/flags/nr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/nr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/nu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/nu.png -------------------------------------------------------------------------------- /csfmanager/images/flags/nz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/nz.png -------------------------------------------------------------------------------- /csfmanager/images/flags/om.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/om.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pa.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pe.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pf.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pg.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ph.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pk.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pl.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ps.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ps.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pt.png -------------------------------------------------------------------------------- /csfmanager/images/flags/pw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/pw.png -------------------------------------------------------------------------------- /csfmanager/images/flags/py.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/py.png -------------------------------------------------------------------------------- /csfmanager/images/flags/qa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/qa.png -------------------------------------------------------------------------------- /csfmanager/images/flags/re.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/re.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ro.png -------------------------------------------------------------------------------- /csfmanager/images/flags/rs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/rs.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ru.png -------------------------------------------------------------------------------- /csfmanager/images/flags/rw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/rw.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sa.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sb.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sc.png -------------------------------------------------------------------------------- /csfmanager/images/flags/scotland.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/scotland.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sd.png -------------------------------------------------------------------------------- /csfmanager/images/flags/se.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/se.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sg.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sh.png -------------------------------------------------------------------------------- /csfmanager/images/flags/si.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/si.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sj.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sk.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sl.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/so.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/so.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/st.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/st.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sv.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sy.png -------------------------------------------------------------------------------- /csfmanager/images/flags/sz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/sz.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tc.png -------------------------------------------------------------------------------- /csfmanager/images/flags/td.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/td.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tf.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tg.png -------------------------------------------------------------------------------- /csfmanager/images/flags/th.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/th.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tj.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tk.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tl.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/to.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/to.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tr.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tt.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tv.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tw.png -------------------------------------------------------------------------------- /csfmanager/images/flags/tz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/tz.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ua.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ua.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ug.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ug.png -------------------------------------------------------------------------------- /csfmanager/images/flags/uk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/uk.png -------------------------------------------------------------------------------- /csfmanager/images/flags/um.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/um.png -------------------------------------------------------------------------------- /csfmanager/images/flags/us.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/us.png -------------------------------------------------------------------------------- /csfmanager/images/flags/uy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/uy.png -------------------------------------------------------------------------------- /csfmanager/images/flags/uz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/uz.png -------------------------------------------------------------------------------- /csfmanager/images/flags/va.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/va.png -------------------------------------------------------------------------------- /csfmanager/images/flags/vc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/vc.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ve.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ve.png -------------------------------------------------------------------------------- /csfmanager/images/flags/vg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/vg.png -------------------------------------------------------------------------------- /csfmanager/images/flags/vi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/vi.png -------------------------------------------------------------------------------- /csfmanager/images/flags/vn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/vn.png -------------------------------------------------------------------------------- /csfmanager/images/flags/vu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/vu.png -------------------------------------------------------------------------------- /csfmanager/images/flags/wales.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/wales.png -------------------------------------------------------------------------------- /csfmanager/images/flags/wf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/wf.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ws.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ws.png -------------------------------------------------------------------------------- /csfmanager/images/flags/ye.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/ye.png -------------------------------------------------------------------------------- /csfmanager/images/flags/yt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/yt.png -------------------------------------------------------------------------------- /csfmanager/images/flags/za.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/za.png -------------------------------------------------------------------------------- /csfmanager/images/flags/zm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/zm.png -------------------------------------------------------------------------------- /csfmanager/images/flags/zw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/flags/zw.png -------------------------------------------------------------------------------- /csfmanager/images/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/loader.gif -------------------------------------------------------------------------------- /csfmanager/images/minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/minus.png -------------------------------------------------------------------------------- /csfmanager/images/plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/plus.png -------------------------------------------------------------------------------- /csfmanager/images/success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/success.png -------------------------------------------------------------------------------- /csfmanager/images/waiting-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jetserver/WHMCS-CSF-Manager/e2dc290345408aa38fa4ac305ed4b8c14dab108e/csfmanager/images/waiting-icon.png -------------------------------------------------------------------------------- /csfmanager/includes/class_cpanel.php: -------------------------------------------------------------------------------- 1 | apioutput = $output; } 23 | function getOutput() { return $this->apioutput; } 24 | 25 | function setServer($hostname, $username, $password, $password_type, $secure = true, $port = '2087') 26 | { 27 | $this->hostname = $hostname; 28 | $this->username = $username; 29 | $this->password = $password; 30 | $this->password_type = $password_type; 31 | $this->secure = $secure; 32 | $this->port = $port ? $port : ($secure ? '2087' : '2086'); 33 | } 34 | 35 | function exec($module, $func, $username, $args = array(), $version = 2) 36 | { 37 | $params = array(); 38 | 39 | if(sizeof($args)) 40 | { 41 | if($version == 1) 42 | { 43 | $count = 0; 44 | 45 | foreach($args as $arg) 46 | { 47 | $params['arg-' . $count] = $arg; 48 | $count++; 49 | } 50 | } 51 | else 52 | { 53 | $params = $args; 54 | } 55 | } 56 | 57 | return $this->whm('cpanel', array_merge(array( 58 | 'cpanel_' . $this->apioutput . 'api_module' => $module, 59 | 'cpanel_' . $this->apioutput . 'api_func' => $func, 60 | 'cpanel_' . $this->apioutput . 'api_apiversion' => $version, 61 | 'cpanel_' . $this->apioutput . 'api_user' => $username, 62 | ), $params), true); 63 | } 64 | 65 | function whm($function, $params = array(), $cpanel = false, $version = 1) 66 | { 67 | $output = array('success' => false, 'message' => '', 'output' => ''); 68 | 69 | $postfields = array(); 70 | 71 | if(!$cpanel) $postfields[] = "api.version={$version}"; 72 | 73 | foreach($params as $key => $value) 74 | { 75 | $postfields[] = "{$key}={$value}"; 76 | } 77 | 78 | $result = $this->request("{$this->apioutput}-api/{$function}", (sizeof($postfields) ? implode('&', $postfields) : '')); 79 | 80 | if(!$result['success']) return $result; 81 | 82 | if($result['output']) 83 | { 84 | switch($this->apioutput) 85 | { 86 | case 'xml': $result = simplexml_load_string($result['output']); break; 87 | case 'json': $result = json_decode($result['output'], true); break; 88 | } 89 | 90 | if($cpanel) 91 | { 92 | switch($params['cpanel_' . $this->apioutput . 'api_apiversion']) 93 | { 94 | case 1: 95 | $output['success'] = isset($result['error']) ? false : true; 96 | $output['message'] = isset($result['error']) ? trim($result['error']) : ''; 97 | $output['output'] = $result['data']['result']; 98 | break; 99 | 100 | case 2: 101 | $result = $result['cpanelresult']; 102 | 103 | if(isset($result['data'][0]['status'])) 104 | { 105 | $output['success'] = $result['data'][0]['status'] ? true : false; 106 | $output['message'] = isset($result['data'][0]['statusmsg']) ? trim($result['data'][0]['statusmsg']) : ''; 107 | } 108 | elseif(isset($result['data'][0]['result']['status'])) 109 | { 110 | $output['success'] = $result['data'][0]['result']['status'] ? true : false; 111 | $output['message'] = isset($result['data'][0]['result']['statusmsg']) ? trim($result['data'][0]['result']['statusmsg']) : ''; 112 | } 113 | elseif(isset($result['error'])) 114 | { 115 | $output['success'] = false; 116 | $output['message'] = $result['error']; 117 | } 118 | else 119 | { 120 | $output['success'] = $result['event']['result'] ? true : false; 121 | //$output['message'] = 'Unknown Error'; 122 | } 123 | 124 | $output['output'] = $result['data']; 125 | break; 126 | } 127 | } 128 | else 129 | { 130 | switch($version) 131 | { 132 | case 0: 133 | $output['success'] = $result['result']['status'] ? true : false; 134 | $output['message'] = $result['result']['statusmsg']; 135 | $output['output'] = $result['result']['options']; 136 | break; 137 | 138 | case 1: 139 | $output['success'] = $result['metadata']['result'] ? true : false; 140 | $output['message'] = preg_replace("'(\r|\n)'", "", $result['metadata']['reason']); 141 | $output['output'] = $result['data']; 142 | break; 143 | } 144 | } 145 | } 146 | else 147 | { 148 | $output['message'] = "No result"; 149 | } 150 | 151 | return $output; 152 | } 153 | 154 | function request($url, $params = null) 155 | { 156 | $output = array('success' => true, 'message' => '', 'output' => ''); 157 | 158 | if($this->password_type == 'hash') 159 | { 160 | $authorization = "Authorization: WHM {$this->username}:" . preg_replace("'(\r|\n)'", "", $this->password); 161 | } 162 | else 163 | { 164 | $authorization = "Authorization: Basic " . base64_encode("{$this->username}:{$this->password}"); 165 | } 166 | 167 | if(isset($params) && is_array($params)) 168 | { 169 | $params = http_build_query($params); 170 | } 171 | 172 | $ch = curl_init(); 173 | 174 | curl_setopt($ch, CURLOPT_URL, "http" . ($this->secure ? "s" : '') . "://{$this->hostname}:{$this->port}/{$url}"); 175 | if($params) curl_setopt($ch, CURLOPT_POSTFIELDS, $params); 176 | curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 177 | curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 178 | curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 179 | curl_setopt($ch, CURLOPT_HTTPHEADER, array($authorization)); 180 | 181 | $output['output'] = curl_exec($ch); 182 | 183 | curl_close($ch); 184 | 185 | return $output; 186 | } 187 | } 188 | 189 | ?> -------------------------------------------------------------------------------- /csfmanager/includes/class_firewall.php: -------------------------------------------------------------------------------- 1 | 4, 15 | 'reselleraccount' => 3, 16 | 'hostingaccount' => 2, 17 | 'other' => 1 18 | ); 19 | 20 | function __construct($lang) 21 | { 22 | $this->lang = $lang; 23 | } 24 | 25 | function validateIP($ip_addr) 26 | { 27 | if (preg_match("/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/", $ip_addr)) 28 | { 29 | $parts = explode(".",$ip_addr); 30 | 31 | foreach ($parts as $ip_parts) 32 | { 33 | if (intval($ip_parts) > 255 || intval($ip_parts) < 0) 34 | { 35 | return false; 36 | } 37 | } 38 | 39 | return true; 40 | } 41 | 42 | return false; 43 | } 44 | 45 | function setIP($ip) 46 | { 47 | if($this->validateIP($ip)) 48 | { 49 | $this->ip = $ip; 50 | return true; 51 | } 52 | 53 | return false; 54 | } 55 | 56 | function setWHMdetails($server) 57 | { 58 | $this->whm_details = $server; 59 | $this->cpanel = new csfmanager_cpanel; 60 | 61 | $password = $server['password'] ? $server['password'] : $server['accesshash']; 62 | $password_type = $server['password'] ? 'plain' : 'hash'; 63 | 64 | $this->cpanel->setServer($server['hostname'], $server['username'], $password, $password_type); 65 | 66 | $response = $this->cpanel->whm('myprivs'); 67 | $this->reseller = $response['output']['privileges'][0]['all'] ? false : true; 68 | } 69 | 70 | public function isReseller($servers = null) 71 | { 72 | $output = array(); 73 | 74 | foreach ($servers as $server => $data) 75 | { 76 | if($data['type'] > 2) 77 | { 78 | return true; 79 | } 80 | } 81 | 82 | return false; 83 | } 84 | 85 | public function getResellerServers($servers = null) 86 | { 87 | $output = array(); 88 | 89 | foreach ($servers as $server => $data) 90 | { 91 | if($data['type'] > 2) $output[] = $server; 92 | } 93 | 94 | return $output; 95 | } 96 | 97 | function temporaryAllow($length, $type, $comment = '') 98 | { 99 | if($this->reseller) array('success' => 0, 'message' => "Temporary Allow is not supported with a CSF Manager reseller user defined only root user", 'data' => ""); 100 | 101 | $response = csfmanager::checkCsfAlive($this->whm_details); 102 | 103 | if($response['success']) 104 | { 105 | $response = $this->cpanel->request($response['cgifile'], array( 106 | 'action' => 'tempdeny', 107 | 'do' => 'allow', 108 | 'ip' => $this->ip, 109 | 'timeout' => intval($length), 110 | 'dur' => $type, 111 | 'comment' => $comment, 112 | )); 113 | } 114 | 115 | return $response; 116 | } 117 | 118 | function checkIP($ip = null, $checkbrute = true) 119 | { 120 | $output = array('success' => false, 'message' => '', 'data' => ''); 121 | 122 | if($ip && !$this->setIP($ip)) 123 | { 124 | $output['message'] = sprintf($this->lang['cantsetip'], $ip); 125 | return $output; 126 | } 127 | 128 | $csf_data = $this->checkCsfRecord(); 129 | 130 | if($csf_data['success'] && $csf_data['blocked']) 131 | { 132 | $message = $csf_data['message'][0]; 133 | 134 | switch($csf_data['type']) 135 | { 136 | default: 137 | case 1: 138 | $time = strtotime(substr(trim(substr($message, strrpos($message, ' - '))), 2)); 139 | $message = substr($message, 0, strrpos($message, ' - ')); 140 | break; 141 | 142 | case 2: 143 | $time = 0; 144 | 145 | preg_match("/\((.*?)\)/", $message, $message_match); 146 | $message = trim($message_match[1]); 147 | break; 148 | 149 | case 3: 150 | $time = 0; 151 | break; 152 | } 153 | 154 | $output['data']['csf'][] = array( 155 | 'IP' => $this->ip, 156 | 'Notes' => $message, 157 | 'Date' => $time ? date("d/m/Y H:i", $time) : 'Unknown', 158 | ); 159 | 160 | $output['success'] = true; 161 | } 162 | elseif(!$csf_data['success']) 163 | { 164 | $output['message'] = $brute_data['message']; 165 | return $output; 166 | } 167 | 168 | if($checkbrute) 169 | { 170 | $brute_notes = array( 171 | 'ftp' => $this->lang['bruteerrorftp'], 172 | 'system' => $this->lang['bruteerrorsystem'], 173 | 'mail' => $this->lang['bruteerrormail'], 174 | ); 175 | 176 | $brute_data = $this->getBruteRecords(); 177 | 178 | if($brute_data['success'] && sizeof($brute_data['data'])) 179 | { 180 | if(in_array($this->ip, $brute_data['data']['ips'])) 181 | { 182 | foreach($brute_data['data']['items'] as $val_count => $val_data) 183 | { 184 | if($this->ip == $val_data['ip']) 185 | { 186 | $addl = array(); 187 | 188 | if(isset($val_data['logintime'])) $addl['Date'] = date("d/m/Y H:i", $val_data['logintime']); 189 | if(isset($val_data['exptime'])) $addl['Expiration'] = date("d/m/Y H:i", $val_data['exptime']); 190 | if(isset($val_data['notes'])) $addl['Notes'] = $val_data['notes']; 191 | 192 | $output['data']['brutes'][] = array_merge($addl, array( 193 | 'IP' => $val_data['ip'], 194 | )); 195 | 196 | break; 197 | } 198 | } 199 | } 200 | 201 | $output['success'] = true; 202 | } 203 | elseif(!$brute_data['success']) 204 | { 205 | $output['message'] = $brute_data['message']; 206 | } 207 | } 208 | 209 | return $output; 210 | } 211 | 212 | function releaseIP($checkbrute = true) 213 | { 214 | $output = array('csf' => array(), 'brute' => array()); 215 | 216 | $output['csf'] = $this->releaseCsfRecord(); 217 | $output['brute'] = $checkbrute ? $this->flushBruteDB() : array('success' => true, 'message' => ''); 218 | 219 | return $output; 220 | } 221 | 222 | function releaseCsfRecord() 223 | { 224 | $output = array('success' => false, 'message' => ''); 225 | 226 | $response = csfmanager::checkCsfAlive($this->whm_details); 227 | 228 | if($response['success']) 229 | { 230 | $response = $this->cpanel->request($response['cgifile'], array( 231 | 'action' => $this->reseller ? 'qkill' : 'kill', 232 | 'ip' => $this->ip, 233 | )); 234 | 235 | $output['success'] = (strpos($response['output'], 'Removing rule...') !== false || strpos($response['output'], 'temporary block removed') !== false) ? true : false; 236 | $output['message'] = !$output['success'] ? 'CSF Failed to remove the record' : ''; 237 | } 238 | else 239 | { 240 | $output = $response; 241 | } 242 | 243 | return $output; 244 | } 245 | 246 | function quickUnblock() 247 | { 248 | $response = csfmanager::checkCsfAlive($this->whm_details); 249 | 250 | if($response['success']) 251 | { 252 | $response = $this->cpanel->request($response['cgifile'], array( 253 | 'action' => $this->reseller ? 'qkill' : 'kill', 254 | 'ip' => $this->ip, 255 | )); 256 | 257 | return $response['success']; 258 | } 259 | 260 | return false; 261 | } 262 | 263 | function checkCsfRecord() 264 | { 265 | $output = array('success' => false, 'message' => array(), 'type' => null, 'blocked' => false); 266 | 267 | $response = csfmanager::checkCsfAlive($this->whm_details); 268 | 269 | if($response['success']) 270 | { 271 | $response = $this->cpanel->request($response['cgifile'], array( 272 | 'action' => 'grep', 273 | 'ip' => $this->ip, 274 | )); 275 | 276 | if($response['success']) 277 | { 278 | $response['output'] = str_replace("\n", "**R**", $response['output']); 279 | $html = str_get_dom($response['output']); 280 | 281 | $response = $html('pre', 0)->getPlainText(); 282 | $response = trim(str_replace("**R**", "\n", $response)); 283 | $response = explode("\n", $response); 284 | 285 | $start = (count($response)-5); 286 | 287 | for($i = $start; $i < count($response); $i++) 288 | { 289 | if(strpos($response[$i], 'csf.deny') !== false) 290 | { 291 | list($dump, $reason) = explode("#", $response[$i]); 292 | 293 | $output['success'] = true; 294 | $output['message'][] = trim($reason); 295 | $output['type'] = 1; 296 | $output['blocked'] = true; 297 | break; 298 | } 299 | elseif(strpos($response[$i], 'Temporary Blocks') !== false) 300 | { 301 | list($dump, $reason) = explode("Temporary Blocks:", $response[$i]); 302 | 303 | $output['success'] = true; 304 | $output['message'][] = trim($reason); 305 | $output['type'] = 2; 306 | $output['blocked'] = true; 307 | break; 308 | } 309 | // added on version 1.0.13 310 | elseif(strpos($response[$i], 'DENYIN') !== false) 311 | { 312 | $response = preg_replace('/\s+/', ' ', $response[$i]); 313 | $response_ary = explode(" ", $response); 314 | 315 | $reason = $response_ary[10] . ' ' . $response_ary[11] . ' ' . $response_ary[12]; 316 | 317 | $output['success'] = true; 318 | $output['message'][] = trim($reason); 319 | $output['type'] = 3; 320 | $output['blocked'] = true; 321 | break; 322 | } 323 | } 324 | 325 | if(!$output['blocked']) 326 | { 327 | $output['success'] = true; 328 | $output['message'][] = 4; 329 | } 330 | } 331 | else 332 | { 333 | $output['message'][] = $response['message']; 334 | } 335 | } 336 | else 337 | { 338 | $output['message'][] = $response['message']; 339 | } 340 | 341 | return $output; 342 | } 343 | 344 | function flushBruteDB() 345 | { 346 | $response = $this->cpanel->whm('flush_cphulk_login_history_for_ips', array( 347 | 'ip' => $this->ip, 348 | )); 349 | 350 | return $response; 351 | } 352 | 353 | function getBruteRecords() 354 | { 355 | $output = array('success' => false, 'data' => array(), 'message' => 'unknown error'); 356 | 357 | $data = $this->cpanel->whm('cphulk_status'); 358 | 359 | if($data['success']) 360 | { 361 | $data = json_decode($data['output'], true); 362 | 363 | if(!$data['data']['is_enabled']) 364 | { 365 | $output['success'] = true; 366 | return $output; 367 | } 368 | } 369 | else 370 | { 371 | $output['message'] = 'cant connect to WHM: ' . $data['message']; 372 | return $output; 373 | } 374 | 375 | $data = $this->cpanel->whm('get_cphulk_brutes'); 376 | 377 | if($data['success']) 378 | { 379 | $data = json_decode($data['output'], true); 380 | 381 | foreach($data['data']['brutes'] as $details) 382 | { 383 | $details['exptime'] = strtotime($details['exptime']); 384 | $details['logintime'] = strtotime($details['logintime']); 385 | 386 | $output['data']['ips'][] = $details['ip']; 387 | $output['data']['items'][] = $details; 388 | } 389 | } 390 | else 391 | { 392 | $output['message'] = 'cant connect to WHM: ' . $data['message']; 393 | return $output; 394 | } 395 | 396 | $output['success'] = true; 397 | 398 | return $output; 399 | } 400 | } 401 | 402 | ?> -------------------------------------------------------------------------------- /csfmanager/includes/ganon/gan_formatter.php: -------------------------------------------------------------------------------- 1 | array('new_line' => true, 'as_block' => true, 'format_inside' => true), 19 | 'h1' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 20 | 'h2' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 21 | 'h3' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 22 | 'h4' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 23 | 'h5' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 24 | 'h6' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 25 | 'form' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 26 | 'fieldset' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 27 | 'legend' => array('new_line' => true, 'as_block' => false, 'format_inside' => true), 28 | 'dl' => array('new_line' => true, 'as_block' => false, 'format_inside' => true), 29 | 'dt' => array('new_line' => true, 'as_block' => false, 'format_inside' => true), 30 | 'dd' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 31 | 'ol' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 32 | 'ul' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 33 | 'li' => array('new_line' => true, 'as_block' => false, 'format_inside' => true), 34 | 'table' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 35 | 'tr' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 36 | 'dir' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 37 | 'menu' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 38 | 'address' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 39 | 'blockquote' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 40 | 'center' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 41 | 'del' => array('new_line' => true, 'as_block' => false, 'format_inside' => true), 42 | 'hr' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 43 | 'ins' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 44 | 'noscript' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 45 | 'pre' => array('new_line' => true, 'as_block' => true, 'format_inside' => false), 46 | 'script' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 47 | 'style' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 48 | 'html' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 49 | 'head' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 50 | 'body' => array('new_line' => true, 'as_block' => true, 'format_inside' => true), 51 | 'title' => array('new_line' => true, 'as_block' => false, 'format_inside' => false) 52 | ); 53 | var $whitespace = array( 54 | ' ' => false, 55 | "\t" => false, 56 | "\x0B" => false, 57 | "\0" => false, 58 | "\n" => true, 59 | "\r" => true 60 | ); 61 | var $indent_string = ' '; 62 | var $linebreak_string = "\n"; 63 | var $options = array( 64 | 'img_alt' => '', 65 | 'self_close_str' => null, 66 | 'attribute_shorttag' => false, 67 | 'sort_attributes' => false, 68 | 'attributes_case' => CASE_LOWER, 69 | 'minify_script' => true 70 | ); 71 | var $errors = array(); 72 | function __construct($options = array()) { 73 | $this->options = array_merge($this->options, $options); 74 | } 75 | function __invoke(&$node) { 76 | return $this->format($node); 77 | } 78 | static function minify_html(&$root, $strip_comments = true, $recursive = true) { 79 | if ($strip_comments) { 80 | foreach($root->select(':comment', false, $recursive, true) as $c) { 81 | $prev = $c->getSibling(-1); 82 | $next = $c->getSibling(1); 83 | $c->delete(); 84 | if ($prev && $next && ($prev->isText()) && ($next->isText())) { 85 | $prev->text .= $next->text; 86 | $next->delete(); 87 | } 88 | } 89 | } 90 | foreach($root->select('(!pre + !xmp + !style + !script + !"?php" + !"~text~" + !"~comment~"):not-empty > "~text~"', false, $recursive, true) as $c) { 91 | $c->text = preg_replace('`\s+`', ' ', $c->text); 92 | } 93 | } 94 | static function minify_javascript(&$root, $indent_string = ' ', $wrap_comment = true, $recursive = true) { 95 | include_once('third party/jsminplus.php'); 96 | $errors = array(); 97 | foreach($root->select('script:not-empty > "~text~"', false, $recursive, true) as $c) { 98 | try { 99 | $text = $c->text; 100 | while ($text) { 101 | $text = trim($text); 102 | if (substr($text, 0, 4) === '') || ($end === ']]>'))) { 110 | $text = substr($text, 0, -3); 111 | continue; 112 | } 113 | break; 114 | } 115 | if (trim($text)) { 116 | $text = JSMinPlus::minify($text); 117 | if ($wrap_comment) { 118 | $text = ""; 119 | } 120 | if ($indent_string && ($wrap_comment || (strpos($text, "\n") !== false))) { 121 | $text = indent_text("\n".$text, $c->indent(), $indent_string); 122 | } 123 | } 124 | $c->text = $text; 125 | } catch (Exception $e) { 126 | $errors[] = array($e, $c->parent->dumpLocation()); 127 | } 128 | } 129 | return (($errors) ? $errors : true); 130 | } 131 | function format_html(&$root, $recursive = null) { 132 | if ($recursive === null) { 133 | $recursive = true; 134 | self::minify_html($root); 135 | } elseif (is_int($recursive)) { 136 | $recursive = (($recursive > 1) ? $recursive - 1 : false); 137 | } 138 | $root_tag = strtolower($root->tag); 139 | $in_block = isset($this->block_elements[$root_tag]) && $this->block_elements[$root_tag]['as_block']; 140 | $child_count = count($root->children); 141 | if (isset($this->options['attributes_case']) && $this->options['attributes_case']) { 142 | $root->attributes = array_change_key_case($root->attributes, $this->options['attributes_case']); 143 | $root->attributes_ns = null; 144 | } 145 | if (isset($this->options['sort_attributes']) && $this->options['sort_attributes']) { 146 | if ($this->options['sort_attributes'] === 'reverse') { 147 | krsort($root->attributes); 148 | } else { 149 | ksort($root->attributes); 150 | } 151 | } 152 | if ($root->select(':element', true, false, true)) { 153 | $root->setTag(strtolower($root->tag), true); 154 | if (($this->options['img_alt'] !== null) && ($root_tag === 'img') && (!isset($root->alt))) { 155 | $root->alt = $this->options['img_alt']; 156 | } 157 | } 158 | if ($this->options['self_close_str'] !== null) { 159 | $root->self_close_str = $this->options['self_close_str']; 160 | } 161 | if ($this->options['attribute_shorttag'] !== null) { 162 | $root->attribute_shorttag = $this->options['attribute_shorttag']; 163 | } 164 | $prev = null; 165 | $n_tag = ''; 166 | $prev_tag = ''; 167 | $as_block = false; 168 | $prev_asblock = false; 169 | for($i = 0; $i < $child_count; $i++) { 170 | $n =& $root->children[$i]; 171 | $indent = $n->indent(); 172 | if (!$n->isText()) { 173 | $n_tag = strtolower($n->tag); 174 | $new_line = isset($this->block_elements[$n_tag]) && $this->block_elements[$n_tag]['new_line']; 175 | $as_block = isset($this->block_elements[$n_tag]) && $this->block_elements[$n_tag]['as_block']; 176 | $format_inside = ((!isset($this->block_elements[$n_tag])) || $this->block_elements[$n_tag]['format_inside']); 177 | if ($prev && ($prev->isText()) && $prev->text && ($char = $prev->text[strlen($prev->text) - 1]) && isset($this->whitespace[$char])) { 178 | if ($this->whitespace[$char]) { 179 | $prev->text .= str_repeat($this->indent_string, $indent); 180 | } else { 181 | $prev->text = substr_replace($prev->text, $this->linebreak_string.str_repeat($this->indent_string, $indent), -1, 1); 182 | } 183 | } elseif (($new_line || $prev_asblock || ($in_block && ($i === 0)))){ 184 | if ($prev && ($prev->isText())) { 185 | $prev->text .= $this->linebreak_string.str_repeat($this->indent_string, $indent); 186 | } else { 187 | $root->addText($this->linebreak_string.str_repeat($this->indent_string, $indent), $i); 188 | ++$child_count; 189 | } 190 | } 191 | if ($format_inside && count($n->children)) { 192 | $last = $n->children[count($n->children) - 1]; 193 | $last_tag = ($last) ? strtolower($last->tag) : ''; 194 | $last_asblock = ($last_tag && isset($this->block_elements[$last_tag]) && $this->block_elements[$last_tag]['as_block']); 195 | if (($n->childCount(true) > 0) || (trim($n->getPlainText()))) { 196 | if ($last && ($last->isText()) && $last->text && ($char = $last->text[strlen($last->text) - 1]) && isset($this->whitespace[$char])) { 197 | if ($as_block || ($last->index() > 0) || isset($this->whitespace[$last->text[0]])) { 198 | if ($this->whitespace[$char]) { 199 | $last->text .= str_repeat($this->indent_string, $indent); 200 | } else { 201 | $last->text = substr_replace($last->text, $this->linebreak_string.str_repeat($this->indent_string, $indent), -1, 1); 202 | } 203 | } 204 | } elseif (($as_block || $last_asblock || ($in_block && ($i === 0))) && $last) { 205 | if ($last && ($last->isText())) { 206 | $last->text .= $this->linebreak_string.str_repeat($this->indent_string, $indent); 207 | } else { 208 | $n->addText($this->linebreak_string.str_repeat($this->indent_string, $indent)); 209 | } 210 | } 211 | } elseif (!trim($n->getInnerText())) { 212 | $n->clear(); 213 | } 214 | if ($recursive) { 215 | $this->format_html($n, $recursive); 216 | } 217 | } 218 | } elseif (trim($n->text) && ((($i - 1 < $child_count) && ($char = $n->text[0]) && isset($this->whitespace[$char])) || ($in_block && ($i === 0)))) { 219 | if (isset($this->whitespace[$char])) { 220 | if ($this->whitespace[$char]) { 221 | $n->text = str_repeat($this->indent_string, $indent).$n->text; 222 | } else { 223 | $n->text = substr_replace($n->text, $this->linebreak_string.str_repeat($this->indent_string, $indent), 0, 1); 224 | } 225 | } else { 226 | $n->text = $this->linebreak_string.str_repeat($this->indent_string, $indent).$n->text; 227 | } 228 | } 229 | $prev = $n; 230 | $prev_tag = $n_tag; 231 | $prev_asblock = $as_block; 232 | } 233 | return true; 234 | } 235 | function format(&$node) { 236 | $this->errors = array(); 237 | if ($this->options['minify_script']) { 238 | $a = self::minify_javascript($node, $this->indent_string, true, true); 239 | if (is_array($a)) { 240 | foreach($a as $error) { 241 | $this->errors[] = $error[0]->getMessage().' >>> '.$error[1]; 242 | } 243 | } 244 | } 245 | return $this->format_html($node); 246 | } 247 | } 248 | 249 | ?> -------------------------------------------------------------------------------- /csfmanager/includes/ganon/gan_tokenizer.php: -------------------------------------------------------------------------------- 1 | setWhitespace($this->whitespace); 27 | $this->setIdentifiers($this->identifiers); 28 | $this->setDoc($doc, $pos); 29 | } 30 | function setDoc($doc, $pos = 0) { 31 | $this->doc = $doc; 32 | $this->size = strlen($doc); 33 | $this->setPos($pos); 34 | } 35 | function getDoc() { 36 | return $this->doc; 37 | } 38 | function setPos($pos = 0) { 39 | $this->pos = $pos - 1; 40 | $this->line_pos = array(0, 0); 41 | $this->next(); 42 | } 43 | function getPos() { 44 | return $this->pos; 45 | } 46 | function getLinePos() { 47 | return array($this->line_pos[0], $this->pos - $this->line_pos[1]); 48 | } 49 | function getToken() { 50 | return $this->token; 51 | } 52 | function getTokenString($start_offset = 0, $end_offset = 0) { 53 | $token_start = ((is_int($this->token_start)) ? $this->token_start : $this->pos) + $start_offset; 54 | $len = $this->pos - $token_start + 1 + $end_offset; 55 | return (($len > 0) ? substr($this->doc, $token_start, $len) : ''); 56 | } 57 | function setWhitespace($ws) { 58 | if (is_array($ws)) { 59 | $this->whitespace = array_fill_keys(array_values($ws), true); 60 | $this->buildCharMap(); 61 | } else { 62 | $this->setWhiteSpace(str_split($ws)); 63 | } 64 | } 65 | function getWhitespace($as_string = true) { 66 | $ws = array_keys($this->whitespace); 67 | return (($as_string) ? implode('', $ws) : $ws); 68 | } 69 | function setIdentifiers($ident) { 70 | if (is_array($ident)) { 71 | $this->identifiers = array_fill_keys(array_values($ident), true); 72 | $this->buildCharMap(); 73 | } else { 74 | $this->setIdentifiers(str_split($ident)); 75 | } 76 | } 77 | function getIdentifiers($as_string = true) { 78 | $ident = array_keys($this->identifiers); 79 | return (($as_string) ? implode('', $ident) : $ident); 80 | } 81 | function mapChar($char, $map) { 82 | $this->custom_char_map[$char] = $map; 83 | $this->buildCharMap(); 84 | } 85 | function unmapChar($char) { 86 | unset($this->custom_char_map[$char]); 87 | $this->buildCharMap(); 88 | } 89 | protected function buildCharMap() { 90 | $this->char_map = $this->custom_char_map; 91 | if (is_array($this->whitespace)) { 92 | foreach($this->whitespace as $w => $v) { 93 | $this->char_map[$w] = 'parse_whitespace'; 94 | } 95 | } 96 | if (is_array($this->identifiers)) { 97 | foreach($this->identifiers as $i => $v) { 98 | $this->char_map[$i] = 'parse_identifier'; 99 | } 100 | } 101 | } 102 | function addError($error) { 103 | $this->errors[] = htmlentities($error.' at '.($this->line_pos[0] + 1).', '.($this->pos - $this->line_pos[1] + 1).'!'); 104 | } 105 | protected function parse_linebreak() { 106 | if($this->doc[$this->pos] === "\r") { 107 | ++$this->line_pos[0]; 108 | if ((($this->pos + 1) < $this->size) && ($this->doc[$this->pos + 1] === "\n")) { 109 | ++$this->pos; 110 | } 111 | $this->line_pos[1] = $this->pos; 112 | } elseif($this->doc[$this->pos] === "\n") { 113 | ++$this->line_pos[0]; 114 | $this->line_pos[1] = $this->pos; 115 | } 116 | } 117 | protected function parse_whitespace() { 118 | $this->token_start = $this->pos; 119 | while(++$this->pos < $this->size) { 120 | if (!isset($this->whitespace[$this->doc[$this->pos]])) { 121 | break; 122 | } else { 123 | $this->parse_linebreak(); 124 | } 125 | } 126 | --$this->pos; 127 | return self::TOK_WHITESPACE; 128 | } 129 | protected function parse_identifier() { 130 | $this->token_start = $this->pos; 131 | while((++$this->pos < $this->size) && isset($this->identifiers[$this->doc[$this->pos]])) {} 132 | --$this->pos; 133 | return self::TOK_IDENTIFIER; 134 | } 135 | function next() { 136 | $this->token_start = null; 137 | if (++$this->pos < $this->size) { 138 | if (isset($this->char_map[$this->doc[$this->pos]])) { 139 | if (is_string($this->char_map[$this->doc[$this->pos]])) { 140 | return ($this->token = $this->{$this->char_map[$this->doc[$this->pos]]}()); 141 | } else { 142 | return ($this->token = $this->char_map[$this->doc[$this->pos]]); 143 | } 144 | } else { 145 | return ($this->token = self::TOK_UNKNOWN); 146 | } 147 | } else { 148 | return ($this->token = self::TOK_NULL); 149 | } 150 | } 151 | function next_no_whitespace() { 152 | $this->token_start = null; 153 | while (++$this->pos < $this->size) { 154 | if (!isset($this->whitespace[$this->doc[$this->pos]])) { 155 | if (isset($this->char_map[$this->doc[$this->pos]])) { 156 | if (is_string($this->char_map[$this->doc[$this->pos]])) { 157 | return ($this->token = $this->{$this->char_map[$this->doc[$this->pos]]}()); 158 | } else { 159 | return ($this->token = $this->char_map[$this->doc[$this->pos]]); 160 | } 161 | } else { 162 | return ($this->token = self::TOK_UNKNOWN); 163 | } 164 | } else { 165 | $this->parse_linebreak(); 166 | } 167 | } 168 | return ($this->token = self::TOK_NULL); 169 | } 170 | function next_search($characters, $callback = true) { 171 | $this->token_start = $this->pos; 172 | if (!is_array($characters)) { 173 | $characters = array_fill_keys(str_split($characters), true); 174 | } 175 | while(++$this->pos < $this->size) { 176 | if (isset($characters[$this->doc[$this->pos]])) { 177 | if ($callback && isset($this->char_map[$this->doc[$this->pos]])) { 178 | if (is_string($this->char_map[$this->doc[$this->pos]])) { 179 | return ($this->token = $this->{$this->char_map[$this->doc[$this->pos]]}()); 180 | } else { 181 | return ($this->token = $this->char_map[$this->doc[$this->pos]]); 182 | } 183 | } else { 184 | return ($this->token = self::TOK_UNKNOWN); 185 | } 186 | } else { 187 | $this->parse_linebreak(); 188 | } 189 | } 190 | return ($this->token = self::TOK_NULL); 191 | } 192 | function next_pos($needle, $callback = true) { 193 | $this->token_start = $this->pos; 194 | if (($this->pos < $this->size) && (($p = stripos($this->doc, $needle, $this->pos + 1)) !== false)) { 195 | $len = $p - $this->pos - 1; 196 | if ($len > 0) { 197 | $str = substr($this->doc, $this->pos + 1, $len); 198 | if (($l = strrpos($str, "\n")) !== false) { 199 | ++$this->line_pos[0]; 200 | $this->line_pos[1] = $l + $this->pos + 1; 201 | $len -= $l; 202 | if ($len > 0) { 203 | $str = substr($str, 0, -$len); 204 | $this->line_pos[0] += substr_count($str, "\n"); 205 | } 206 | } 207 | } 208 | $this->pos = $p; 209 | if ($callback && isset($this->char_map[$this->doc[$this->pos]])) { 210 | if (is_string($this->char_map[$this->doc[$this->pos]])) { 211 | return ($this->token = $this->{$this->char_map[$this->doc[$this->pos]]}()); 212 | } else { 213 | return ($this->token = $this->char_map[$this->doc[$this->pos]]); 214 | } 215 | } else { 216 | return ($this->token = self::TOK_UNKNOWN); 217 | } 218 | } else { 219 | $this->pos = $this->size; 220 | return ($this->token = self::TOK_NULL); 221 | } 222 | } 223 | protected function expect($token, $do_next = true, $try_next = false, $next_on_match = 1) { 224 | if ($do_next) { 225 | if ($do_next === 1) { 226 | $this->next(); 227 | } else { 228 | $this->next_no_whitespace(); 229 | } 230 | } 231 | if (is_int($token)) { 232 | if (($this->token !== $token) && ((!$try_next) || ((($try_next === 1) && ($this->next() !== $token)) || (($try_next === true) && ($this->next_no_whitespace() !== $token))))) { 233 | $this->addError('Unexpected "'.$this->getTokenString().'"'); 234 | return false; 235 | } 236 | } else { 237 | if (($this->doc[$this->pos] !== $token) && ((!$try_next) || (((($try_next === 1) && ($this->next() !== self::TOK_NULL)) || (($try_next === true) && ($this->next_no_whitespace() !== self::TOK_NULL))) && ($this->doc[$this->pos] !== $token)))) { 238 | $this->addError('Expected "'.$token.'", but found "'.$this->getTokenString().'"'); 239 | return false; 240 | } 241 | } 242 | if ($next_on_match) { 243 | if ($next_on_match === 1) { 244 | $this->next(); 245 | } else { 246 | $this->next_no_whitespace(); 247 | } 248 | } 249 | return true; 250 | } 251 | } 252 | 253 | ?> -------------------------------------------------------------------------------- /csfmanager/includes/ganon/ganon.php: -------------------------------------------------------------------------------- 1 | root : $a); 12 | } 13 | function file_get_dom($file, $return_root = true, $use_include_path = false, $context = null) { 14 | if (version_compare(PHP_VERSION, '5.0.0', '>=')) 15 | $f = file_get_contents($file, $use_include_path, $context); 16 | else { 17 | if ($context !== null) 18 | trigger_error('Context parameter not supported in this PHP version'); 19 | $f = file_get_contents($file, $use_include_path); 20 | } 21 | return (($f === false) ? false : str_get_dom($f, $return_root)); 22 | } 23 | function dom_format(&$root, $options = array()) { 24 | $formatter = new HTML_Formatter($options); 25 | return $formatter->format($root); 26 | } 27 | if (version_compare(PHP_VERSION, '5.0.0', '<')) { 28 | function str_split($string) { 29 | $res = array(); 30 | $size = strlen($string); 31 | for ($i = 0; $i < $size; $i++) { 32 | $res[] = $string[$i]; 33 | } 34 | return $res; 35 | } 36 | } 37 | if (version_compare(PHP_VERSION, '5.2.0', '<')) { 38 | function array_fill_keys($keys, $value) { 39 | $res = array(); 40 | foreach($keys as $k) { 41 | $res[$k] = $value; 42 | } 43 | return $res; 44 | } 45 | } 46 | 47 | require(dirname(__FILE__) . '/gan_tokenizer.php'); 48 | require(dirname(__FILE__) . '/gan_parser_html.php'); 49 | require(dirname(__FILE__) . '/gan_node_html.php'); 50 | require(dirname(__FILE__) . '/gan_selector_html.php'); 51 | require(dirname(__FILE__) . '/gan_formatter.php'); 52 | 53 | ?> -------------------------------------------------------------------------------- /csfmanager/template/allowedlog_default.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
"> 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
lang('clientname'); ?>lang('server'); ?> 13 | 19 |
lang('ip'); ?>lang('reason'); ?>
29 | 30 |
31 | 32 |
33 | 34 |
35 |
36 | 37 | 38 | 39 |
40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 60 | 61 | 62 | 63 | 64 | 65 | 70 | 71 | 72 | 73 |
lang('client'); ?>lang('server'); ?>lang('ip'); ?>lang('time'); ?>lang('expirationdate'); ?>lang('reason'); ?>
54 | 55 | 56 | 57 | lang('clientdeleted'), $allowed_ip['clientid']); ?> 58 | 59 | 66 | &action=delete&id="> 67 | 68 | 69 |
74 |
75 | 76 |
77 | 78 |
79 | 80 | -------------------------------------------------------------------------------- /csfmanager/template/allowkeys_default.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
"> 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 38 | 39 | 40 |
lang('clientname'); ?>lang('server'); ?> 13 | 19 |
lang('recipientname'); ?>lang('recipientemail'); ?>
lang('key'); ?>lang('status'); ?> 32 | 37 |
41 | 42 |
43 | 44 |
45 | 46 |
47 |
48 | 49 | 50 | 51 |
52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 88 | 95 | 96 | 103 | 114 | 115 | 116 | 117 |
lang('client'); ?>lang('server'); ?>lang('recipientname'); ?>lang('recipientemail'); ?>lang('key'); ?>lang('expirationdate'); ?>lang('remained'); ?>
68 | 69 | 70 | 71 | lang('clientdeleted'), $allow_key['user_id']); ?> 72 | 73 | lang('cancelled'); ?> 82 | time()) { ?> 83 | 84 | 85 | lang('expired'); ?> 86 | 87 | 89 | 0) { ?> 90 | 91 | 92 | lang('fullyused'); ?> 93 | 94 | 97 | time() && $allow_key['key_clicks_remained'] > 0) { ?> 98 | &action=resend&id="> 99 | 100 | 101 | 102 | 104 | time() && $allow_key['key_clicks_remained'] > 0) { ?> 105 | &action=cancel&id="> 106 | 107 | 108 | time() && $allow_key['key_clicks_remained'] > 0) { ?> 109 | &action=reactivate&id="> 110 | 111 | 112 | 113 |
118 |
119 | 120 |
121 | 122 |
123 | 124 | -------------------------------------------------------------------------------- /csfmanager/template/broadcast_apply.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 120 | 121 |
122 | Broadcast will start in 10 seconds... 123 |
124 | 125 | $server_id) { ?> 126 |
127 | 128 | 129 |
130 | 131 | 132 |
133 | 134 | 135 |
136 | 137 | -------------------------------------------------------------------------------- /csfmanager/template/broadcast_default.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 |
7 | 8 |

lang('selecttmpserver'); ?>

9 |

lang('selecttmpserverdesc'); ?>

10 | 11 | 17 | 18 |
19 | lang('cleantemp'); ?> 20 | 21 |
22 |
23 | 24 | -------------------------------------------------------------------------------- /csfmanager/template/broadcast_selectservers.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 24 | 25 |

lang('selectserversupdate'); ?>

26 | 27 |
28 | 29 | 30 | 31 | 32 | 40 | 44 | 48 | 49 | 50 |
33 | 39 | 41 |

42 | 43 |
45 | 47 |
51 | 52 |
53 | 54 | 55 | 58 |
59 | 60 | 61 | 62 | 63 |
64 | 65 | -------------------------------------------------------------------------------- /csfmanager/template/broadcast_setconfig.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |

lang('changemulticonf'); ?>

5 | 6 |
7 | lang('info'); ?> 8 |
9 | lang('changemulticonfdesc'); ?> 10 |
11 | 12 |
13 |
14 | 15 |
16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 |
24 |
25 | 26 | -------------------------------------------------------------------------------- /csfmanager/template/firewall_default.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 |
7 | 8 |

Please select a server to manage.

9 |

10 | 16 | 17 |
18 |
19 | 20 | -------------------------------------------------------------------------------- /csfmanager/template/firewall_manage.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |

5 | Managing "" 6 |

7 | 8 | 9 | -------------------------------------------------------------------------------- /csfmanager/template/generatekey_default.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 29 | 30 | 31 | 32 | 40 | 41 |
lang('recipientname'); ?>
lang('recipientemail'); ?>
lang('client'); ?> 19 | lang('clientid'); ?>: 20 | 21 | lang('or'); ?> 22 | 28 |
lang('server'); ?> 33 | 39 |
42 | 43 |
44 | 45 |
46 | 47 |
48 |
49 | 50 | -------------------------------------------------------------------------------- /csfmanager/template/message.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 |
6 | 7 |
8 | 9 | -------------------------------------------------------------------------------- /csfmanager/template/overall_footer.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |

Plugin Version

6 | -------------------------------------------------------------------------------- /csfmanager/template/overall_header.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | Information 5 |
6 | lang('version_check'), $new_version); ?> 7 |
8 | 9 | 10 | 11 |
12 | Success!
13 | 14 |
15 | 16 | 17 | 18 |
19 | Error!
20 | 21 |
22 | 23 | 24 | 25 |
26 | Error!
27 | ", $action_response['errormessages']); ?> 28 |
29 | 30 | 31 | 37 | 38 |
39 |
40 | -------------------------------------------------------------------------------- /csfmanager/template/settings_default.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 29 | 30 | 31 | 32 | 36 | 37 | 38 | 39 | 43 | 44 | 45 | 46 | 50 | 51 | 52 | 53 | 57 | 58 | 59 | 60 | 64 | 65 | 66 | 67 | 77 | 78 | 79 | 80 | 108 | 109 | 110 |
lang('canviewfirewalltab'); ?> 26 | 27 | 28 |
lang('canviewunblocktab'); ?> 33 | 34 | 35 |
lang('canunblockclients'); ?> 40 | 41 | 42 |
lang('canviewallowtab'); ?> 47 | 48 | 49 |
lang('canviewallowemailtab'); ?> 54 | 55 | 56 |
lang('brutecheck'); ?> 61 | 62 | 63 |
lang('allowlength'); ?> 68 | 69 | 70 | 76 |
lang('servers'); ?> 81 | 82 | 83 | 84 | 92 | 96 | 104 | 105 | 106 |
85 | 91 | 93 |

94 | 95 |
97 | 103 |
107 |
111 | 112 |

113 | 114 |

115 | 116 |
117 | 118 | -------------------------------------------------------------------------------- /csfmanager/views/allowedlog_default.php: -------------------------------------------------------------------------------- 1 | true, 'message' => '', 'data' => array()); 22 | 23 | $instance = csfmanager::getInstance(); 24 | 25 | $id = csfmanager::request_var('id', 0); 26 | $start = csfmanager::request_var('start', 0); 27 | $search = csfmanager::request_var('search', array()); 28 | 29 | $limit = 10; 30 | 31 | $output['data']['search_url'] = sizeof($search) ? http_build_query($search) : ''; 32 | 33 | $output['data']['list'] = array(); 34 | 35 | $sql = "SELECT a.*, c.firstname, c.lastname, s.name as server_name 36 | FROM mod_csfmanager_allow as a 37 | LEFT JOIN tblclients as c 38 | ON c.id = a.clientid 39 | LEFT JOIN tblservers as s 40 | ON s.id = a.serverid 41 | WHERE a.expiration > '" . time() . "' 42 | " . (trim($search['clientname']) ? "AND UPPER(CONCAT_WS(' ', c.firstname, c.lastname)) LIKE UPPER('%" . mysql_escape_string(trim($search['clientname'])) . "%')" : '') . " 43 | " . (intval($search['server']) ? "AND s.id = '" . intval($search['server']) . "'" : '') . " 44 | " . (trim($search['ip']) ? "AND a.ip LIKE '%" . mysql_escape_string(trim($search['ip'])) . "%'" : '') . " 45 | " . (trim($search['reason']) ? "AND a.reason LIKE '%" . mysql_escape_string(trim($search['reason'])) . "%'" : '') . " 46 | ORDER BY a.time DESC"; 47 | $result = mysql_query($sql); 48 | 49 | $output['data']['total'] = mysql_num_rows($result); 50 | 51 | $result = mysql_query($sql . " LIMIT {$start}, {$limit}"); 52 | while($allow_details = mysql_fetch_assoc($result)) 53 | { 54 | $output['data']['list'][] = array_merge($allow_details, array('time' => date("d/m/Y H:i", $allow_details['time']), 'expiration' => date("d/m/Y H:i", $allow_details['expiration']))); 55 | } 56 | mysql_free_result($result); 57 | 58 | $output['data']['current_page'] = (($start / $limit) + 1); 59 | $output['data']['total_pages'] = ceil(abs($output['data']['total'] / $limit)); 60 | $output['data']['search'] = $search; 61 | $output['data']['start'] = $start; 62 | $output['data']['limit'] = $limit; 63 | 64 | $output['data']['servers'] = array(); 65 | 66 | $sql = "SELECT * 67 | FROM tblservers 68 | " . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : ''); 69 | $result = mysql_query($sql); 70 | 71 | while($server_details = mysql_fetch_assoc($result)) 72 | { 73 | $output['data']['servers'][$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash))); 74 | } 75 | mysql_free_result($result); 76 | 77 | return $output; 78 | } 79 | 80 | public function delete() 81 | { 82 | global $cc_encryption_hash; 83 | 84 | $output = array('success' => false, 'message' => '', 'data' => array()); 85 | 86 | $instance = csfmanager::getInstance(); 87 | 88 | $id = csfmanager::request_var('id', 0); 89 | 90 | $sql = "SELECT a.ip, s.id as server_id, s.name, s.hostname, s.username, s.password, s.accesshash, s.secure 91 | FROM mod_csfmanager_allow as a 92 | LEFT JOIN tblservers as s 93 | ON s.id = a.serverid 94 | WHERE a.id = '{$id}'"; 95 | $result = mysql_query($sql); 96 | $allow_details = mysql_fetch_assoc($result); 97 | 98 | if(!$allow_details) 99 | { 100 | $output['message'] = $instance->lang('ipnotexists'); 101 | return $output; 102 | } 103 | 104 | $allow_details['password'] = decrypt($allow_details['password'], $cc_encryption_hash); 105 | 106 | $Firewall = new Firewall($LANG); 107 | $Firewall->setWHMdetails($allow_details); 108 | 109 | // delete this ip 110 | if(!$Firewall->setIP($allow_details['ip'])) 111 | { 112 | $output['message'] = $instance->lang('cantsetip'); 113 | return $output; 114 | } 115 | 116 | if(!$Firewall->quickUnblock()) 117 | { 118 | $output['message'] = $instance->lang('cantremoveip'); 119 | return $output; 120 | } 121 | 122 | $sql = "DELETE 123 | FROM mod_csfmanager_allow 124 | WHERE id = '{$id}'"; 125 | mysql_query($sql); 126 | 127 | $output['success'] = true; 128 | $output['message'] = $instance->lang('allowedipremove'); 129 | 130 | return $output; 131 | } 132 | } 133 | 134 | ?> -------------------------------------------------------------------------------- /csfmanager/views/allowkeys_default.php: -------------------------------------------------------------------------------- 1 | true, 'message' => '', 'data' => array()); 22 | 23 | $instance = csfmanager::getInstance(); 24 | 25 | $id = csfmanager::request_var('id', 0); 26 | $start = csfmanager::request_var('start', 0); 27 | $search = csfmanager::request_var('search', array('status' => 'valid')); 28 | 29 | $limit = 10; 30 | 31 | $output['data']['search_url'] = sizeof($search) ? http_build_query($search) : ''; 32 | 33 | $output['data']['list'] = array(); 34 | 35 | $status_query = ""; 36 | 37 | if($search['status'] == 'valid') 38 | { 39 | $status_query = "k.key_expire > '" . time() . "' AND k.key_clicks_remained > 0 AND k.key_cancelled = 0"; 40 | } 41 | elseif($search['status'] == 'invalid') 42 | { 43 | $status_query = "(k.key_expire <= '" . time() . "' OR k.key_clicks_remained <= 0 OR k.key_cancelled = 1)"; 44 | } 45 | 46 | $sql = "SELECT k.*, c.firstname, c.lastname, s.name as server_name 47 | FROM mod_csfmanager_allow_keys as k 48 | LEFT JOIN tblclients as c 49 | ON c.id = k.user_id 50 | LEFT JOIN tblservers as s 51 | ON s.id = k.server_id 52 | WHERE key_id > 0 53 | " . ($status_query ? "AND {$status_query}" : '') . " 54 | " . (trim($search['clientname']) ? "AND UPPER(CONCAT_WS(' ', c.firstname, c.lastname)) LIKE UPPER('%" . mysql_escape_string(trim($search['clientname'])) . "%')" : '') . " 55 | " . (intval($search['server']) ? "AND s.id = '" . intval($search['server']) . "'" : '') . " 56 | " . (trim($search['recipient']) ? "AND k.key_recipient LIKE '%" . mysql_escape_string(trim($search['recipient'])) . "%'" : '') . " 57 | " . (trim($search['email']) ? "AND k.key_email LIKE '%" . mysql_escape_string(trim($search['email'])) . "%'" : '') . " 58 | " . (trim($search['key']) ? "AND k.key_hash LIKE '%" . mysql_escape_string(trim($search['key'])) . "%'" : '') . " 59 | ORDER BY k.key_id DESC"; 60 | $result = mysql_query($sql); 61 | 62 | $output['data']['total'] = mysql_num_rows($result); 63 | 64 | $result = mysql_query($sql . " LIMIT {$start}, {$limit}"); 65 | 66 | while($key_details = mysql_fetch_assoc($result)) 67 | { 68 | $output['data']['list'][] = array_merge($key_details, array('key_expire_date' => date("d/m/Y H:i", $key_details['key_expire']))); 69 | } 70 | mysql_free_result($result); 71 | 72 | $output['data']['current_page'] = (($start / $limit) + 1); 73 | $output['data']['total_pages'] = ceil(abs($output['data']['total'] / $limit)); 74 | $output['data']['start'] = $start; 75 | $output['data']['limit'] = $limit; 76 | 77 | $output['data']['servers'] = array(); 78 | 79 | $sql = "SELECT * 80 | FROM tblservers 81 | " . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : ''); 82 | $result = mysql_query($sql); 83 | 84 | while($server_details = mysql_fetch_assoc($result)) 85 | { 86 | $output['data']['servers'][$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash))); 87 | } 88 | mysql_free_result($result); 89 | 90 | return $output; 91 | } 92 | 93 | public function cancel() 94 | { 95 | $output = array('success' => false, 'message' => '', 'data' => array()); 96 | 97 | $id = csfmanager::request_var('id', 0); 98 | 99 | $instance = csfmanager::getInstance(); 100 | 101 | $sql = "SELECT * 102 | FROM mod_csfmanager_allow_keys 103 | WHERE key_id = '{$id}'"; 104 | $result = mysql_query($sql); 105 | $key_details = mysql_fetch_assoc($result); 106 | 107 | if($key_details) 108 | { 109 | if(!$key_details['key_cancelled'] && $key_details['key_clicks_remained'] && $key_details['key_expire'] > time()) 110 | { 111 | $sql = "UPDATE mod_csfmanager_allow_keys 112 | SET key_cancelled = 1 113 | WHERE key_id = '{$key_details['key_id']}'"; 114 | mysql_query($sql); 115 | 116 | $output['success'] = true; 117 | $output['message'] = $instance->lang('keycancelled'); 118 | } 119 | else 120 | { 121 | if($key_details['key_cancelled']) $errors[] = $instance->lang('keyalreadycancelled'); 122 | if(!$key_details['key_clicks_remained']) $errors[] = $instance->lang('keyfullyused'); 123 | if($key_details['key_expire'] <= time()) $errors[] = $instance->lang('keyexpired'); 124 | } 125 | } 126 | else 127 | { 128 | $output['errormessages'][] = $instance->lang('invalidkey'); 129 | } 130 | 131 | return $output; 132 | } 133 | 134 | public function reactivate() 135 | { 136 | $output = array('success' => false, 'message' => '', 'data' => array()); 137 | 138 | $id = csfmanager::request_var('id', 0); 139 | 140 | $instance = csfmanager::getInstance(); 141 | 142 | $sql = "SELECT * 143 | FROM mod_csfmanager_allow_keys 144 | WHERE key_id = '{$id}'"; 145 | $result = mysql_query($sql); 146 | $key_details = mysql_fetch_assoc($result); 147 | 148 | if($key_details) 149 | { 150 | if(!$key_details['key_cancelled'] && $key_details['key_clicks_remained'] && $key_details['key_expire'] > time()) 151 | { 152 | $sql = "UPDATE mod_csfmanager_allow_keys 153 | SET key_cancelled = 0 154 | WHERE key_id = '{$key_details['key_id']}'"; 155 | mysql_query($sql); 156 | 157 | $output['success'] = true; 158 | $output['message'] = $instance->lang('keyreactivated'); 159 | } 160 | else 161 | { 162 | if($key_details['key_cancelled']) $errors[] = $instance->lang('keyalreadycancelled'); 163 | if(!$key_details['key_clicks_remained']) $errors[] = $instance->lang('keyfullyused'); 164 | if($key_details['key_expire'] <= time()) $errors[] = $instance->lang('keyexpired'); 165 | } 166 | } 167 | else 168 | { 169 | $output['errormessages'][] = $instance->lang('invalidkey'); 170 | } 171 | 172 | return $output; 173 | } 174 | 175 | public function resend() 176 | { 177 | global $CONFIG; 178 | 179 | $output = array('success' => false, 'message' => '', 'data' => array()); 180 | 181 | $id = csfmanager::request_var('id', 0); 182 | 183 | $instance = csfmanager::getInstance(); 184 | 185 | $sql = "SELECT k.*, c.firstname, c.lastname 186 | FROM mod_csfmanager_allow_keys as k 187 | INNER JOIN tblclients as c 188 | ON c.id = k.user_id 189 | WHERE k.key_id = '{$id}' 190 | AND k.key_cancelled = 0 191 | AND k.key_clicks_remained > 0 192 | AND k.key_expire > '" . time() . "'"; 193 | $result = mysql_query($sql); 194 | $key_details = mysql_fetch_assoc($result); 195 | 196 | if($key_details) 197 | { 198 | $sysurl = ($CONFIG["SystemSSLURL"] ? $CONFIG["SystemSSLURL"] : $CONFIG["SystemURL"]); 199 | $whitelist_url = "{$sysurl}/index.php?m=csfmanager&action=allow&key={$key_details['key_hash']}"; 200 | $cancel_url = "{$sysurl}/index.php?m=csfmanager&action=cancel&key={$key_details['key_hash']}"; 201 | 202 | $sendmail = csfmanager::sendCSFmail('CSF Manager Whitelist by Email', $key_details['key_email'], $key_details['key_recipient'], array( 203 | 'emailfullname' => $key_details['key_recipient'], 204 | 'firstname' => $key_details['firstname'], 205 | 'lastname' => $key_details['lastname'], 206 | 'whitelist_url' => $whitelist_url, 207 | 'valid_days' => ceil(($key_details['key_expire'] - time()) / (60 * 60 * 24)), 208 | 'valid_clicks' => $key_details['key_clicks_remained'], 209 | 'cancel_url' => $cancel_url, 210 | 'signature' => nl2br(html_entity_decode($CONFIG['Signature'])), 211 | )); 212 | 213 | if($sendmail['success']) 214 | { 215 | $output['success'] = true; 216 | $output['message'] = $instance->lang('emailsent'); 217 | } 218 | else 219 | { 220 | $output['errormessages'][] = $sendmail['message']; 221 | } 222 | } 223 | else 224 | { 225 | $output['errormessages'][] = $instance->lang('invalidkey'); 226 | } 227 | 228 | return $output; 229 | } 230 | } 231 | 232 | ?> -------------------------------------------------------------------------------- /csfmanager/views/broadcast_apply.php: -------------------------------------------------------------------------------- 1 | true, 'message' => '', 'data' => array()); 22 | 23 | $instance = csfmanager::getInstance(); 24 | 25 | $output['data']['selectedservers'] = csfmanager::request_var('selectedservers', array()); 26 | $output['data']['form_version'] = csfmanager::request_var('formversion'); 27 | 28 | if(sizeof($output['data']['selectedservers'])) 29 | { 30 | $output['success'] = false; 31 | $output['message'] = $instance->lang('noserversselected'); 32 | return $output; 33 | } 34 | 35 | $output['data']['servers'] = array(); 36 | 37 | $sql = "SELECT * 38 | FROM tblservers 39 | " . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : ''); 40 | $result = mysql_query($sql); 41 | 42 | while($server_details = mysql_fetch_assoc($result)) 43 | { 44 | $output['data']['servers'][$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash))); 45 | } 46 | mysql_free_result($result); 47 | 48 | $config_vars = csfmanager::request_var('configVars', array()); 49 | 50 | $output['data']['vars'] = array(); 51 | 52 | foreach($config_vars as $key => $value) 53 | { 54 | if(trim($value) != '**USE-CURRENT**') $output['data']['vars'][$key] = $value; 55 | } 56 | 57 | $templateserver = csfmanager::request_var('templateserver', 0); 58 | 59 | if(!isset($output['data']['servers'][$templateserver])) 60 | { 61 | $output['success'] = false; 62 | $output['message'] = $instance->lang('notemplateserverselected'); 63 | return $output; 64 | } 65 | 66 | $output['data']['server_details'] = $output['data']['servers'][$templateserver]; 67 | 68 | return $output; 69 | } 70 | } 71 | 72 | ?> -------------------------------------------------------------------------------- /csfmanager/views/broadcast_default.php: -------------------------------------------------------------------------------- 1 | true, 'message' => '', 'data' => array()); 22 | 23 | $instance = csfmanager::getInstance(); 24 | 25 | $output['data']['servers'] = array(); 26 | 27 | $sql = "SELECT * 28 | FROM tblservers 29 | " . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : ''); 30 | $result = mysql_query($sql); 31 | 32 | while($server_details = mysql_fetch_assoc($result)) 33 | { 34 | $output['data']['servers'][$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash))); 35 | } 36 | mysql_free_result($result); 37 | 38 | return $output; 39 | } 40 | } 41 | 42 | ?> -------------------------------------------------------------------------------- /csfmanager/views/broadcast_selectservers.php: -------------------------------------------------------------------------------- 1 | true, 'message' => '', 'data' => array()); 22 | 23 | $instance = csfmanager::getInstance(); 24 | 25 | $output['data']['servers'] = array(); 26 | 27 | $sql = "SELECT * 28 | FROM tblservers 29 | " . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : ''); 30 | $result = mysql_query($sql); 31 | 32 | while($server_details = mysql_fetch_assoc($result)) 33 | { 34 | $output['data']['servers'][$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash))); 35 | } 36 | mysql_free_result($result); 37 | 38 | $templateserver = csfmanager::request_var('templateserver', 0); 39 | 40 | if(!isset($output['data']['servers'][$templateserver])) 41 | { 42 | $output['success'] = false; 43 | $output['message'] = $instance->lang('notemplateserverselected'); 44 | return $output; 45 | } 46 | 47 | $output['data']['server_details'] = $output['data']['servers'][$templateserver]; 48 | $output['data']['dontusevalues'] = csfmanager::request_var('dontusevalues', 0, array(0,1)); 49 | 50 | return $output; 51 | } 52 | } 53 | 54 | ?> -------------------------------------------------------------------------------- /csfmanager/views/broadcast_send.php: -------------------------------------------------------------------------------- 1 | true, 'message' => '', 'data' => array()); 22 | 23 | $instance = csfmanager::getInstance(); 24 | 25 | $server_id = csfmanager::request_var('server_id', 0); 26 | $new_vars = csfmanager::request_var('new_vars', array()); 27 | 28 | if(!is_array($new_vars) || !sizeof($new_vars)) 29 | { 30 | echo json_encode(array( 31 | 'success' => true, 32 | 'message' => $instance->lang('nochanges'), 33 | 'new_vars' => $new_vars, 34 | )); 35 | exit; 36 | } 37 | 38 | $form_version = csfmanager::request_var('formversion', ''); 39 | 40 | $output['data']['selectedservers'] = csfmanager::request_var('selectedservers', array()); 41 | 42 | if(sizeof($output['data']['selectedservers'])) 43 | { 44 | $output['success'] = false; 45 | $output['message'] = $instance->lang('noserversselected'); 46 | return $output; 47 | } 48 | 49 | $output['data']['servers'] = array(); 50 | 51 | $sql = "SELECT * 52 | FROM tblservers 53 | " . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : ''); 54 | $result = mysql_query($sql); 55 | 56 | while($server_details = mysql_fetch_assoc($result)) 57 | { 58 | $output['data']['servers'][$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash))); 59 | } 60 | mysql_free_result($result); 61 | 62 | if(!isset($output['data']['servers'][$server_id])) 63 | { 64 | $output['success'] = false; 65 | $output['message'] = $instance->lang('notemplateserverselected'); 66 | return $output; 67 | } 68 | 69 | $output['data']['server_details'] = $output['data']['servers'][$server_id]; 70 | 71 | $response = csfmanager::checkCsfAlive($output['data']['server_details']); 72 | 73 | if(!$response['success'] || !$response['version']) 74 | { 75 | echo json_encode(array( 76 | 'success' => false, 77 | 'message' => !$response['success'] ? $response['message'] : $instance->lang('noversionwasfound'), 78 | 'new_vars' => $new_vars, 79 | )); 80 | } 81 | 82 | if($form_version != $response['version']) 83 | { 84 | echo json_encode(array( 85 | 'success' => false, 86 | 'message' => sprintf($instance->lang('versionmismatch'), $form_version, $response['version']), 87 | 'new_vars' => $new_vars, 88 | )); 89 | } 90 | 91 | $cgifile = $response['cgifile']; 92 | 93 | $cpanel = new csfmanager_cpanel; 94 | 95 | $password = $output['data']['server_details']['password'] ? $output['data']['server_details']['password'] : $output['data']['server_details']['accesshash']; 96 | $password_type = $output['data']['server_details']['password'] ? 'plain' : 'hash'; 97 | 98 | $cpanel->setServer($output['data']['server_details']['hostname'], $output['data']['server_details']['username'], $password, $password_type); 99 | 100 | $response = $cpanel->request($cgifile, array( 101 | 'action' => 'conf', 102 | )); 103 | 104 | if(!$response['success']) 105 | { 106 | echo json_encode(array( 107 | 'success' => false, 108 | 'message' => $response['message'], 109 | 'new_vars' => $new_vars, 110 | )); 111 | } 112 | 113 | $oldVars = array(); 114 | 115 | $html = str_get_dom($response['output']); 116 | 117 | foreach($html('.virtualpage') as $div) 118 | { 119 | foreach($div('input') as $input) 120 | { 121 | $oldVars[$input->name] = $input->value; 122 | } 123 | } 124 | 125 | $configVars = array_merge($oldVars, $new_vars); 126 | 127 | $response = $cpanel->request($cgifile, array_merge(array( 128 | 'action' => 'saveconf', 129 | ), $configVars)); 130 | 131 | if($response['success']) 132 | { 133 | echo json_encode(array( 134 | 'success' => false, 135 | 'message' => $response['message'], 136 | 'new_vars' => $new_vars, 137 | )); 138 | } 139 | 140 | $response = $cpanel->request($cgifile, array( 141 | 'action' => 'restartboth', 142 | )); 143 | 144 | if($response['success']) 145 | { 146 | echo json_encode(array( 147 | 'success' => true, 148 | 'message' => $instance->lang('updatedsuccessfully'), 149 | 'new_vars' => $new_vars, 150 | )); 151 | } 152 | else 153 | { 154 | echo json_encode(array( 155 | 'success' => false, 156 | 'message' => $response['message'], 157 | 'new_vars' => $new_vars, 158 | )); 159 | } 160 | 161 | return $output; 162 | } 163 | } 164 | 165 | ?> -------------------------------------------------------------------------------- /csfmanager/views/broadcast_setconfig.php: -------------------------------------------------------------------------------- 1 | true, 'message' => '', 'data' => array()); 26 | 27 | $instance = csfmanager::getInstance(); 28 | 29 | $output['data']['selectedservers'] = csfmanager::request_var('selectedservers', array()); 30 | 31 | if(!sizeof($output['data']['selectedservers'])) 32 | { 33 | $output['success'] = false; 34 | $output['message'] = $instance->lang('noserversselected'); 35 | return $output; 36 | } 37 | 38 | $output['data']['servers'] = array(); 39 | 40 | $sql = "SELECT * 41 | FROM tblservers 42 | " . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : ''); 43 | $result = mysql_query($sql); 44 | 45 | while($server_details = mysql_fetch_assoc($result)) 46 | { 47 | $output['data']['servers'][$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash))); 48 | } 49 | mysql_free_result($result); 50 | 51 | $templateserver = csfmanager::request_var('templateserver', 0); 52 | 53 | if(!isset($output['data']['servers'][$templateserver])) 54 | { 55 | $output['success'] = false; 56 | $output['message'] = $instance->lang('notemplateserverselected'); 57 | return $output; 58 | } 59 | 60 | $output['data']['server_details'] = $output['data']['servers'][$templateserver]; 61 | $output['data']['dontusevalues'] = csfmanager::request_var('dontusevalues', 0, array(0,1)); 62 | 63 | $response = csfmanager::checkCsfAlive($output['data']['server_details']); 64 | 65 | if(!$response['success'] || !$response['version']) 66 | { 67 | $output['success'] = false; 68 | if(!$response['success']) $output['message'] = $response['message']; 69 | if(!$response['version']) $output['message'] = $instance->lang('noversionwasfound'); 70 | return $output; 71 | } 72 | 73 | $output['data']['formversion'] = $response['version']; 74 | $cgifile = $response['cgifile']; 75 | 76 | $cpanel = new csfmanager_cpanel; 77 | 78 | $password = $output['data']['server_details']['password'] ? $output['data']['server_details']['password'] : $output['data']['server_details']['accesshash']; 79 | $password_type = $output['data']['server_details']['password'] ? 'plain' : 'hash'; 80 | 81 | $cpanel->setServer($output['data']['server_details']['hostname'], $output['data']['server_details']['username'], $password, $password_type); 82 | 83 | $response = $cpanel->request($cgifile, array( 84 | 'action' => 'conf', 85 | )); 86 | 87 | if(!$response['success']) 88 | { 89 | $output['success'] = false; 90 | $output['message'] = $response['message']; 91 | return $output; 92 | } 93 | 94 | $html = str_get_dom($response['output']); 95 | 96 | $output['data']['configForm'] = ''; 97 | 98 | foreach($html('.virtualpage') as $div) 99 | { 100 | foreach($div('input') as $input) 101 | { 102 | $input->name = "configVars[{$input->name}]"; 103 | 104 | if($input->type == 'text') 105 | { 106 | if($output['data']['dontusevalues']) $input->value = '**USE-CURRENT**'; 107 | if(isset($input->size) && intval($input->size) < 20) $input->size = '20'; 108 | } 109 | 110 | unset($input->onkeyup, $input->onfocus, $input->disabled); 111 | } 112 | 113 | foreach($div('select') as $select) 114 | { 115 | echo "
";
116 | 				print_r($select('option'));
117 | 				exit;
118 | 			}
119 | 			
120 | 			$output['data']['configForm'] .= $div->html();
121 | 		} 
122 | 
123 | 		return $output;
124 | 	}
125 | }
126 | 
127 | ?>


--------------------------------------------------------------------------------
/csfmanager/views/firewall_default.php:
--------------------------------------------------------------------------------
 1 |  true, 'message' => '', 'data' => array());
22 | 		
23 | 		$instance = csfmanager::getInstance();
24 | 		
25 | 		$output['data']['servers'] = array();
26 | 		
27 | 		$sql = "SELECT *
28 | 			FROM tblservers
29 | 			" . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : '');
30 | 		$result = mysql_query($sql);
31 | 		
32 | 		while($server_details = mysql_fetch_assoc($result))
33 | 		{
34 | 			$output['data']['servers'][$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash)));
35 | 		}
36 | 		mysql_free_result($result);
37 | 				
38 | 		return $output;
39 | 	}
40 | }
41 | 
42 | ?>


--------------------------------------------------------------------------------
/csfmanager/views/firewall_manage.php:
--------------------------------------------------------------------------------
 1 |  true, 'message' => '', 'data' => array());
22 | 		
23 | 		$instance = csfmanager::getInstance();
24 | 		
25 | 		$server_id = csfmanager::request_var('server_id', 0);
26 | 		
27 | 		$servers = array();
28 | 		
29 | 		$sql = "SELECT *
30 | 			FROM tblservers
31 | 			" . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : '');
32 | 		$result = mysql_query($sql);
33 | 		
34 | 		while($server_details = mysql_fetch_assoc($result))
35 | 		{
36 | 			$servers[$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash)));
37 | 		}
38 | 		mysql_free_result($result);
39 | 		
40 | 		$server_details = $servers[$server_id];
41 | 		
42 | 		if(!isset($server_details))
43 | 		{
44 | 			$output['success'] = false;
45 | 			$output['message'] = "The provided server not exists";
46 | 			return $output;
47 | 		}
48 | 				
49 | 		$password = $server_details['password'] ? $server_details['password'] : $server_details['accesshash'];
50 | 		$password_type = $server_details['password'] ? 'plain' : 'hash';
51 | 		
52 | 		$cpanel = new csfmanager_cpanel;
53 | 		
54 | 		$cpanel->setServer(($server_details['ipaddress'] ? $server_details['ipaddress'] : $server_details['hostname']), $server_details['username'], $password, $password_type);
55 | 		
56 | 		$response = $cpanel->whm('create_user_session', array(
57 | 			'user'		=> $server_details['username'],
58 | 			'service'	=> 'whostmgrd',
59 | 		));
60 | 
61 | 		if(!$response['success'] || !$response['output']['url'])
62 | 		{
63 | 			$output['success'] = false;
64 | 			$output['message'] = "Unable to create cPanel session." . ($response['message'] ? " cPanel Error: {$response['success']}" : '');
65 | 			return $output;
66 | 		}
67 | 
68 | 		$output['data']['iframe_url'] = $response['output']['url'];
69 | 		$output['data']['server_details'] = $server_details;
70 | 		
71 | 		return $output;
72 | 	}
73 | }
74 | 
75 | ?>


--------------------------------------------------------------------------------
/csfmanager/views/generatekey_default.php:
--------------------------------------------------------------------------------
  1 |  true, 'message' => '', 'data' => array());
 22 | 
 23 | 		$instance = csfmanager::getInstance();
 24 | 		
 25 | 		$output['data']['generate'] = csfmanager::request_var('generate', array());
 26 | 		$output['data']['servers'] = array();
 27 | 		
 28 | 		$sql = "SELECT *
 29 | 			FROM tblservers
 30 | 			" . (trim($instance->getConfig('servers', '')) ? "WHERE id IN (" . trim($instance->getConfig('servers', '')) . ")" : '');
 31 | 		$result = mysql_query($sql);
 32 | 		
 33 | 		while($server_details = mysql_fetch_assoc($result))
 34 | 		{
 35 | 			$output['data']['servers'][$server_details['id']] = array_merge($server_details, array('password' => decrypt($server_details['password'], $cc_encryption_hash)));
 36 | 		}
 37 | 		mysql_free_result($result);
 38 | 		
 39 | 		$output['data']['clients'] = array();
 40 | 		
 41 | 		$sql = "SELECT c.*, h.domain, p.id as product_id, s.id as server_id, h.id as hosting_id
 42 | 			FROM tblclients as c
 43 | 			INNER JOIN tblhosting as h
 44 | 			ON h.userid = c.id
 45 | 			INNER JOIN tblproducts as p
 46 | 			ON p.id = h.packageid
 47 | 			INNER JOIN tblservers as s
 48 | 			ON s.id = h.server
 49 | 			WHERE c.status = 'Active'
 50 | 			AND h.domainstatus = 'Active'
 51 | 			" . (trim($instance->getConfig('servers', '')) ? "AND s.id IN (" . trim($instance->getConfig('servers', '')) . ")" : '') . "
 52 | 			AND p.type IN ('hostingaccount','reselleraccount','server')
 53 | 			ORDER BY c.firstname ASC, c.lastname ASC, c.id ASC";
 54 | 		$result = mysql_query($sql);
 55 | 		
 56 | 		while($client_details = mysql_fetch_assoc($result))
 57 | 		{                     
 58 | 			$output['data']['clients'][$client_details['id']] = $client_details;
 59 | 		}
 60 | 		mysql_free_result($result);
 61 | 		
 62 | 		return $output;
 63 | 	}
 64 | 
 65 | 	public function create()
 66 | 	{	
 67 | 		global $cc_encryption_hash, $instance, $CONFIG;
 68 | 		
 69 | 		$output = $this->_default();
 70 | 		if(!$output['success']) return $output;
 71 | 		$output['success'] = false;
 72 | 
 73 | 		$instance = csfmanager::getInstance();
 74 | 
 75 | 		$client_id = intval($output['data']['generate']['clientid']) ? intval($output['data']['generate']['clientid']) : intval($output['data']['generate']['client']);
 76 | 
 77 | 		if($output['data']['generate']['recipient'] && $output['data']['generate']['email'] && csfmanager::csfValidateEmail($output['data']['generate']['email']) && $client_id && isset($output['data']['clients'][$client_id]) && intval($output['data']['generate']['server']) && isset($output['data']['servers'][$output['data']['generate']['server']]))
 78 | 		{
 79 | 			$hashkey = md5($output['data']['generate']['email'] . rand() . time());
 80 | 			$sysurl = ($CONFIG["SystemSSLURL"] ? $CONFIG["SystemSSLURL"] : $CONFIG["SystemURL"]);
 81 | 			$whitelist_url = "{$sysurl}/index.php?m=csfmanager&action=allow&key={$hashkey}";
 82 | 			$cancel_url = "{$sysurl}/index.php?m=csfmanager&action=cancel&key={$hashkey}";
 83 | 			$valid_days = 365;
 84 | 			$valid_clicks = 10;
 85 | 	
 86 | 			$sendmail = csfmanager::sendCSFmail('CSF Manager Whitelist by Email', $output['data']['generate']['email'], $output['data']['generate']['recipient'], array(
 87 | 				'emailfullname'		=> $output['data']['generate']['recipient'],
 88 | 				'firstname'		=> $output['data']['clients'][$client_id]['firstname'],
 89 | 				'lastname'		=> $output['data']['clients'][$client_id]['lastname'],
 90 | 				'whitelist_url'		=> $whitelist_url,
 91 | 				'valid_days'		=> $valid_days,
 92 | 				'valid_clicks'		=> $valid_clicks,
 93 | 				'cancel_url'		=> $cancel_url,
 94 | 				'signature'		=> nl2br(html_entity_decode($CONFIG['Signature'])),
 95 | 			));
 96 | 	
 97 | 			if($sendmail['success'])
 98 | 			{
 99 | 				logActivity("Jetserver CSF Manager :: The admin sent allow ket to the recipient {$email} ({$fullname}) on behalf of Client ID: {$uid}");
100 | 	
101 | 				$sql = "INSERT INTO mod_csfmanager_allow_keys (`user_id`,`server_id`,`product_id`,`key_hash`,`key_recipient`,`key_email`,`key_clicks_remained`,`key_expire`) VALUES
102 | 					('{$client_id}','{$output['data']['clients'][$client_id]['server_id']}','{$output['data']['clients'][$client_id]['hosting_id']}','{$hashkey}','{$output['data']['generate']['recipient']}','{$output['data']['generate']['email']}',{$valid_clicks},'" . (time() + (60 * 60 * 24 * $valid_days)) . "')";
103 | 				mysql_query($sql);
104 | 	
105 | 				$output['success'] = true;
106 | 				$output['message'] = $instance->lang('emailsent');
107 | 			}
108 | 			else
109 | 			{
110 | 				$output['errormessages'][] = $sendmail['message'];
111 | 			}
112 | 		}
113 | 		else
114 | 		{
115 | 			if(!$output['data']['generate']['recipient']) $output['errormessages'][] = $instance->lang('emptyrecipientname');
116 | 			if(!$output['data']['generate']['email']) $output['errormessages'][] = $instance->lang('emptyrecipientemail');
117 | 			if($output['data']['generate']['email'] && !csfValidateEmail($generate['email'])) $output['errormessages'][] = $instance->lang('invalidrecipientemail');
118 | 			if(!$client_id) $output['errormessages'][] = $instance->lang('emptyclient');
119 | 			if($client_id && !isset($output['data']['clients'][$client_id])) $output['errormessages'][] = $instance->lang('invalidclient');
120 | 			if(!intval($output['data']['generate']['server'])) $output['errormessages'][] = $instance->lang('emptyserver');
121 | 			if(intval($output['data']['generate']['server']) && !isset($output['data']['servers'][$output['data']['generate']['server']])) $output['errormessages'][] = $instance->lang('invalidserver');
122 | 		}
123 | 			
124 | 		return $output;
125 | 	}
126 | }
127 | 
128 | ?>


--------------------------------------------------------------------------------
/csfmanager/views/settings_default.php:
--------------------------------------------------------------------------------
 1 |  true, 'message' => '', 'data' => array());
22 | 
23 | 		$instance = csfmanager::getInstance();
24 | 		
25 | 		$output['data']['servers'] = array();
26 | 		
27 | 		$sql = "SELECT *
28 | 			FROM tblservers
29 | 			WHERE hostname != ''
30 | 			ORDER BY hostname ASC";
31 | 		$result = mysql_query($sql);
32 | 		
33 | 		while($server_details = mysql_fetch_assoc($result))
34 | 		{
35 | 			$output['data']['servers'][$server_details['id']] = array_merge(array('selected' => in_array($server_details['id'], explode(',', $instance->getConfig('servers'))) ? true : false), $server_details);
36 | 		}
37 | 		mysql_free_result($result);
38 | 
39 | 		return $output;
40 | 	}
41 | 
42 | 	public function save()
43 | 	{	
44 | 		global $cc_encryption_hash, $instance;
45 | 		
46 | 		$output = $this->_default();
47 | 		$output['success'] = false;
48 | 
49 | 		$instance = csfmanager::getInstance();
50 | 
51 | 		$config_values = csfmanager::request_var('config', array());
52 | 				
53 | 		if(is_array($config_values) && sizeof($config_values))
54 | 		{
55 | 			foreach($config_values as $config_name => $config_value)
56 | 			{
57 | 				$current_value = $instance->getConfig($config_name, null);
58 | 				
59 | 				if(!isset($current_value)) continue;
60 | 		
61 | 				if($config_name == 'allowlength') $config_value = intval($config_value);
62 | 				if($config_name == 'allowlength_type') $config_value = in_array($config_value, array('seconds','minutes','hours','days')) ? $config_value : 'days';
63 | 		
64 | 				$instance->setConfig($config_name, $config_value);
65 | 			}
66 | 
67 | 			$selectedservers = csfmanager::request_var('selectedservers', array());
68 | 			
69 | 			if(is_array($selectedservers) && sizeof($selectedservers))
70 | 			{
71 | 				$newservers = array();
72 | 				
73 | 				foreach($selectedservers as $server_id)
74 | 				{
75 | 					if(isset($output['data']['servers'][$server_id])) $newservers[] = $server_id;
76 | 				}
77 | 		
78 | 				$instance->setConfig('servers', (sizeof($newservers) ? implode(',', $newservers) : ''));
79 | 			}
80 | 			else
81 | 			{
82 | 				$instance->setConfig('servers', '');
83 | 			}
84 | 		}
85 | 		
86 | 		$output['success'] = true;
87 | 		$output['message'] = $instance->lang('chagessaved');
88 | 		
89 | 		return $output;
90 | 	}
91 | }
92 | 
93 | ?>


--------------------------------------------------------------------------------