mirror of
				https://github.com/go-gitea/gitea
				synced 2025-09-28 03:28:13 +00:00 
			
		
		
		
	Co-authored-by: KN4CK3R <admin@oldschoolhack.me> Co-authored-by: Lauris BH <lauris@nix.lv>
		
			
				
	
	
		
			72 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2017 The Gitea Authors. All rights reserved.
 | |
| // SPDX-License-Identifier: MIT
 | |
| 
 | |
| package repo
 | |
| 
 | |
| import (
 | |
| 	"context"
 | |
| 
 | |
| 	"code.gitea.io/gitea/models/db"
 | |
| 	"code.gitea.io/gitea/models/unit"
 | |
| 	"code.gitea.io/gitea/modules/log"
 | |
| 	"code.gitea.io/gitea/modules/setting"
 | |
| )
 | |
| 
 | |
| // ___________.__             ___________                     __
 | |
| // \__    ___/|__| _____   ___\__    ___/___________    ____ |  | __ ___________
 | |
| // |    |   |  |/     \_/ __ \|    |  \_  __ \__  \ _/ ___\|  |/ // __ \_  __ \
 | |
| // |    |   |  |  Y Y  \  ___/|    |   |  | \// __ \\  \___|    <\  ___/|  | \/
 | |
| // |____|   |__|__|_|  /\___  >____|   |__|  (____  /\___  >__|_ \\___  >__|
 | |
| // \/     \/                    \/     \/     \/    \/
 | |
| 
 | |
| // CanEnableTimetracker returns true when the server admin enabled time tracking
 | |
| // This overrules IsTimetrackerEnabled
 | |
| func (repo *Repository) CanEnableTimetracker() bool {
 | |
| 	return setting.Service.EnableTimetracking
 | |
| }
 | |
| 
 | |
| // IsTimetrackerEnabled returns whether or not the timetracker is enabled. It returns the default value from config if an error occurs.
 | |
| func (repo *Repository) IsTimetrackerEnabled() bool { // Notice: It will be used in template so don't remove directly
 | |
| 	return repo.IsTimetrackerEnabledCtx(db.DefaultContext)
 | |
| }
 | |
| 
 | |
| // IsTimetrackerEnabledCtx returns whether or not the timetracker is enabled. It returns the default value from config if an error occurs.
 | |
| func (repo *Repository) IsTimetrackerEnabledCtx(ctx context.Context) bool {
 | |
| 	if !setting.Service.EnableTimetracking {
 | |
| 		return false
 | |
| 	}
 | |
| 
 | |
| 	var u *RepoUnit
 | |
| 	var err error
 | |
| 	if u, err = repo.GetUnitCtx(ctx, unit.TypeIssues); err != nil {
 | |
| 		return setting.Service.DefaultEnableTimetracking
 | |
| 	}
 | |
| 	return u.IssuesConfig().EnableTimetracker
 | |
| }
 | |
| 
 | |
| // AllowOnlyContributorsToTrackTime returns value of IssuesConfig or the default value
 | |
| func (repo *Repository) AllowOnlyContributorsToTrackTime() bool {
 | |
| 	var u *RepoUnit
 | |
| 	var err error
 | |
| 	if u, err = repo.GetUnit(unit.TypeIssues); err != nil {
 | |
| 		return setting.Service.DefaultAllowOnlyContributorsToTrackTime
 | |
| 	}
 | |
| 	return u.IssuesConfig().AllowOnlyContributorsToTrackTime
 | |
| }
 | |
| 
 | |
| // IsDependenciesEnabled returns if dependencies are enabled and returns the default setting if not set.
 | |
| func (repo *Repository) IsDependenciesEnabled() bool {
 | |
| 	return repo.IsDependenciesEnabledCtx(db.DefaultContext)
 | |
| }
 | |
| 
 | |
| // IsDependenciesEnabledCtx returns if dependencies are enabled and returns the default setting if not set.
 | |
| func (repo *Repository) IsDependenciesEnabledCtx(ctx context.Context) bool {
 | |
| 	var u *RepoUnit
 | |
| 	var err error
 | |
| 	if u, err = repo.GetUnitCtx(ctx, unit.TypeIssues); err != nil {
 | |
| 		log.Trace("%s", err)
 | |
| 		return setting.Service.DefaultEnableDependencies
 | |
| 	}
 | |
| 	return u.IssuesConfig().EnableDependencies
 | |
| }
 |