mirror of
https://gitea.invidious.io/iv-org/invidious.git
synced 2024-08-15 00:53:41 +00:00
Add config option to display source code URL in footer (#2450)
This commit is contained in:
parent
bfef9d4b6e
commit
adc12addfa
7 changed files with 66 additions and 26 deletions
|
@ -314,6 +314,11 @@ footer a {
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
footer span {
|
||||||
|
margin: 4px 0;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
/* keyframes */
|
/* keyframes */
|
||||||
|
|
||||||
@keyframes spin {
|
@keyframes spin {
|
||||||
|
|
|
@ -432,6 +432,15 @@ feed_threads: 1
|
||||||
##
|
##
|
||||||
#cache_annotations: false
|
#cache_annotations: false
|
||||||
|
|
||||||
|
##
|
||||||
|
## Source code URL. If your instance is running a modfied source
|
||||||
|
## code, you MUST publish it somewhere and set this option.
|
||||||
|
##
|
||||||
|
## Accepted values: a string
|
||||||
|
## Default: <none>
|
||||||
|
##
|
||||||
|
#modified_source_code_url: ""
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
|
|
|
@ -425,5 +425,11 @@
|
||||||
"Current version: ": "Current version: ",
|
"Current version: ": "Current version: ",
|
||||||
"next_steps_error_message": "After which you should try to: ",
|
"next_steps_error_message": "After which you should try to: ",
|
||||||
"next_steps_error_message_refresh": "Refresh",
|
"next_steps_error_message_refresh": "Refresh",
|
||||||
"next_steps_error_message_go_to_youtube": "Go to YouTube"
|
"next_steps_error_message_go_to_youtube": "Go to YouTube",
|
||||||
|
"footer_donate": "Donate: ",
|
||||||
|
"footer_documentation": "Documentation",
|
||||||
|
"footer_source_code": "Source code",
|
||||||
|
"footer_original_source_code": "Original source code",
|
||||||
|
"footer_modfied_source_code": "Modified Source code",
|
||||||
|
"adminprefs_modified_source_code_url_label": "URL to modified source code repository"
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,6 +97,10 @@ class Config
|
||||||
property hsts : Bool? = true # Enables 'Strict-Transport-Security'. Ensure that `domain` and all subdomains are served securely
|
property hsts : Bool? = true # Enables 'Strict-Transport-Security'. Ensure that `domain` and all subdomains are served securely
|
||||||
property disable_proxy : Bool? | Array(String)? = false # Disable proxying server-wide: options: 'dash', 'livestreams', 'downloads', 'local'
|
property disable_proxy : Bool? | Array(String)? = false # Disable proxying server-wide: options: 'dash', 'livestreams', 'downloads', 'local'
|
||||||
|
|
||||||
|
# URL to the modified source code to be easily AGPL compliant
|
||||||
|
# Will display in the footer, next to the main source code link
|
||||||
|
property modified_source_code_url : String? = nil
|
||||||
|
|
||||||
@[YAML::Field(converter: Preferences::FamilyConverter)]
|
@[YAML::Field(converter: Preferences::FamilyConverter)]
|
||||||
property force_resolve : Socket::Family = Socket::Family::UNSPEC # Connect to YouTube over 'ipv6', 'ipv4'. Will sometimes resolve fix issues with rate-limiting (see https://github.com/ytdl-org/youtube-dl/issues/21729)
|
property force_resolve : Socket::Family = Socket::Family::UNSPEC # Connect to YouTube over 'ipv6', 'ipv4'. Will sometimes resolve fix issues with rate-limiting (see https://github.com/ytdl-org/youtube-dl/issues/21729)
|
||||||
property port : Int32 = 3000 # Port to listen for connections (overrided by command line argument)
|
property port : Int32 = 3000 # Port to listen for connections (overrided by command line argument)
|
||||||
|
|
|
@ -200,6 +200,8 @@ module Invidious::Routes::PreferencesRoute
|
||||||
statistics_enabled ||= "off"
|
statistics_enabled ||= "off"
|
||||||
CONFIG.statistics_enabled = statistics_enabled == "on"
|
CONFIG.statistics_enabled = statistics_enabled == "on"
|
||||||
|
|
||||||
|
CONFIG.modified_source_code_url = env.params.body["modified_source_code_url"]?.try &.as(String)
|
||||||
|
|
||||||
File.write("config/config.yml", CONFIG.to_yaml)
|
File.write("config/config.yml", CONFIG.to_yaml)
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
|
|
@ -286,6 +286,11 @@
|
||||||
<label for="statistics_enabled"><%= translate(locale, "Report statistics: ") %></label>
|
<label for="statistics_enabled"><%= translate(locale, "Report statistics: ") %></label>
|
||||||
<input name="statistics_enabled" id="statistics_enabled" type="checkbox" <% if CONFIG.statistics_enabled %>checked<% end %>>
|
<input name="statistics_enabled" id="statistics_enabled" type="checkbox" <% if CONFIG.statistics_enabled %>checked<% end %>>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="pure-control-group">
|
||||||
|
<label for="modified_source_code_url"><%= translate(locale, "adminprefs_modified_source_code_url_label") %></label>
|
||||||
|
<input name="modified_source_code_url" id="modified_source_code_url" type="input" <% if CONFIG.modified_source_code_url %>checked<% end %>>
|
||||||
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<% if env.get? "user" %>
|
<% if env.get? "user" %>
|
||||||
|
|
|
@ -117,38 +117,47 @@
|
||||||
<footer>
|
<footer>
|
||||||
<div class="pure-g">
|
<div class="pure-g">
|
||||||
<div class="pure-u-1 pure-u-md-1-3">
|
<div class="pure-u-1 pure-u-md-1-3">
|
||||||
<a href="https://github.com/iv-org/invidious">
|
<span>
|
||||||
<%= translate(locale, "Released under the AGPLv3 on Github.") %>
|
<i class="icon ion-logo-github"></i>
|
||||||
</a>
|
<% if CONFIG.modified_source_code_url %>
|
||||||
|
<a href="https://github.com/iv-org/invidious"><%= translate(locale, "footer_original_source_code") %></a> /
|
||||||
|
<a href="<%= CONFIG.modified_source_code_url %>"><%= translate(locale, "footer_modfied_source_code") %></a>
|
||||||
|
<% else %>
|
||||||
|
<a href="https://github.com/iv-org/invidious"><%= translate(locale, "footer_source_code") %></a>
|
||||||
|
<% end %>
|
||||||
|
</span>
|
||||||
|
<span>
|
||||||
|
<i class="icon ion-ios-paper"></i>
|
||||||
|
<a href="https://github.com/iv-org/documentation"><%= translate(locale, "footer_documentation") %></a>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="pure-u-1 pure-u-md-1-3">
|
<div class="pure-u-1 pure-u-md-1-3">
|
||||||
<i class="icon ion-ios-wallet"></i>
|
<span>
|
||||||
BTC: <a href="bitcoin:bc1qfhe7rq3lqzuayzjxzyt9waz9ytrs09kla3tsgr">bc1qfhe7rq3lqzuayzjxzyt9waz9ytrs09kla3tsgr</a>
|
<a href="https://github.com/iv-org/invidious/blob/master/LICENSE"><%= translate(locale, "Released under the AGPLv3 on Github.") %></a>
|
||||||
|
</span>
|
||||||
|
<span>
|
||||||
|
<i class="icon ion-logo-javascript"></i>
|
||||||
|
<a rel="jslicense" href="/licenses"><%= translate(locale, "View JavaScript license information.") %></a>
|
||||||
|
</span>
|
||||||
|
<span>
|
||||||
|
<i class="icon ion-ios-paper"></i>
|
||||||
|
<a href="/privacy"><%= translate(locale, "View privacy policy.") %></a>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="pure-u-1 pure-u-md-1-3">
|
<div class="pure-u-1 pure-u-md-1-3">
|
||||||
<i class="icon ion-ios-wallet"></i>
|
<span>
|
||||||
XMR: <a href="monero:41nMCtek197boJtiUvGnTFYMatrLEpnpkQDmUECqx5Es2uX3sTKKWVhSL76suXsG3LXqkEJBrCZBgPTwJrDp1FrZJfycGPR">Click here</a>
|
<i class="icon ion-ios-wallet"></i>
|
||||||
</div>
|
<%= translate(locale, "footer_donate") %>
|
||||||
<div class="pure-u-1 pure-u-md-1-3">
|
<a href="bitcoin:bc1qfhe7rq3lqzuayzjxzyt9waz9ytrs09kla3tsgr">BTC</a> /
|
||||||
<a href="https://github.com/iv-org/documentation">Documentation</a>
|
<a href="monero:41nMCtek197boJtiUvGnTFYMatrLEpnpkQDmUECqx5Es2uX3sTKKWVhSL76suXsG3LXqkEJBrCZBgPTwJrDp1FrZJfycGPR">XMR</a>
|
||||||
</div>
|
</span>
|
||||||
<div class="pure-u-1 pure-u-md-1-3">
|
<span><%= translate(locale, "Current version: ") %> <%= CURRENT_VERSION %>-<%= CURRENT_COMMIT %> @ <%= CURRENT_BRANCH %></span>
|
||||||
<i class="icon ion-logo-javascript"></i>
|
|
||||||
<a rel="jslicense" href="/licenses">
|
|
||||||
<%= translate(locale, "View JavaScript license information.") %>
|
|
||||||
</a>
|
|
||||||
/
|
|
||||||
<i class="icon ion-ios-paper"></i>
|
|
||||||
<a href="/privacy">
|
|
||||||
<%= translate(locale, "View privacy policy.") %>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="pure-u-1 pure-u-md-1-3">
|
|
||||||
<i class="icon ion-logo-github"></i>
|
|
||||||
<%= translate(locale, "Current version: ") %> <%= CURRENT_VERSION %>-<%= CURRENT_COMMIT %> @ <%= CURRENT_BRANCH %>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="pure-u-1 pure-u-md-2-24"></div>
|
<div class="pure-u-1 pure-u-md-2-24"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Reference in a new issue