Neeraj Gupta 2 rokov pred
rodič
commit
5e4aee84dd

+ 6 - 0
lib/models/collection.dart

@@ -265,6 +265,12 @@ class PublicURL {
     };
     };
   }
   }
 
 
+  bool get hasExpiry => validTill != 0;
+
+  // isExpired indicates whether the link has expired or not
+  bool get isExpired =>
+      hasExpiry && validTill < DateTime.now().microsecondsSinceEpoch;
+
   static fromMap(Map<String, dynamic>? map) {
   static fromMap(Map<String, dynamic>? map) {
     if (map == null) return null;
     if (map == null) return null;
 
 

+ 8 - 10
lib/ui/sharing/manage_links_widget.dart

@@ -59,9 +59,7 @@ class _ManageSharedLinkWidgetState extends State<ManageSharedLinkWidget> {
   @override
   @override
   Widget build(BuildContext context) {
   Widget build(BuildContext context) {
     final enteColorScheme = getEnteColorScheme(context);
     final enteColorScheme = getEnteColorScheme(context);
-    final int validTill = widget.collection?.publicURLs?.first?.validTill ?? 0;
-    final bool hasLinkExpired =
-        validTill != 0 && validTill < DateTime.now().microsecondsSinceEpoch;
+    final PublicURL url = widget.collection?.publicURLs?.first;
     return Scaffold(
     return Scaffold(
       backgroundColor: Theme.of(context).backgroundColor,
       backgroundColor: Theme.of(context).backgroundColor,
       appBar: AppBar(
       appBar: AppBar(
@@ -82,10 +80,10 @@ class _ManageSharedLinkWidgetState extends State<ManageSharedLinkWidget> {
                     alignCaptionedTextToLeft: true,
                     alignCaptionedTextToLeft: true,
                     captionedTextWidget: CaptionedTextWidget(
                     captionedTextWidget: CaptionedTextWidget(
                       title: "Link expiry",
                       title: "Link expiry",
-                      subTitle: (validTill == 0
-                          ? "Never"
-                          : (hasLinkExpired ? "Expired" : "Enabled")),
-                      subTitleColor: hasLinkExpired ? warning500 : null,
+                      subTitle: (url.hasExpiry
+                          ? (url.isExpired ? "Expired" : "Enabled")
+                          : "Never"),
+                      subTitleColor: url.isExpired ? warning500 : null,
                     ),
                     ),
                     trailingIcon: Icons.chevron_right,
                     trailingIcon: Icons.chevron_right,
                     menuItemColor: enteColorScheme.fillFaint,
                     menuItemColor: enteColorScheme.fillFaint,
@@ -93,12 +91,12 @@ class _ManageSharedLinkWidgetState extends State<ManageSharedLinkWidget> {
                       await showPicker();
                       await showPicker();
                     },
                     },
                   ),
                   ),
-                  validTill != 0
+                  url.hasExpiry
                       ? MenuSectionDescriptionWidget(
                       ? MenuSectionDescriptionWidget(
-                          content: hasLinkExpired
+                          content: url.isExpired
                               ? "This link has expired. Please select a new expiry time or disable link expiry."
                               ? "This link has expired. Please select a new expiry time or disable link expiry."
                               : 'Link will expire on '
                               : 'Link will expire on '
-                                  '${getFormattedTime(DateTime.fromMicrosecondsSinceEpoch(validTill))}',
+                                  '${getFormattedTime(DateTime.fromMicrosecondsSinceEpoch(url.validTill))}',
                         )
                         )
                       : const SizedBox.shrink(),
                       : const SizedBox.shrink(),
                   const Padding(padding: EdgeInsets.only(top: 24)),
                   const Padding(padding: EdgeInsets.only(top: 24)),