You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
www_admin/root/tt/peering_rewrite.tt

232 lines
9.8 KiB

<script type="text/javascript">
$(function() {
[% ids = ['icaller', 'icallee', 'ocaller', 'ocallee'] %]
[% FOREACH id = ids %]
$("#[% id %]list").sortable({
placeholder: 'ui-state-highlight',
forcePlaceholderSize: true,
stop: function(i) {
placeholder: 'ui-state-highlight'
$.ajax({
type: "POST",
url: "update_rewrite_priority",
data: $("#[% id %]list").sortable("serialize")
});
},
});
//$("#[% id %]").disableSelection();
[% END %]
});
</script>
<h2> Peer Host [% peer.peer_host.name %] </h2>
<a href="detail?group_id=[% peer.peer_host.group_id %]"><span class="button-back">Back</span></a><br /><br />
<div class="topsubmenu">
<ul>
<li class="selected"><a href="rewrite?peerid=[% peer.peer_host.id %]"><span>Rewrite Rules</span></a></li>
[% IF Catalyst.config.peer.preference_features %]
<li><a href="preferences?peerid=[% peer.peer_host.id %]"><span>Preferences</span></a></li>
[% END %]
</ul>
</div>
<div class="topsubmenudivider"> </div>
[% IF all_peers.size > 0 %]
[% UNLESS Catalyst.session.admin.read_only %]
<h3>Import Rewrite Rules from another host</h3>
[% IF messages.cpmsg %]<div class="success">[% messages.cpmsg %]</div>[% END %]
[% IF messages.cperr %]<div class="error">[% messages.cperr %]</div>[% END %]
<ul class="cleanlist">
<li class="ui-state-default">
<form action="/peering/copy_rewrite" method="post">
<div class="span-13">
<input type="hidden" name="peerid" value="[% peer.peer_host.id %]" />
<input type="hidden" name="grpid" value="[% peer.peer_host.group_id %]" />
Copy rules from peering host
<select title="string, peering host" size="1" name="rpeerid">
[% FOREACH cpeer = all_peers %]
<option value="[% cpeer.id %]">[% cpeer.name %]</option>
[% END %]
</select>
and
<select title="string, copy policy" size="1" name="policy">
<option selected>keep</option>
<option>delete</option>
</select>
existing rewrite rules.
</div>
<div class="span-1 last">
<button id="cpapply" class="button-save">Apply</button>
</div>
</form>
</li>
</ul>
<div class="hspace-20"></div>
[% END %]
[% END %]
[%
rewrites = [
{
header = 'Inbound Rewrite Rules for Caller',
id = 'icaller',
tag = 'if',
dir = 'in',
field = 'caller',
msg = messages.icallermsg,
err = messages.icallererr,
detail = icallerdetail,
rules = peer.rewrite_in_caller,
},
{
header = 'Inbound Rewrite Rules for Callee',
id = 'icallee',
tag = 'it',
dir = 'in',
field = 'callee',
msg = messages.icalleemsg,
err = messages.icalleeerr,
detail = icalleedetail,
rules = peer.rewrite_in_callee,
},
{
header = 'Outbound Rewrite Rules for Caller',
id = 'ocaller',
tag = 'of',
dir = 'out',
field = 'caller',
msg = messages.ocallermsg,
err = messages.ocallererr,
detail = ocallerdetail,
rules = peer.rewrite_out_caller,
},
{
header = 'Outbound Rewrite Rules for Callee',
id = 'ocallee',
tag = 'ot',
dir = 'out',
field = 'callee',
msg = messages.ocalleemsg,
err = messages.ocalleeerr,
detail = ocalleedetail,
rules = peer.rewrite_out_callee,
},
]
%]
[% FOREACH rw = rewrites %]
<h3 id="[% rw.id %]">[% rw.header %]</h3>
[% IF rw.msg %]<div class="success">[% rw.msg %]</div>[% END %]
[% IF rw.err %]<div class="error">[% rw.err %][% IF rw.detail %]<br/>[% rw.detail %][% END %]</div>[% END %]
<ul class="cleanlist">
<li class="ui-state-default">
<div class="span-1">&nbsp;</div>
<div class="span-4">Match Pattern</div>
<div class="span-4">Replacement Pattern</div>
<div class="span-4 append-3 last">Description</div>
</li>
</ul>
<ul id="[% rw.id %]list" class="cleanlist">
[% id = 0 %]
[% priority = 999 %]
[% FOREACH rule = rw.rules %]
[% priority = rule.priority %]
<li class="ui-state-default" id="rule_[% rule.id %]">
<div class="span-1"><span class='ui-icon ui-icon-arrowthick-2-n-s'></span></div>
[% IF rule.id == editid && !Catalyst.session.admin.read_only %]
<form action="/peering/edit_rewrite" method="post">
<input type="hidden" name="peerid" value="[% peer.peer_host.id %]" />
<input type="hidden" name="grpid" value="[% peer.peer_host.group_id %]" />
<input type="hidden" name="direction" value="[% rule.direction %]" />
<input type="hidden" name="field" value="[% rule.field %]" />
<input type="hidden" name="rewriteid" value="[% rule.id %]" />
<input type="hidden" name="priority" value="[% rule.priority %]" />
<div class="span-4">
<input type="text" size="15 id="addtxt" title="string, match pattern"
name="match_pattern" value="[% rule.match_pattern %]" />
</div>
<div class="span-4">
<input type="text" size="15" id="addtxt" title="string, replacement pattern"
name="replace_pattern" value="[% rule.replace_pattern %]" />
</div>
<div class="span-4 append-1">
<input type="text" size="15" id="addtxt" title="string, rewrite rule description"
name="description" value="[% rule.description %]" />
</div>
<div class="span-1">
<button class="button-save" id="[% rw.tag %]save[% id %]">Save</button>
</div>
</form>
<div class="prepend-1 span-1 last">
<a href="/peering/rewrite?peerid=[% peer.peer_host.id %]#[% rw.id %]"><span class="button-cancel">Cancel</span></a>
</div>
[% ELSE %]
<div class="span-4">[% rule.match_pattern %]</div>
<div class="span-4">[% rule.replace_pattern %]</div>
<div class="span-4 append-1">[% rule.description %]</div>
<div class="span-1">
[% UNLESS Catalyst.session.admin.read_only %]
<a href="/peering/rewrite?peerid=[% peer.peer_host.id %]&editid=[% rule.id %]#[% rw.id %]"><span class="button-edit">Edit</span></a>
[% END %]
</div>
<form action="/peering/delete_rewrite" method="post">
<input type="hidden" name="peerid" value="[% peer.peer_host.id %]" />
<input type="hidden" name="rewriteid" value="[% rule.id %]" />
<input type="hidden" name="direction" value="[% rule.direction %]" />
<input type="hidden" name="field" value="[% rule.field %]" />
<div class="prepend-1 span-1 last">
[% UNLESS Catalyst.session.admin.read_only %]
<button id="[% rw.tag %]del[% id %]" class="button-delete">Delete</button>
[% END %]
</div>
[% END %]
</form>
</li>
[% id = id + 1 %]
[% END %]
</ul>
[% UNLESS Catalyst.session.admin.read_only %]
<ul class="cleanlist">
<li class="ui-state-default">
<form action="/peering/create_rewrite" method="post">
<input type="hidden" name="grpid" value="[% peer.peer_host.group_id %]" />
<input type="hidden" name="peerid" value="[% peer.peer_host.id %]" />
<input type="hidden" name="direction" value="[% rw.dir %]" />
<input type="hidden" name="field" value="[% rw.field%]" />
<input type="hidden" name="priority" value="[% priority - 1 %]" />
<div class="span-1">&nbsp;</div>
<div class="span-4">
<input type="text" size="15" id="addtxt" title="string, match pattern"
name="match_pattern" value="" />
</div>
<div class="span-4">
<input type="text" size="15" id="addtxt" title="string, replacement pattern"
name="replace_pattern" value="" />
</div>
<div class="span-4 append-1">
<input type="text" size="15" id="addtxt" title="string, rule description"
name="description" value="" />
</div>
<div class="span-1 append-2 last">
<button class="button-add" id="[% rw.tag %]add">Add</button>
</div>
</form>
</li>
</ul>
<div class="hspace-20"></div>
[% END %]
[% END %]