<?php /** * DNS table view. * * @since 2.0.0 */ ?> <div id="wu-dns-table" class="wu-widget-list-table wu-advanced-filters wu--m-3 wu-mt-2 wu--mb-3 wu-border-0 wu-border-t wu-border-solid wu-border-gray-400"> <table class="wp-list-table widefat fixed striped wu-border-t-0" v-cloak> <thead> <tr> <th class="wu-w-4/12"><?php _e('Host', 'wp-ultimo'); ?></th> <th class="wu-w-2/12"><?php _e('Type', 'wp-ultimo'); ?></th> <th class="wu-w-4/12"><?php _e('IP / Target', 'wp-ultimo'); ?></th> <th class="wu-w-2/12"><?php _e('TTL', 'wp-ultimo'); ?></th> </tr> </thead> <tbody v-if="loading"> <tr> <td colspan="4"> <?php _e('Loading DNS entries...', 'wp-ultimo'); ?> </td> </tr> </tbody> <tbody v-if="!loading && error"> <tr> <td colspan="4"> <div class="wu-mt-0 wu-p-4 wu-bg-red-100 wu-border wu-border-solid wu-border-red-200 wu-rounded-sm wu-text-red-500" v-html="error[0].message"></div> </td> </tr> </tbody> <tbody v-if="!loading && !error"> <tr v-for="dns in results.entries"> <td>{{ dns.host }}<span v-html="dns.tag" v-if="dns.tag"></span></td> <td>{{ dns.type }}</td> <td>{{ dns.data }}</td> <td>{{ dns.ttl }}</td> </tr> <tr v-for="dns in results.auth"> <td>{{ dns.host }}<span v-html="dns.tag" v-if="dns.tag"></span></td> <td>{{ dns.type }}</td> <td>{{ dns.data }}</td> <td>{{ dns.ttl }}</td> </tr> <tr v-for="dns in results.additional"> <td>{{ dns.host }}<span v-html="dns.tag" v-if="dns.tag"></span></td> <td>{{ dns.type }}</td> <td>{{ dns.data }}</td> <td>{{ dns.ttl }}</td> </tr> <tr> <td colspan="2"><?php _e('Your Network IP', 'wp-ultimo'); ?></td> <td colspan="2" class="wu-text-left">{{ results.network_ip }}</td> </tr> </tbody> </table> </div> <script> (function($) { wu_dns_table = new Vue({ el: '#wu-dns-table', data: { error: null, results: {}, loading: true, }, updated() { this.$nextTick(function() { window.wu_initialize_tooltip(); }); } }) $(document).ready(function() { $.ajax({ url: ajaxurl, data: { action: 'wu_get_dns_records', domain: '<?php echo esc_js($domain->get_domain()); ?>', }, success: function(data) { Vue.set(wu_dns_table, 'loading', false); if (data.success) { Vue.set(wu_dns_table, 'results', data.data); } else { Vue.set(wu_dns_table, 'error', data.data); } // end if; }, }) }); })(jQuery); </script>