2012-02-23 15 views
5

में समाप्त होने वाले इवेंट आईडी के साथ ईवेंट को हटाया गया है, मैंने Google को इस प्रश्न का प्रयास करने का प्रयास किया है, लेकिन खोज स्ट्रिंग "जेड" पर्याप्त विशिष्ट नहीं होने के कारण शायद कोई भाग्य नहीं है।Google कैलेंडर Gdata पुरानी आवर्ती घटना को अभी भी ज़ेड

पृष्ठभूमि:
गूगल कैलेंडर Zend GData पुस्तकालय का उपयोग करना, और एक विशेष समय अवधि के लिए घटनाओं को सूचीबद्ध करने के सरल कोड का उपयोग किया गया है। इस मामले में, 27-02-2012 से 03-03-2012। मेरे पास कई एकल कार्यक्रम सूचीबद्ध थे, जिसमें एक आवर्ती कार्यक्रम था, जिसका शीर्षक "रोब" था, मोन-फ्रा साप्ताहिक।
मैं किसी भी फैंसी परिवर्धन के बिना मूल कोड का उपयोग कर रहा हूं। अभी तक :)

समस्या:
जब मैं $query->setSingleEvents(TRUE) पैरामीटर का उपयोग किया है, सब कुछ उम्मीद के रूप में काम किया, और सही घटनाओं से पता चला है।

जब मैं 'शोइंग' घटनाओं के बारे में बात करता हूं, तो PHP पेज के बारे में बात कर रहा हूं जो कैलेंडर ईवेंट दिखाने के लिए ज़ेंड gdata का उपयोग कर रहा है।
सभी स्थितियों में, गूगल कैलेंडर जीयूआई सही डेटा (,

दिखा रहा है अर्थात्। 'रोब' घटना नहीं दिखाया गया है के रूप में इसे नष्ट कर दिया गया था। लेकिन जब मैं FALSE को यह निर्धारित करते हैं, आवर्ती घटना "रोब ", समूह शुरू करने के लिए शुरू होने वाले प्रारंभिक समय होना चाहिए, लेकिन इसके बजाय, कुछ अतिरिक्त यादृच्छिक घटनाएं starttime के बिना दिखाई देती हैं, केवल वही शीर्षक। यहां तक ​​कि एक बार ive ने आवर्ती ईवेंट को हटा दिया है, फिर भी यह gdata द्वारा लौटाए गए डेटा में दिखाया गया है।

दिलचस्प अवलोकन
घटना के लिए EventID कि नष्ट कर दिया गया है लेकिन अभी भी है पृष्ठ पर दिखाया गया है "ज़ेड" के साथ समाप्त होता है। _20120302T030000Z

मेरे प्रश्न
यह ईवेंट Google कैलेंडर जीयूआई में नष्ट कर दिया गया: यह द्वारा पीछा सामान्य eventID है। Gdata अभी भी एक ईवेंट दिखा रहा है जो हटा दिया गया है, और टाइमस्टैम्प और जेड माध्य के साथ समाप्त होने वाला ईवेंट क्या होता है।

संकल्प प्रयास:
1. एक सामान्य घटना के लिए पुनरावर्ती ईवेंट (
कोई किस्मत, अभी भी अतिरिक्त लोगों को सूचीबद्ध 'श्रृंखला की सभी घटनाओं के लिए' recurrance हटाने से इसे बदलने के लिए कोशिश की
2. नष्ट कर दिया। श्रृंखला की सभी घटनाओं के लिए पुनरावर्ती ईवेंट पूरी तरह से।
यह SingleEvents(TRUE) में फिर से सही नतीजे बताते हैं, लेकिन FALSE में, पुराने 'रोब' घटना अभी भी दिखाया गया है जब यह पूरी तरह से कैलेंडर से हटा दिया गया है।

कोड:

function outputCalendarByDateRange($client, $startDate='2012-02-27', 
            $endDate='2012-03-03') 
{ 
    $gdataCal = new Zend_Gdata_Calendar($client); 
    $query = $gdataCal->newEventQuery(); 
    $query->setUser('default'); 
    $query->setVisibility('private'); 
    $query->setProjection('full'); 
    $query->setOrderby('starttime'); 
    $query->setStartMin($startDate); 
    $query->setStartMax($endDate); 
    $query->setSingleEvents(FALSE); 
    $eventFeed = $gdataCal->getCalendarEventFeed($query); 

    foreach ($eventFeed as $event) { 
    echo "Title: " . $event->title->text . "<br />"; 
    echo "Event ID: " . $event->id->text . "<br />"; 
    foreach ($event->when as $when) { 
     echo "Start: " . $when->startTime . "<br />"; 
    } 
    echo "<br />"; 
    } 
} 
+0

जैसा ही है, क्या आपने इवेंट स्थिति की जांच करने की कोशिश की है ?: http://stackoverflow.com/questions/25849 78/google-calendar-feed-api-delete-events – Ashley

+0

लगभग कुछ ऐसा लगता है जैसे कुछ कैश किया जा रहा है ... –

उत्तर

2

यहाँ है कि मैं क्या docs में पाया गया है:

36.5.6।घटनाओं को हटाना कैलेंडर ईवेंट को हटाएं या तो कैलेंडर सेवा की हटाएं() विधि को कॉल करके और किसी ईवेंट का URL या मौजूदा ईवेंट की अपनी हटाएं() विधि को कॉल करके हटाया जा सकता है।

किसी भी मामले में, हटाए गए ईवेंट उपयोगकर्ता के निजी ईवेंट फ़ीड पर एक अपडेटमिन क्वेरी पैरामीटर प्रदान किए जाने पर भी दिखाई देगा। हटाए घटनाओं नियमित घटनाओं से प्रतिष्ठित किया जा सकता है क्योंकि वे उनके eventStatus संपत्ति "http://schemas.google.com/g/2005#event.canceled" करने के लिए सेट करना होगा।

ऐसा लगता है कि जब आप अपनी फ़ीड का विश्लेषण करते हैं तो आपको घटना की स्थिति के लिए परीक्षण करना होगा। 2012 दिन: 03 महीने: 02 समय: टी घंटे: मिनट: सेकंड 03:00:00 ज़ुलू:

BTW टाइमस्टैम्प

वर्ष के लिए टूट जाती है जेड

ज़ुलू जीएमटी (ग्रीनविच मीन टाइम) या यूटीसी (यूनिवर्सल टाइम कोड)

+0

बस कहने के लिए, मैं आपके प्रतिक्रियाओं के लिए धन्यवाद देने के लिए कभी वापस नहीं आया। यह बहुत समय पहले था कि मुझे यह भी याद नहीं आया कि मैंने समस्या को कैसे हल किया। इसके अलावा, मुझे जवाबों के बारे में पता नहीं था क्योंकि मैंने बॉक्स को चेक नहीं किया था कि मुझे ईमेल पते पर मुझे कोई प्रतिक्रिया ईमेल करें। वैसे भी, मैं मदद मांगना नहीं चाहता, फिर इसका पालन न करें, क्षमा करें! – redfox05