mirror of
				https://gitlab.com/comunic/comunicmobile
				synced 2025-11-03 19:54:12 +00:00 
			
		
		
		
	Do not render survey pie chart which have not response
This commit is contained in:
		@@ -33,6 +33,9 @@ class Survey {
 | 
			
		||||
 | 
			
		||||
  bool get hasResponded => this.userChoice != null && this.userChoice > 0;
 | 
			
		||||
 | 
			
		||||
  bool get hasResponses =>
 | 
			
		||||
      this.choices.where((f) => f.responses > 0).length > 0;
 | 
			
		||||
 | 
			
		||||
  SurveyChoice get userResponse {
 | 
			
		||||
    if (!hasResponded) return null;
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -42,9 +42,7 @@ class _SurveyWidgetState extends State<SurveyWidget> {
 | 
			
		||||
          style: TextStyle(fontWeight: FontWeight.bold),
 | 
			
		||||
        ),
 | 
			
		||||
        _buildUserResponse(),
 | 
			
		||||
        PieChart(
 | 
			
		||||
          dataMap: _buildDataMap(),
 | 
			
		||||
        ),
 | 
			
		||||
        survey.hasResponses ? _buildChart() : _buildNoResponseNotice(),
 | 
			
		||||
      ],
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
@@ -107,6 +105,19 @@ class _SurveyWidgetState extends State<SurveyWidget> {
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  Widget _buildChart() {
 | 
			
		||||
    return PieChart(
 | 
			
		||||
      dataMap: _buildDataMap(),
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  Widget _buildNoResponseNotice() {
 | 
			
		||||
    return Padding(
 | 
			
		||||
      padding: const EdgeInsets.all(16.0),
 | 
			
		||||
      child: Text(tr("No response yet to this survey.")),
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  /// Respond to survey
 | 
			
		||||
  Future<void> _respondToSurvey(SurveyChoice choice) async {
 | 
			
		||||
    // Send the response to the server
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user