Difference between revisions of "MVC Templates"

Line 20: Line 20:
  
 
== Configure TCAdmin ==
 
== Configure TCAdmin ==
* Edit TCAdmin2\Monitor\TCAdminMonitor.exe.config. Add these lines under <appSettings> (update them if they already exist).
+
* Edit TCAdmin2\Monitor\TCAdminMonitor.exe.config or /home/tcadmin/Monitor/TCAdminMonitor.exe.config. Add these lines under <appSettings> (update them if they already exist).
 
  <add key="TCAdmin.Public.MVC" value="True" />
 
  <add key="TCAdmin.Public.MVC" value="True" />
 
  <add key="TCAdmin.Public.MVC.WebServicesPath" value="../ControlPanel.MVC" />
 
  <add key="TCAdmin.Public.MVC.WebServicesPath" value="../ControlPanel.MVC" />

Revision as of 21:36, 24 March 2019

Currently MVC templates are only supported on Windows. The MVC templates are currently in beta testing.

Features

  • The following features are configurable in the game settings:
    • Custom background images per game. Place the images in TCAdmin2\ControlPanel.MVC\Views\Default so they are used in all your custom themes.
    • Custom service home page template per game. (change whole layout of the service home page)
    • Custom status template per game. (change which information and ports are displayed)
    • Join URL
  • Responsive design.
  • Editable HTML templates.
    • Create a new theme in Settings > Themes. Set the type to MVC. A folder will be created in TCAdmin2\ControlPanel.MVC\Views where you can place your custom .cshtml and images.
    • Your custom template folder only needs to have the files that have been modified.
    • If a file doesn't exist in your custom template it will use the file from the default template. Use the same directory structure as the Default template.
    • You can safely add files to the default template folder but all the original files will be overwritten when you update TCAdmin.
    • To translate MVC templates go to Settings > Languages > select the language > Other Components > Resources.*.
MVCPreview1.png
MVCPreview2.png

Requirements

  • .NET 4.5 must be installed on your server. MVC templates will not work if you only have .NET 4.0 installed.
  • Install TCAdmin version 2.0.126.0 or greater.

Configure TCAdmin

  • Edit TCAdmin2\Monitor\TCAdminMonitor.exe.config or /home/tcadmin/Monitor/TCAdminMonitor.exe.config. Add these lines under <appSettings> (update them if they already exist).
<add key="TCAdmin.Public.MVC" value="True" />
<add key="TCAdmin.Public.MVC.WebServicesPath" value="../ControlPanel.MVC" />
  • Important for Linux users: Https is not supported by the built in web server when "TCAdmin.Public.MVC" is set to True. To use https you must configure your control panel with Nginx.
  • Restart the monitor service.

Update the WHMCS module (optional)

Make a backup of your /whmcs/modules/servers/tcadmin2_advanced/tcadmin2_advanced.php and replace it with this file. This module has the links updated to work with the MVC template format.

File:Tcadmin2 advanced mvc.zip

Nginx configuration (optional)

Configure Nginx with these instructions but use this default.conf instead of one provided in that tutorial: Configure_the_TCAdmin_website_to_run_with_Nginx If your control panel website was configured with a certificate you must copy the lines starting with ssl_certificate and ssl_certificate_key from the previous configuration.

upstream tcadmin-fcgi {
        ip_hash;
        server unix:/home/tcadmin/Temp/fastcgi-socket-1;
}

upstream tcadmin-fcgi-mvc {
        ip_hash;
        server unix:/home/tcadmin/Temp/fastcgi-socket-mvc-1;
}

server {
        #the following line is required if you want to configure with Let's Encrypt
        #server_name tcadmin.yourdomain.com;
        fastcgi_temp_path /home/tcadmin/Temp 1 2;
        client_body_temp_path /home/tcadmin/Temp 1 2;
        listen   8880;
        #access_log   /home/tcadmin/Logs/nginx.log;
        index index.html index.htm default.aspx Default.aspx;

        #Support for Let's encrypt tools
        location /.well-known {
               try_files $uri $uri/ =404;
        }

        #Everything else served by fastcgi server
        location / {
               fastcgi_ignore_client_abort on;
               fastcgi_pass tcadmin-fcgi-mvc;
               include fastcgi_params;
               fastcgi_split_path_info ^(.+\.as[pmh]x)(.*)$;
               fastcgi_param PATH_INFO $fastcgi_path_info;
               fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
               fastcgi_keep_conn off;
               fastcgi_buffering off;
               gzip            off;
               client_max_body_size 100m;
       }

        #Everything else served by fastcgi server
        location /Aspx {
               fastcgi_ignore_client_abort on;
               fastcgi_index Default.aspx;
               fastcgi_pass tcadmin-fcgi;
               include fastcgi_params;
               fastcgi_split_path_info ^(.+\.as[pmh]x)(.*)$;
               fastcgi_param PATH_INFO $fastcgi_path_info;
               fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
               fastcgi_keep_conn off;
               fastcgi_buffering off;
               gzip            off;
               client_max_body_size 100m;
       }
}

IIS configuration (optional)

Going back to the classic ASP.NET themes

If you want to go back to the classic ASP.NET themes:

  • Edit TCAdmin2\Monitor\TCAdminMonitor.exe.config and set the value of TCAdmin.Public.MVC to False
  • Restart the monitor.
Retrieved from "https://help.tcadmin.com/index.php?title=MVC_Templates&oldid=1618"